There is no shortcut to becoming a Software Architect.
There is a lot of things to learn, because learning is a never-ending process. When you stop learning, somehow in some situation you will feel obsolete.
Being a Software Architect is not always about technology, you need to aware of business and politics. And has a great way to communicate with each stakeholder including your teammates. The key is communication, collaboration and negotiation.
And you need to have a hands-on skill to proof your understanding and to share your knowledge.
Not to try to simplify things, but this can be your anchor about Software Architect role. A software architect role typically has 50% tech things and 50% non-tech things. Assume that number is subjective, so it depends on your situation in your organization.
Actually being a Software Architect is the path to becoming VP Engineering or Chief Technology Officer or similar roles or even better you can be a Technopreneur to start your own startup company by yourself 😎
This list is initiated by Software Architect Community (SARCCOM).
Official website https://sarccom.org
The list is still in progress. If you wanna help to complete this list do not hesitate to do a pull request
Here's how the IEEE defines the term "architect": [An architect is] the person, team, or organization responsible for systems architecture.
As the technical lead on the project, the characteristics and skills of the architect are typically broad, rather than deep (although architects should have deep skills in particular areas)
Characteristics of a software architect:
- The architect is a technical leader
- The architect role may be fulfilled by a team
- The architect understands the software development process
- The architect has knowledge of the business domain
- The architect has technology knowledge
- The architect has design skills
- The architect has programming skills
- The architect is a good communicator
- The architect makes decisions
- The architect is aware of organizational politics
- The architect is a negotiator
Why attitude matters? Attitude first!
Detail added later
As a software architect, you need to grasp your self empower for your personal growth.
- Learning How to Learn: Powerful mental tools to help you master tough subjects
- Flash Reading - Bacakilat
- Soft Skills: The Software Developer's Life Manual by John Z. Sonmez
- Smart and Gets Things Done: Joel Spolsky's Concise Guide to Finding the Best Technical Talent by Joel Spolsky
- Flash Reading - Bacakilat 3.0 by Agus Setiawan
Why we need a methodology? Even when working alone.
Methodology is the systematic, theoretical analysis of the methods applied to a field of study. It comprises the theoretical analysis of the body of methods and principles associated with a branch of knowledge. Typically, it encompasses concepts such as paradigm, theoretical model, phases and quantitative or qualitative techniques. (Wikipedia)
As a Software Architect knowing several methodologies is a plus. To adapt and create a strategy to deliver excellence. But at least need to know deeply about one methodology.
Scrum is a framework within which people can address complex adaptive problems, while productively and creatively delivering products of the highest possible value.
Scrum itself is a simple framework for effective team collaboration on complex products. Scrum co-creators Ken Schwaber and Jeff Sutherland have written The Scrum Guide to explain Scrum clearly and succinctly. This Guide contains the definition of Scrum. This definition consists of Scrum’s roles, events, artifacts, and the rules that bind them together. (Scrum.org)
Scrum awesome list to follow 👍
- Scrum Indonesia
- Agile Academy
- Ekipa - Scrum Master Certification
- Agilemania - Professional Scrum Master
- Hackativ8 - Agile Scrum
- Brainmatics - Scrum Project Management
Kanban (Japanese error: {{nihongo}}: Japanese or romaji text required (help), signboard or billboard) is a lean method to manage and improve work across human systems. This approach aims to manage work by balancing demands with available capacity, and by improving the handling of system-level bottlenecks. (Wikipedia)
Kanban awesome list to follow 👍
Extreme Programming (XP) is an agile software development framework that aims to produce higher quality software, and higher quality of life for the development team. XP is the most specific of the agile frameworks regarding appropriate engineering practices for software development. (Agilealliance)
Am I need a certification? the answer is: it depends.
But if you want to be known by industries, then being certified is one of your value to help grow your careers.
Iasa certifications are the first global industry architect certifications that are completely vendor independent and run only by practicing architects. Iasa provides four levels of certification which describe the major milestones in an architect’s career.
- Official website https://iasaglobal.org
- ITABoK
- The Information Technology Architecture Body of Knowledge (ITABoK) is a free public archive of IT architecture best practices, skills, and knowledge developed from the experience of individual and corporate members of Iasa, the world’s largest IT architecture professional organization.
- https://itabok.iasaglobal.org/
- Training and certifications https://iasaglobal.org/Public/Learn/Training_and_Certifications.aspx
- Exam start from 300 USD
- The four-tier certification path:
- How many peoples in Indonesia has IASA certification? check here...
The TOGAF® Standard, a standard of The Open Group, is the open Enterprise Architecture standard used by the world’s leading organizations to improve business efficiency. The Open Group TOGAF Certification Program has enabled more than 70,000 Enterprise Architects and trainers around the globe to demonstrate their proven knowledge of the framework.
- Official website https://www.opengroup.org/certifications/togaf
- Certification levels:
- The cost of the certification can be as low as 320 USD. That’s just for the foundation exam alone; you can also sign up to take both exams for 495 USD. Even if you add in the costs of training courses, getting trained in TOGAF is a clear investment for your future.
- How many peoples in Indonesia has TOGAF certification? check here...
Software architecture is the primary carrier of system qualities, such as performance, modifiability, and security. Architecture helps ensure that a design approach will yield an acceptable system and holds the key to maintenance and sustainment efforts. In short, architecture is the glue that holds every phase of a project together. To realize these benefits, you need to build the capability to architect effectively. The SEI offers the Software Architecture Professional Certificate to equip software professionals with state-of-the-art practices for designing, analyzing, documenting, and implementing software architectures.
- Official website https://www.sei.cmu.edu/education-outreach/credentials/credential.cfm?customel_datapageid_14047=15203
As a software architect, you are responsible for the components and interaction within a system. The internationally recognised iSAQB® Certified Professional for Software Architecture - Foundation Level certification attests to your comprehensive knowledge in the field of software architecture.
- Official website https://isqi.org/us/en/isaqb-software-architecture-foundation-level
- Certification level:
- Foundation
- Adanvanced
- Exam start from 250 USD
The AWS Certified Solutions Architect - Associate examination is intended for individuals who perform a solutions architect role and have one or more years of hands-on experience designing available, cost-efficient, fault-tolerant, and scalable distributed systems on AWS.
- Official website https://aws.amazon.com/certification/
- Learning path https://aws.amazon.com/training/path-architecting/
- Certification level:
- Exam start from 100 USD
Become Google Cloud Certified and show the world that you can design, develop, manage, and administer application infrastructure and data solutions on Google Cloud technology. The Google Cloud Certified designation means you've demonstrated the necessary skills to leverage Google Cloud technology in a way that can transform businesses and meaningfully impact the people and customers they serve.
- Official website https://cloud.google.com/certification/cloud-architect
- Certification level:
- Exam start from 125 USD
Microsoft Azure Solutions Architects must have expertise in compute, network, storage, and security so that they can design solutions that run on Azure.
- Official website https://docs.microsoft.com/en-us/learn/certifications/azure-solutions-architect?wt.mc_id=learningredirect_certs-web-wwl
- Certification requirement:
- Exam start from 165 USD
A role model is a person whose behavior, example, or success is or can be emulated by others, especially by younger people. The term role model is credited to sociologist Robert K. Merton, who coined the phrase during his career. Merton hypothesized that individuals compare themselves with reference groups of people who occupy the social role to which the individual aspires. An example being the way young fans will idolize and imitate professional athletes or entertainment artists. (Wikipedia)
- Martin Fowler
- Mark Richards
- Neal Ford
- Ariya Hidayat
- Simon Brown
- Robert Cecil Martin
- Adrian Cockcroft
Hey wait a minute, what is the relation between being Software Architect and watching movies? Ok, open your mind now! you know sometimes reading can be energy exhausted, there is a lot of information to process. So let your brain mixing the information by watching movies. This is recommended movies. You can get some ideas to see all the things in the tech world. Attitude, self-empower, technical skill and knowledge, business and politics, human psychology, methodologies and many other things. You need to watch from the first season to get the whole ideas.
Follows the struggle of Richard Hendricks, a Silicon Valley engineer trying to build his own company called Pied Piper.
- https://en.wikipedia.org/wiki/Silicon_Valley_(season_1)
- https://en.wikipedia.org/wiki/Silicon_Valley_(season_2)
- https://en.wikipedia.org/wiki/Silicon_Valley_(season_3)
- https://en.wikipedia.org/wiki/Silicon_Valley_(season_4)
- https://en.wikipedia.org/wiki/Silicon_Valley_(season_5)
- https://en.wikipedia.org/wiki/Silicon_Valley_(season_6)
- https://www.hbo.com/silicon-valley
Elliot, a brilliant but highly unstable young cyber-security engineer and vigilante hacker, becomes a key figure in a complex game of global dominance when he and his shadowy allies try to take down the corrupt corporation he works for.
- https://en.wikipedia.org/wiki/Mr._Robot
- https://www.usanetwork.com/mrrobot
- https://www.whoismrrobot.com/
Explore how a data company named Cambridge Analytica came to symbolize the dark side of social media in the wake of the 2016 U.S. presidential election.
This documentary tells the story of Compaq Computer and its three founders, who in 1982, took on Goliath IBM at the height of its PC dominance.
It basically tells the story of how the personal computer was designed by giants like Microsoft and Apple. The movie is set throughout the 1970s, 80s, and 90s. It shows the methodologies Bill Gates of Microsoft and Steve Jobs of Apple used to develop their top of the line personal computers. They had a great tussle before finally announcing their alliance in 1997.
Programmers will find this movie extremely engaging. In the end, Alan Turing, the protagonist of the movie along with his team was able to find a way to decode the German Enigma Code.
If you want to add more into this list or want to fix wrong information, do not hesitate to do pull request :-)