An architect must continue to learn throughout their career. The technology world changes at a dizzying pace. Each architect should keep an eye out for relevant resources, both technology and business, and add them to their personal stockpile. Talking to colleagues or experts about what resources they use to keep current is one good way of seeking out the latest newsfeeds, websites, and groups that are active in a particular area of interest. Architects should also build into their day some time to maintain breadth utilizing those resources.
The 20-Minute Rule
As mentioned in Part 3: Architectural Thinking, technology breadth is more important to architects than depth. Developers and architects alike struggle with the balance of working a regular job, spending time with the family, being available for our children, carving out personal time for interests and hobbies, and trying to develop careers, while at the same time trying to keep up with the latest trends and buzzwords.
One technique we use to maintain this balance is something we call the 20-minute rule is to devote at least 20 minutes a day to your career as an architect by learning something new or diving deeper into a specific topic such as InfoQ, DZone Refcardz, and the ThoughtWorks Technology Radar.
Spend that minimum of 20 minutes to Google some unfamiliar buzzwords (“the things you don’t know you don’t know”) to learn a little about them, promoting that knowledge into the “things you know you don’t know.”. Or maybe spend the 20 minutes going deeper into a particular topic to gain a little more knowledge about it. The point of this technique is to be able to carve out some time for developing a career as an architect and continuously gaining technical breadth. Doing this will increase an architect’s technical breadth and help develop the knowledge required to become an effective software architect.
Technical Radar
The radar concept comes from ThoughtWorks; first, we’ll describe how this concept came to be and then how to use it to create a personal radar.
The ThoughtWorks Radar consists of four quadrants that attempt to cover most of the software development landscape:
Tools
Tools in the software development space, everything from developers tools like IDEs to enterprise-grade integration tools
Languages and frameworks
Computer languages, libraries, and frameworks, typically open source
Techniques
Any practice that assists software development overall; this may include software development processes, engineering practices, and advice
Platforms
Technology platforms, including databases, cloud vendors, and operating systems
When using the radar for personal use, we suggest altering the meanings of the quadrants to the following:
Hold
An architect can include not only technologies and techniques to avoid, but also habits they are trying to break. For example, an architect from the .NET world may be accustomed to reading the latest news/gossip on forums about team internals. While entertaining, it may be a low-value information stream. Placing that in hold forms a reminder for an architect to avoid problematic things.
Assess
Architects should use assess for promising technologies that they have heard good things about but haven’t had time to assess for themselves yet—see “Using Social Media”. This ring forms a staging area for more serious research at some time in the future.
Trial
The trial ring indicates active research and development, such as an architect performing spike experiments within a larger code base. This ring represents technologies worth spending time on to understand more deeply so that an architect can perform an effective trade-off analysis.
Adopt
The adopt ring represents the new things an architect is most excited about and best practices for solving particular problems.
Using Social Media
Using the characteristics of social networks, architects can utilize social media to enhance their technical breadth. Using social media like Twitter professionally, architects should find technologists whose advice they respect and follow them on social media. This allows an architect to build a network on new, interesting technologies to assess and keep up with the rapid changes in the technology world.
Parting Words of Advice
Practice is the proven way to build skills and become better at anything in life…including architecture. We encourage new and existing architects to keep honing their skills, both for individual technology breadth but also for the craft of designing architecture.
So, our last parting works of advice: always learn, always practice, and go do some architecture!
One thought on “[Summary] – Fundamentals of Software Architecture An Engineering Approach – Part 13: Developing a Career Path”