DEV Community

Discussion on: What the heck does an Architect do?

Collapse
 
simonhaisz profile image
simonhaisz

There is no single definition. Where I work there are multiple people with the title 'Software Architect' (including me) and we don't all have the same job.

When I think of an architect there are a few different roles they tend take up. They are not exclusive - an architect could focus most of their time in one of the roles, or have some sort of split between then, and they can change over time. At the start of the hiring process of a new architect I always ask 'what type of architect do we want?' before looking at candidates and the relative split of these roles is what I consider the different types to be.

Senior Dev

A architect is still a dev and can still do dev work - adding new features, fixing bugs, investigating customer issues, etc. As a senior dev this work will tend to be more "important" by some criteria - hard problem, high risk, high visibility, etc.

Force Multiplier

Do things that makes everyone else's work better. This includes establishing best practices, evaluating new technologies, and answering tons of questions to help others in their tasks.

Actual Architect

The 'classic' architect task of designing a system to solve a problem without actually implementing the solution. May or may not end up being a Senior Dev that ends up working on the implementation.

Prototyper

When you have problem that no one knows how to solve or a possible solution who's feasibility is unknown someone needs to take a crack at it.

Executive Communicator

Executive/management should base their decisions upon technical realities. Architects are well placed to talk about both what their systems can do today as well as offering advice on future plans.

I think these roles are also independent upon the domain - security, infrastructure, front-end, back-end, etc all have these types of work and all of them can have architects that do them.

One interesting thing you may have noticed is that these are all things that a "regular" dev may be doing. Whether you have the word 'architect' in your title or not, if you are doing these types of tasks regularly you are an architect.

Collapse
 
adam_cyclones profile image
Adam Crockett 🌀

A fantastically clear answer thank you Simon.