As a chief architect, you have to be able to juggle priorities: making sure developers are productive, ensuring your software works and meets business needs and advising various stakeholders within the company, including the CEO, CTO, CFO and your team of software developers.
The chief architect helps articulate the feasibility of a project and formulates a plan to get the project across the finish line. When visions between stakeholders get blurry, it’s often the responsibility of the chief architect to solve complex technical problems so that all parties are satisfied with the end result.
In a role that works with so many parties across the business, process and organization are imperative. That’s why some chief architects turn to the 12 Agile principles, a framework designed to support teams in implementing and executing software development with efficiency and technical excellence.
For David Redenbaugh, chief architect at Ripl, utilizing the principles comprehensively is important because they “all really build upon each other.”
12 Principles Behind the Agile Manifesto
- Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
- Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
- Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
- Business people and developers must work together daily throughout the project.
- Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
- The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
- Working software is the primary measure of progress.
- Agile processes promote sustainable development. The sponsors, developers and users should be able to maintain a constant pace indefinitely.
- Continuous attention to technical excellence and good design enhances agility.
- Simplicity — the art of maximizing the amount of work not being done — is essential.
- The best architectures, requirements and designs emerge from self-organizing teams.
- At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
However, most IT professionals have one or two Agile principles they hold to a higher power. Even Redenbaugh. At Ripl, he is responsible for the IT infrastructure that allows small businesses to make marketing tools on the same level as large businesses with bigger advertising budgets. We spoke with him about which principle is most important to his team — and which principle doesn’t get as much attention.
The Agile Manifesto lists 12 agile principles. That’s a lot. Of these 12, which ones are most important to your team and why?
I don’t think any one of the principles is most important because they all really build upon each other. However, one that I think can provide some of the most underestimated rewards is “At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.”
Doing this well has a great capacity for strengthening your self-awareness and your sense for how your team is working together. It enables you to better understand what you are doing and how it is impacting you, your team and your customers.
Moreover, it means frequent and deliberate opportunities to share those insights together and use them to improve how you do what you do and experiment with what will unlock even more potential. Many recognize this pattern in the various forms of retrospectives that we do but I think this mindset is elevated when you start to recognize how this approach can play a part in your daily routines and interactions.
I see so many more successes and deeper shared learning when people frequently take time to talk with each other.”
Which agile principles does your team ignore, and why?
We recognize the value in all of the principles, but we sometimes lose focus on some amid our ambitions to work on things. One that is sometimes easy to forget is “The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.”
It is easy to slip into a mode where you lean on purely digital or written communications or not communicating at all because you are confident, smart and independent. Yet I see so many more successes and deeper shared learning when people frequently take time to talk with each other. This can take many forms like asking for help, sharing what you learned, showing what you accomplished or simply talking about how you are feeling.