Scott Bellware posts his thoughts on the role of the agile architect, saying that the title of architect might indeed not be the best description, and instead suggesting the name "Pathfinder" as an alternative. I personally like it.

A lot of the principles that Scott mentions just resonate with me; they fit what I've experienced myself and what I've seen works and doesn't work. I totally agree with the "Everyone is a Designer" principle. The act of coding is the act of designing. Sure, there's high-level design and there's low-level design, but it's all design nevertheless. More importantly, everyone of the team has to share the same goals and the same broad vision of the system being built. The "architect" in the team can help the team realize that vision and watch out for potholes along the road, but the team as a whole has to do the work.

I also agree very strongly with the "architect is part of the team" topic. I've been on both sides of the fence: building a vision and "architecture" for a system on which I'm not allowed to participate fully and helping put that vision together and realizing it alongside the team, and I can say the second one has provided (in my view) better results. It's not that it was better that I was on the team per se, or that the rest of team was incapable of doing it on their own; but rather the fact that a high-level architecture on its own is just words in the wind to be blown all over the place. Besides this, I find the second option far more fulfilling for me; I rather enjoy coding, and love to build the vision and work with others on it. It's far more satisfying. Being a working and contributing part of a great team is an amazing feeling; I love it.

Great post leaving with lots to think about and digest.


Tomas Restrepo

Software developer located in Colombia. Sr. PFE at Microsoft.