Included here are some resources to help you along the way from software developer to software architect.

Architecture Characteristics Worksheet

This worksheet will help you identify what driving architecture characteristics (“-ilities”) are critical for your system. See this video for a short tutirial on how to use the worksheet. Included in it are definitions of some of the more common architecture characteristics.
Download PDF Format (.pdf)
Download Keynote Format (.key)
Download Powerpoint Format (.pptx)

Architecture Styles Worksheet

This star-rating chart Neal Ford and I put together for our book Fundamentals of Software Architecture is useful for determining if you have the right architecture in place for your system, and also which one might be a good candidate to migrate to based on your driving architectural characteristics. 
Download PDF Format (.pdf)
Download Keynote Format (.key)
Download Powerpoint Format (.pptx)

Architecture Kata Repos
In 2020 O’Reilly Media (my publisher) started conducting virtual architecture katas, and the results are amazing. The following are links to the top 10 teams that won the kata (out of 120 teams) for developing an architecture for a real company, Farmacy Foods. These are great examples of what it means to “describe” and “present” an architectural solution and developing what I call an “architecture narrative”.

ArchColider (first place):
Miyagi's Little Forests (second place):
The Jedis (third place):
Jiakaturi (highly commended):

Runners Up:
Super Kings:
Hey Dragon:

Keep Up With Trends

These are resources I use for keeping up with current trends in the industry—check them out, and use the 20 minute rule to expand your technical breadth. Just click on either of these images to get started on keeping up with the trends in our industry.



The Architect’s Bookshelf

Aside from the books I have written, here are ones that might help you in your journey to becomming an effective software architect. If you want to learn more about why these books are on this list and why they have been influential in my career as an architect, check out this lesson from Software Architecture Monday.

My Shepard List

Book Recommendations

The Software Architect Elevator
by Gregor Hohpe
O’Reilly Media, April 2020
ISBN 978-1492077541

Design It!
by Michael Keeling
Pragmatic Bookshelf, October 2017
ISBN 978-1680502091

Sustainable Software Architecture
by Carola Lilienthal
Rocky Nook, October 2019
ISBN 978-1681985695

Just Enough Software Architecture
by George H. Fairbanks
Marshall & Brainerd, April 2010
ISBN 978-0984618101

Presentation Patterns
by Neal Ford, Matthew McCullough, Nate Schutta
Addison-Wesley Professional, August 2012
ISBN 978-0321820808

Release It! 2nd Edition
by Michael Nygard
Pragmatic Bookshelf, January 2018
ISBN 978-1680502398

Building Evolutionary Architectures
by Neal Ford, Rebecca Parsons, and Patrick Kua
O’Reilly Media, October 2017
ISBN 978-1491986363

Software Architecture for Developers Volume 1
by Simon Brown
LeanPub Publishing, August 2017

Software Architecture for Developers Volume 2
by Simon Brown
LeanPub Publishing, July 2017

Enterprise Integration Patterns
by Gregor Hohpe and Bobby Woolf
Addison-Wesley Professional, October 2003
ISBN 978-0321200686

Streaming Architecture
by Ted Dunning and Ellen Friedman
O’Reilly Media, May 2016
ISBN 978-1491953926

Building Microservices: Designing Fine-Grained Systems
by Sam Newman
O’Reilly Media, February 2015
ISBN 978-1491950357

97 Things Every Software Architect Should Know
edited by Richard Monson-Heafel
O’Reilly Media, February 2009
ISBN 978-0596522698

Your Code as a Crime Scene
by Adam Tornhill
Pragmatic Bookshelf, April 2015
ISBN 978-1680500387

A Practical Guide to Enterprise Architecture
by James McGovern, Scott Ambler, et al
Prentice Hall, November 2003
ISBN 978-0131412750

The Real Business of IT
by Richard Hunter and George Westerman
Harvard Business Press, October 2009
ISBN 978-1422147610

Interesting Articles and Podcasts

These are some of the articles and podcasts that I’ve found very useful in my journey as a software architect.

Interview: Key Software Architecture Recommendations 
Apiumhub, January 2021
Interview with Mark Richards about some key software architecture recommendations.

A Promising New Metric To Track Maintainability
by Alexander von Zitzewitz
Hello2morrow, December 2018
In this article Alexander  introduces an interesting new metric for how to measure the overall maintainability of a system.

Architects: Communicate like your job depends on it
by Fred Churchville, July 2020
Fred Churchville talks to Mark Richards and Neal Ford about software architecture and the skills an architect needs to survive. 

Saga Pattern
by Chris Richardson, August 2018
Chris Richardson describes this useful pattern when having to deal with transactionality in a highly distributed architecture like Microservices. 

Pattern: Backends for Frontends
by Sam Newman, November 2015

I’ve been referring a lot to the BFF pattern lately (Backends for Frontends), and this article by Sam Newman is a great reference for this common pattern, particularly when designing API layers in a microservices ecosystem.

Sacrificial Architecture
by Martin Fowler, October 2014

This short must-read article by Martin Fowler talks about what it means to essentially “throw away” portions of the code, and places a focus on architectural modularity, one of my favorite topics.

On Orchestrated Microservices
by Matt Stine
Build To Adapt, July 2016

This article really caught my attention because of the tweet Matt starts the article with: "if your microservices must be deployed as a complete set in a specific order, please put them back in a monolith and save yourself some pain”. How true this is. This article is a worth-while read as it might save you lots of pain and lessons-learned regarding the dangers of inter-service communication and orchestration within a complex microservices ecosystem.

©2023 DeveloperToArchitect