Soluciones tecnológicas
Soluciones tecnológicasLa inteligencia artificial generativa pasa a ser parte como un pilar fundamental de la ...
Open Banking, powered by Generative Artificial Intelligence (GenAI), is redefining the ...
SANTA CLARA, Calif.–January 10, 2025–GlobalLogic Inc, una empresa del Grupo...
GlobalLogic establecerá un centro de desarrollo de ingeniería de software automotriz en...
GlobalLogic ofrece una combinación única de experiencia y conocimientos en la intersección entre datos, diseño e ingeniería.
ContáctanosThe profile of an architect is usually a bit vague, and as a result, it can cause headaches for talent seekers. Why does this happen?
There are many reasons, but one of the most important is the fact that the role of the architect and architectural practices are quite new. However, they are very necessary.
Functional, infrastructure and development roles are almost as old as IT, with a few exceptions. Architecture was born out of the need to integrate solutions and platforms, combining it with technological complexities, endless non-functional requirements and the need for everything to scale and last over time. Architectures are not just photos but rather movies, they evolve over time.
It is important to note that architecture has multiple views: deployment, functional, infrastructure, data, etc. Which makes the task of defining a profile and consequently finding it in the labor market much more difficult.
However, I believe that there are about 10 skills that every architect should have:
Ability to understand the domain of a problem and its modeling . It is impossible to solve or understand a problem if we do not understand its logic and nature or if we do not understand how its data is structured and its life cycle, transformation and flow.
Understanding Frameworks and Market Standards . These are generally templates or guides and are an excellent practice to be able to learn within the projects, they mark a direction and a trend. It is essential to understand and know them in order to take advantage of the best practices and disciplines that each one of them offers and to know in which scenarios it is convenient to apply them. (1)
Understanding boundaries and scope. One of the main challenges for an architect is to understand the limits and scope of the domain of the solution and, above all, not to get involved in issues that are beyond our control.
Skill in the use of modeling tools. It is necessary to have the ability to generate, maintain and interpret graphs and diagrams that are related either to the context of the problem to be solved, or to the solution to it. This language must be universal and understandable by all stakeholders and the project audience.
Knowledge of UML . This is the most universal and widespread modeling language that exists today in the market. It offers types of diagrams and proposes views for the entire universe of things that we want or need to express in graphics.
Requirement analysis & Management. Although this practice is not always associated with the role of the architect, it is critical to understand and support the problems involved in a project, and therefore support the different tasks and decisions that are necessary within it.
Visualizing complex issues . This skill consists of being able to “decode” the issue, or requirement and its dependencies, that we have before our eyes, no matter how complex it may be.
Being able to communicate across communities. This ability is very important to be able to interpret, reach consensus and communicate between different groups, roles or people interested in a solution to ensure that it is accepted and satisfactory for everyone.
Analytical and creative problem solving. These two items go together, and are the main knowledge that an architect must have, since we must be rigorous and specific in solving a solution, but at the same time creative and innovative when it comes to starting to develop it. How is this knowledge generated? Basically, trying and not closing ourselves off in tried and/or known schemes all the time, giving ourselves the freedom to explore and let our imagination run wild.
On the other hand, it is key to understand the difference between an architect and a designer. Design is what every engineer wants to create or generate. It is the place where all the rules of creativity, the requirements of the participants and the needs of the business, plus the technical considerations, come together to formulate a solution. It is what allows us to model the solution that we want to build/obtain. It is here where the guidelines and standards of the model to be designed are established and taken into account. We can represent these differences in the following aspects:
Aspect | Architecture |
Design |
Level of abstraction |
High level |
Low level with specific focus on technical details. |
Deliverables |
Architecture maps, subsystems, integrations, infrastructure views. Technology deployment. |
Detailed component design. Coding guidelines, etc. |
Areas of focus |
Selection of technologies, solutions and platforms.Risk analysis | Functional requirements. |
In this way, we can affirm that with the knowledge and skills mentioned above, we could already define ourselves as true architects prepared to create the best solutions within our projects, and maintaining a clear scope of work.
Note
(1) There are also frameworks and standards that are specific to a particular industry, such as finance, logistics, industry, etc. For example, within the banking industry there is the framework called BIAN, HL7 which belongs to health care and eTOM which is from the telecommunications industry.