Question of the week

How do I get involved in architecture work?

This week's question is a common one that I get...

I'm an aspiring software architect and I'm working on a project as a developer. I'm not going to get an architect role without having some experience, but we already have an architect on my project. What should I do and how do I start down the architect path?

First of all, just because you've not got the word "architect" in your current job title that doesn't mean that you're not involved in the architecture. Consider the skills you've demonstrated as a developer - how would you rate yourself on the role profile? At review, or interview, if you can highlight the "architectural" nature of your experience you might find you can break free of this paradox.

As for building your experience, my recommendation is to take some time to study the architecture of the system that you are currently working on. What is the architecture? How does it work? Why has it been designed that way? These are all questions that you can use to understand the decisions that the architect(s) made. Better still, though, try to spend some time with the architect(s). Tell them about your aspirations and ask them if they can spend some time to walk you through what they are doing and understand the decisions they are making. If the architect is open to having their own work reviewed then this is another opportunity to become more involved. Finally, why not ask to be involved in some of the smaller architecturally significant decisions and work; such as proofs of concept, prototypes and product selection.

Just don't expect some epiphany where you suddenly feel like an architect! As this advice for apprentice architects implies, there are various skills and experiences that you need and will continue to develop. At some point you've got to step outside your comfort zone and experience to develop these skills. Good luck!

About the author

Simon is an independent consultant specializing in software architecture, and the author of Software Architecture for Developers (a developer-friendly guide to software architecture, technical leadership and the balance with agility). He’s also the creator of the C4 software architecture model and the founder of Structurizr, which is a collection of open source and commercial tooling to help software teams visualise, document and explore their software architecture.

You can find Simon on Twitter at @simonbrown ... see for information about his speaking schedule, videos from past conferences and software architecture training.

Consider to be good designer and leader first

Few weeks ago I attended one workshop. The presenter was an employee of one big software company. The person is titled "architect" by his company even if his position, by my opinion, is more technology evangelist.

One of my colleagues asked him following question: "How one become an architect?". The reply was funny: "You apply for a job titled architect and they will hire you."

I think there are more roles one can play on his road to software architect. Consider technical team leader or designer. Coder/developer should start to study system design and leadership to become good designer and leader. The next step is to become an architect.

Sometimes the problem is that on small and middle sized projects single person can play all of these roles not sharing them with others. But I think there is always chance to improve your design skills while coding and to take some responsibility as a leader.

Consider to be good designer and leader first

Exactly ... the path to becoming "an architect" is an evolutionary one and, although there are a number ways of getting there, no single path is the silver bullet. This is one of the reasons why we defined the role profile - it provides suggestions for areas to focus upon while growing into the role and while undertaking it.

Add a comment Send a TrackBack