ランキングに戻る

AlaaAttya/software-architect-roadmap

Software architect roadmap

architectureroadmaparchitectskillssolutions-architectenterprise-architectapplication-architectsoftware-engineering
スター成長
スター
1.1k
フォーク
160
週間成長
Issue
2
5001k
2018年4月2021年1月2023年10月2026年7月
README

Software architect roadmap

In general software architect is like the architect in real-life. Hes's responsible for making high-level design decisions.

Objective :triangular_flag_on_post:

The objective of this document is giving an overview about the skills required by software engineers to level up and become a software architect. Still there's no ideal skills required to be gained, but this is just a roadmap to be followed to highlight the main skills to be gained.

There's no standard roadmap or specific methodology to follow to become an architect. Being a good architect is getting achieved by applying and implementing more than reading.

Below is a broadway roadmap that you can follow to start being a software architect.

map

Let's define the 3 categories of software architects

Solutions architect [very detailed architect]

Solution architect is mainly the one responsible for translating requirements into code. Sometimes we can call him the "project development team lead" for a specific project. He's responsible for the following:

  • Guiding the development team through the implementation process in every technical details.
  • Making sure that the developed solution meets the designed architecture.
  • Making sure that the developed solution meets the functional requirements.
  • Participate in choosing the right design patterns for solving problems.

Solution architect would be guided by the "Enterprise architect".

Application architect

Application architect is the one responsible for the following:

  • Choosing the technologies that will be used to implement the application. He'll be
  • Making sure that the team is meeting the standard of the technology used.
  • Responsible for choosing and cooperate in developing packages/frameworks that will be used by the team.
  • Reliability and scalability of the application.
  • Maintaining/refining the development life cycle of the application.

Sometimes they choose one of the development team to be the application architect.

Enterprise architect [highly abstracted architect]

Enterprise architect is the very highly abstracted architect responsible for the following:

  • Designing the high level organizational development process.
  • Designing UML that will be used by application/solution architects.
  • Should be engaged more with the business mission of the company and the IT strategy.
  • Raising the skills of the development team and maintaining their knowledge.

Contribution :muscle:

  • This project is created by Draw.io so for contribution just download the map.xml import it, edit it and update the exported images in images/map.png
  • If you want to discuss any ideas/suggestions just ping me on Twitter Follow or :email:
関連リポジトリ
binhnguyennus/awesome-scalability

The Patterns of Scalable, Reliable, and Performant Large-Scale Systems

MIT Licensesystem-designbackend
72.6k7k
charlax/professional-programming

A collection of learning resources for curious software engineers

PythonPyPIMIT Licenseread-articlesprogrammer
51.3k4k
DovAmir/awesome-design-patterns

A curated list of software and architecture related design patterns.

awesomeawesome-list
48.3k3.3k
nilbuild/design-patterns-for-humans

An ultra-simplified explanation to design patterns

design-patternsarchitecture
48k5.5k
kamranahmedse/design-patterns-for-humans

An ultra-simplified explanation to design patterns

design-patternsarchitecture
46.1k5.4k
karanpratapsingh/system-design

Learn how to design systems at scale and prepare for system design interviews

Otherarchitecturedistributed-systems
leanpub.com/systemdesign
44.6k5.8k
mingrammer/diagrams

:art: Diagram as Code for prototyping cloud system architectures

PythonPyPIMIT Licensediagramdiagram-as-code
diagrams.mingrammer.com
42.5k2.7k
kuchin/awesome-cto

A curated and opinionated list of resources for Chief Technology Officers, with the emphasis on startups

Creative Commons Zero v1.0 Universalctosoftware-engineering
35.2k2.2k
FreeCAD/FreeCAD

Official source code of FreeCAD, a free and opensource multiplatform 3D parametric modeler.

C++GNU Lesser General Public License v2.1freecadengineering
freecad.org
32.3k5.8k
go-kratos/kratos

Your ultimate Go microservices framework for the cloud-native era.

GoGo ModulesMIT Licensegolangframework
go-kratos.dev
25.8k4.2k
google/iosched

The Google I/O Android App

KotlinApache License 2.0kotlinarchitecture
21.6k6.1k
davideuler/architecture.of.internet-product

互联网公司技术架构,微信/淘宝/微博/腾讯/阿里/美团点评/百度/OpenAI/Google/Facebook/Amazon/eBay的架构,欢迎PR补充

HTMLarchitecturearchitecture-guidelines
20.8k4.7k