Types of Software Architects
Software Architect is a generic role.
There are several categories of Software Architects, each with specific roles and focus on different aspects of software and business.
Many times those roles overlap, especially in small companies. Other times, many Architects work as a team to provide solutions to different projects.
So, what kind of Architects exist?
Cloud Architects
They are responsible for cloud computing strategies and initiatives. They select the cloud provider, as well as the cloud model that fits best to the company needs (IaaS, PaaS, SaaS).
They help the company cloud migration, both for the technical part (migrating existing projects to the cloud) and for the company mindset (explaining the benefits of cloud adoption).
They manage the governance of the cloud, by defining procedures, policies, and monitoring.
They take care of security issues, like protecting the data stored on the cloud.
Security Architects
They are responsible for the security of the organization’s networks and computers.
Thanks to security assessments, they can evaluate potential threats and can put into place policies and practices to mitigate those risks.
When a security incident occurs, they are involved in the resolution of the incident. They conduct post-incident analysis to ensure that similar incidents will not occur anymore.
Infrastructure Architects
They focus on the organization’s infrastructure, like:
- servers
- hardware
- networks
- storage
- facilities
They monitor the workload, latency, capacity of the different parts of the network to find bottlenecks, and evaluate possible improvements (both software and hardware).
Data Architects
They design and manage the data architecture, and ensure who and how can access specific data.
They also care about all the data sources (internal and external), and their integrity.
They manage storage, backups, data recovery, and monitoring of the data.
They also work with devs to help them setting up the data design for the business needs.
Application Architects
They focus on specific applications and ensure that the design of those applications meets the requirements.
They evaluate different technologies/frameworks to find the one that best fits the application’s needs.
They lead the team and ensure that they are following the best practices and the design of the application.
Solution Architects
They work with business analysts and product owners to understand the requirements and convert those requirements into an architecture.
They try to create reusable architectures, to find some patterns that, once proven to be working, can be reused to different applications.
Enterprise Architects
They focus more on the strategic choices of the organization. They work with lots of stakeholders to understand where the market goes, what are the customers’ needs, how technology can help the company grow.
They work with other architects to ensure that the designed architectures meet the project requirements AND the company vision.