The journey from a Developer to an Architect

An Architect’s view is always a wide view.

The Architect’s role has evolved over the years. With the burst of the Digital First initiatives, architects are now part of the board room discussions for organizations. I get a lot of questions about the skills, roles, and the kind of experience required for an architect. This article will provide a point-of-view on the journey from a developer to an architect.

Architecture is an overly used word in the software industry. If anyone wants to fill a gap in the conversation, there are high chances that they will put the word “architecture” to fill the void. Similarly, there are many architect roles and job descriptions in the market. I believe three levels that sum up all the available positions.

Technical Architect

  • High Technology focus and less Strategy focus
  • Technical Leadership – Has deep technical knowledge and guides development teams on approaches and best practices.
  • Implement technical processes for seamless delivery of the products – CI/CD process, GIT processes, etc.
  • Certified in respective technologies.

Solution Architect

  • Balance of Technology and Strategy focus.
  • Understanding of all the component roles and how the components communicate in an architecture.
  • Defines best-fit solutions for the business goals.
  • Translates business requirements to technical designs.
  • Certified in respective technologies.

Enterprise Architect

  • High Strategy focus and less Technology focus.
  • Master of EA frameworks (TOGAF, Zachman Framework)
  • A bridge between Technology and Business teams.
  • Defines constraints and KPIs for the architecture and technology portfolio.

 In my view, being an Architect is about the mindset and not attaining a position/promotion in a company. On a high level, architecture is a combination of Skill, Experience, and Passion. Let us talk about each of the traits a little bit.

Skills

Some of the skills that are required for an architect. The type of skills needed for different levels of an architect differ. These don’t cover everything, but some things which I felt are important.

  • Deep technical knowledge
  • Domain expertise.
  • Translating business goals into technology operations.
  • Documentation – Visio or any other diagram tool expertise.
  • Agile processes and CI/CD ways of release management.
  • Eye on Quality.
  • Design Patterns.
  • Industry expertise and standards.
  • Defining KPIs for different components of the system.
  • Audience-tuned communication.
  • TOGAF or similar frameworks (Recommended for EA)

Experience

There are no set rules on the years of experience required to become an Architect. It depends on how much knowledge and skill you gained from your experience. Some of the critical skills that only come with experience.

Identifying risks – “what may go wrong?” – This is one of the strategies I use to identify risks and create a mitigation plan for them. The more you can think deeply about the possible problems or blockers, the stronger will be the foundation of your implementation.

Knowing best practices and when they may not be the best – I always say that Best Practices are relative. The best practices will change based on different business requirements. So knowing when to use and when to alter best practices is essential. And that comes only with experience.

Passion

Passion is an essential trait. I believe just doing architect certification won’t make you an architect. Passion for designing and integrating the technology components. Passion to know how all come together to meet the business goals. Passion to go beyond your current role and own the end-to-end solution. Passion to be a bridge between business and technology teams.

To Conclude,

If a developer aspires to be an architect you must feel and behave like an architect. No fixed time or event makes you an Architect. Nothing happens overnight, and nothing worth your time is accomplished in haste. It all depends on Skill, Experience, and Passion. Go!

Leave a comment