Software Architect
Defining the organisation of the components of a software system
Software Architect -
A software engineer responsible for high-level design choices related to overall system structure and builds technical standards for tools, platforms, or software coding standards. software architecture sits between the business goals and the software system that satisfies them.
Solution architect. — How a particular software product can address specific business needs.
Enterprise architect — supervises technical infrastructures and processes across all projects at organisation level.
Key aspects of a Software Architect
- Context—
There is no such thing like a good or bad architecture. software architect should always know what that want to achieve. it is duty of software architect to know the business context and have a big picture about the solution they are going to provide. architecture should remain flexible. - Domain Sensitive -
Understanding of business domain will help a software architect choose the most appropriate approaches to solve problems effectively. domain knowledge also helps Software Architects to speak a language common to the business. - Interpersonal skills
The role of the architect involves much communication — with stakeholders, business analysts, and engineers. They should be able to explain complex matters in simple terms. - Technical skills
Software architects can’t lose touch with programming. They write code examples, proofs of concept, and prototypes serving as a basis for developers who further work with these snippets to get them to production - Creative thinking
An architect leads teams toward the goal through obstacles. They must think creatively to come up with alternatives and solve problems quickly. - Political context
Architect should under-stand the political context of the environment he is working in. Understanding the context simplifies decision making and guides in better way to establishing a politically viable vision for project. Architect need to ensure that his goals are aligned with the company’s goals. - Negotiation
For architects, negotiation skills is critical to get a project moving. best negotiations are when you can persuade the stakeholders to accept your solution while feeling like they won. take the time to document key principles and standards, and the reason- ing behind them.