Technical Excellence Training
At b-agile, we specialize in Technical Excellence Training, working with organizations and teams to establish technical excellence practices. Our goal is to enable business agility and enhance effectiveness and sustainability in software product delivery. As Martin Fowler said,
“Agile movement was supposed to promote the ideals of Craftsmanship, and it failed. Horribly. Craftsmanship is the Agile, that the Agile movement left behind.” – Martin Fowler
Unlocking Business Agility: Insights and Key Points
Based on our experience, we have found that:
- Agile transformations and adoptions often prioritize process and collaboration, which helps teams identify problems more quickly.
- However, this alone does not enable continuous and sustainable agility to deliver business value.
- Continuous attention to technical excellence and good design, as stated in the agile manifesto, enhances agility.
- Relying solely on technology and tools is insufficient; the greatest impact on delivering quality software lies with people and professionalism backed by experience.
- To succeed in achieving business agility, organizations must focus on training, education, and fostering the right attitude and culture.
- Adapting the way software is written and delivered is crucial for achieving business agility, going beyond process and collaboration alone.
To effectively embed practices into your teams, consider the following key points:
- Raise awareness of the practice and encourage hands-on learning through deliberate practice.
- Provide mentorship and guidance to teams and individuals to establish these practices as standard.
- Foster a strategic learning alignment across the team to ensure a shared focus, understanding, and vocabulary.
Empowering Your Agile Journey: Our Services
We offer a variety of key in-depth learning topics delivered in different formats to help teams become more focused on quality. These topics are designed to incorporate the necessary technical practices for creating valuable product increments iteratively and at a continuous and sustainable pace.
You can choose to have these learning topics supplied to your team or to a group of individuals. We provide flexible options, including 1 or 2-day sessions, as well as the option to participate in our Technical Excellence program. This program is specifically designed to help teams establish and integrate these practices effectively.
We understand that every team is unique, and there is no one-size-fits-all solution. That’s why we work closely with you to deliver an approach that aligns with your specific needs. Our goal is to ensure that you receive the most relevant and tailored support to enhance your team’s capabilities.
Our delivery formats consist of:-
- Workshops: These sessions cover theoretical and practical skills related to specific topics like Software Craft, CI, and Agile Testing.
- Coding Dojos: These sessions focus on coding challenges, inviting teams or programmers of different skill levels to engage in deliberate practice. Topics such as TDD or Clean Code principles are commonly explored.
- Practice: We offer mentoring and coaching for development teams in their own environment, supporting the application of learned practices. Pairing or mob programming sessions are some of the approaches used.
- Technical Excellence Program: This customizable 6-month hands-on program enables teams to excel in the technical aspects of the agile transition. More information on this program can be found here.
Expanding Your Knowledge: Potential Learning Topics
Here are some potential learning topics we offer::
- Introduction to Software Craft
- Test Driven Development
- Test doubles – Mocks vs Stubs
- Clean Code
- Continuous Integration/Delivery
- Branching Strategies
- Agile Testing
- Working with Legacy Code
- Clean Architecture equals testability
- Testing Strategies
- Domain Driven Design
- Independent Integration Testing
- Behaviour Driven Development
- Value Stream Mapping
- and more…
These topics represent just a few examples of the comprehensive learning opportunities we provide. Please note that this list is not exhaustive, and we can customize the topics to suit your specific requirements.
What’s Next? Discover How We Can Help You
For individuals or teams new to agile, we strongly recommend our Applying Professional Scrum for Software Development (APS-SD) course. It provides a solid foundation in Professional Scrum, continuous improvement through empiricism, and introduces complementary practices to create valuable “Done” increments at the end of every sprint. After the course, some attendees seek further assistance to deepen their understanding and implement these practices within their teams and organizations.
If any of the above interests you and like to see how we can help or simply like to know more then get in touch