Carlos Franco Capó
Published Oct 31, 2016
During the last years I have been working in different organisational structures with very disparate responsibilities for the same role: Software Architect.
Some people told me that a Software Architect should never code. I think they were wrong and here you have why I think so.
Up to date
If a Software Architect does not code as part of her day-to-day activities, is a matter of time when she becomes obsolete. If you have someone in your team with architecture skills you need to be sure she is continuously learning new technologies, design patterns and solutions. The best way to learn low level details is interacting with the code.
Boxes and arrows
Obviously a Software Architects must design from the high level to the component level a particular solution architecture. But I do not believe in having powerpoint architects or people who only generate docs and diagrams. Is important to keep the architects grounded.
Technical leadership
If you do not code some part of your day then Development teams will not consider you as a real technical leader. However, if you have a Software Architect (who is an architect because she has proven solid development skills) coding and helping actively a Software Developer, then a strong relationship will be generated and a better product will be delivered.
Peer reviews, spikes...
Architecture is not just about broad stroke design but about adapting to changing needs at the code level. The architect should lead a development spike focused on architectural discovery. Another example could be peer reviewing activities.
I am happy to be part of an company culture where people loves coding and you can do it regardless of your title or role.
What do you think?
PS: Let me recommend you this book http://ieeexplore.ieee.org/document/6155144/