Most of the people I have the pleasure to work with are developers, all great, intelligent people with passion for technology and IT. When I talk with them about their career and how they think they should evolve, a lot of them aspire to become an architect. Now the job title architect can mean a lot of different things, but that is not the topic I want to rant about today …
*** START RANT ***
I’m a little bit puzzled why a lot of developers think that becoming an architect is the logical way forward. Why you ask me? Let me explain…
Developers are creative people, great thinkers and problem solvers. They like to tackle complex problems, that’s what they live for. Once they are no more problems to solve, they start to get bored and start looking at new frameworks and tools just to have new problems to tackle. Developers LOVE complexity.
“Developers are attracted to complexity like moths to a flame”
As an architect it is quite the opposite. You are not aiming for sprints but want to do marathons. Every decision you take has an impact that can haunt you forever(until the next rewrite arrives ). Therefore as an architect you should be risk averse, better safe than sorry. Architects HATE complexity. It makes every solution unmaintainable in the long run. Simpler IS better…
As an architect you strive for a clean architecture with only an essential level of complexity and try to avoid accidental complexity at all cost. Developers are proud on the clever solutions they create(and they should be!) but as an architect simplicity will always win over cleverness in the long run.
This made me wonder if becoming an architect is such a logical stepping stone in the career of a developer. It’s a complete mindswitch which is not easy to take(ask me…).
*** END RANT ***
Food for thought… (Now I have to go, I have to create a Functional Reactive DDD CQRS Microservice DevOps architecture to get some data out of the database and show it on a website )