All career paths

Architecture

Owning the technical shape of systems over years, and answering for the trade-offs.

Architecture is ownership of technical direction across systems and teams: how things are divided, how they talk to each other, and which constraints you accept for the next few years. It is a senior individual contributor path where the unit of work is a decision with a long half-life rather than a feature.

What this path actually involves

You spend your time understanding problems deeply enough to choose between options: mapping the systems that already exist, running spikes and prototypes, writing decision records, and reviewing designs coming out of teams. You stay close to delivery, pairing with teams during implementation, unblocking integration problems, and checking whether what you specified survived contact with reality. Depending on the company you may also carry security, compliance, cost or vendor decisions, and you are usually the person who explains the technical strategy to non-technical stakeholders.

What it does not mean

It is not producing diagrams away from delivery. An architect whose output ends at a document and a few slides has no feedback loop, and that is precisely how architectures go wrong. It is also not a governance role that approves other people's work from a distance, and it is not permission to stop writing code: most effective architects still build, just less and more deliberately, prototypes, reference implementations, the hard integration nobody else wants. And it does not come with authority. You almost never get to mandate, so the actual work is convincing teams who could ignore you.

Typical responsibilities
  • Choosing and documenting system boundaries, integration patterns and data ownership, together with the reasoning behind them.
  • Making trade-offs explicit: cost, performance, complexity, operability, time to market, and what you are deliberately not optimising for.
  • Reviewing significant designs from teams early enough that the feedback is still cheap.
  • Prototyping the riskiest part first, so decisions rest on evidence rather than confidence.
  • Owning cross-cutting concerns that sit on nobody's roadmap: authentication, observability, migration paths, data flows, vendor dependency.
  • Translating in both directions between engineering reality and commercial expectations.
Skills that matter
Deep systems thinking: reasoning about failure, coupling, data flow and change over time.Breadth across more than one domain, so your default pattern is not the only pattern you know.Writing that works without you present: decision records, options papers, honest risk sections.Influence without formal authority; the same recommendation delivered as a mandate usually fails.Judging where good enough is the right answer, and resisting architecture more sophisticated than the problem.Running technical discovery under time pressure: spikes, benchmarks, migration rehearsals.Enough commercial literacy to argue in terms of cost, risk and opportunity rather than elegance.
What changes from a strong senior engineer role

A strong senior engineer is accountable for a system they can hold in their head and see working within weeks. As an architect the consequences of your decisions can take a year or more to appear, often on teams you do not work with, and sometimes after you have moved on. You trade the satisfaction of building for the discipline of being right about constraints, and much of your day becomes reading, asking questions and writing rather than typing code.

Signs you may enjoy it

  • You are drawn to the question of why a system ended up this shape, not only to how to change it.
  • You enjoy mapping unfamiliar territory and can sit with a problem before proposing a solution.
  • A decision record that prevents a bad decision two years later feels like a real result.
  • You would rather be right about the constraint than the first person to write code.
  • You can hold several teams' contexts at once and you like seeing the connections between them.

Signs you may dislike it

  • You need to see something you built working in order to feel you achieved anything.
  • You lose interest the moment a decision is made, because the interesting part is over.
  • Hearing that a team did it differently makes you angry rather than curious about why.
  • Long discussions that end without code feel like weeks thrown away.
  • Being answerable for outcomes you cannot personally control wears you down.
Common misconceptions
  • That it is a diagram job, and that the artefact matters more than the decision behind it.
  • That architects stop coding. The good ones write less code in more important places.
  • That the role comes with authority to decide for teams; in practice it comes with the obligation to persuade them.
  • That more abstraction means more architecture. Removing options is usually worth more than adding them.

Where it typically leads

Architecture usually widens into Principal Architect or technical strategy scope across a whole product portfolio, and it overlaps heavily with Staff and Principal engineer roles. From there people move into CTO-adjacent roles, consulting and fractional work, or back into hands-on engineering with a much better sense of what actually matters.

How AI is changing this role

Agentic coding makes plausible code cheap to produce, which raises the value of the things a model cannot supply: clear boundaries, explicit contracts, tests that mean something, and written intent. Codebases with well-defined seams and decent documentation are exactly the codebases models work well in, so architectural clarity has turned from a long-term nicety into an input to team throughput. The review and verification load grows, and the failure mode shifts from we could not build it to we built four slightly different versions of it very quickly. In practice an architect now also owns questions like where models are allowed in the system, what context they are given, and how their output is verified.

Experiments to run before deciding

Own one real decision end to end

8-12 weeks

  • Pick a decision your team is about to make by default, and write an options paper: two or three options, trade-offs, a recommendation, and the risks.
  • Prototype the riskiest assumption in the recommended option instead of defending it in the abstract.
  • Take it to the people who would have to live with the result, and change your recommendation if they are right.
  • Write the decision record, including what you are deliberately not optimising for.
  • Stay attached during implementation and note every place where reality contradicted the document.

Then ask yourself

Did the parts you got wrong make you more curious about the system, or did you mainly miss being the one who built it?

Work outside your own system

10-12 weeks

  • Volunteer to review the design of a significant change in another team's area.
  • Spend real time reconstructing how their system actually works, including the parts the documentation does not mention.
  • Give your feedback as questions and options, with no formal authority behind it, and see how much of it is taken.
  • Follow one cross-team integration problem to completion, including the boring coordination.

Then ask yourself

When a team reworked or ignored your recommendation, was your first reaction curiosity about the constraints you had missed, or frustration that you had no way to insist?

Write the thing that outlives you

8 weeks

  • Choose an area that causes recurring confusion and document its current architecture honestly, compromises included.
  • Add a short constraints and non-goals section, and ask two senior engineers to disagree with it in writing.
  • Present the same material to a non-technical stakeholder in terms of cost, risk and speed.
  • Six weeks later, look for evidence it was used without you: search your team's chat, pull requests and design docs for links to it, and ask two people whether it changed a decision they made.

Then ask yourself

Did influencing decisions through a document feel like impact, or like work that disappeared?

Worth reading

  • Designing Data-Intensive Applications - Martin Kleppmann

    The strongest available foundation for reasoning about data, consistency and failure, which is where most architectural decisions actually bite.

  • Fundamentals of Software Architecture - Mark Richards and Neal Ford

    A broad, unromantic survey of styles and their trade-offs; most useful for the vocabulary and the trade-off framing.

  • Domain-Driven Design - Eric Evans

    Long and dated in places, but the origin of the boundary and language thinking that most modern service design still rests on.

  • Building Evolutionary Architectures - Neal Ford, Rebecca Parsons, Patrick Kua

    Argues for architecture as something that changes under guardrails rather than a design fixed up front.

Not sure whether this path is closest to you?

Take the Career Compass

Help improve this page

If you have worked in this role and something here is inaccurate, incomplete or out of date, tell me. Suggestions are reviewed before anything changes.