👋 Hello, this is Valentina with the free edition of the Optivem Journal. I help Engineering Leaders & Senior Software Developers apply TDD in Legacy Code.
Based on conversations I’ve had during the past months and during my previous years working as a Technical Coach introducing TDD in teams across the world, I’ve decided to give away everything I’ve learnt so that you can apply it too.
The majority of my paid subscribers are one of the following:
Senior Software Engineers & Tech Leads who want to learn how to practice TDD, introduce it to their team and apply it at work
CTOs, Engineering Managers & Technical Coaches who want to introduce automated testing & TDD across their engineering teams
So I took the time to understand their challenges, goals, and how I can help.
My 2025 Roadmap
To address the needs above, my planned roadmap is:
TDD Sandbox Project
TDD Real Life Project
TDD Team Coaching
TDD Department Transformation
1. TDD Sandbox Project
The Sandbox Project is great for getting practice with TDD in a safe space. You can do it in your own time, self-paced, without the risk of breaking production and having to convince your team to change anything.
I’m continuing writing the TDD in Legacy Code series which involves Sandbox Project Tasks, so that readers can apply the practices on their GitHub Sandbox Project.
In addition to the articles, I’m planning to have group calls where we’d:
Use the articles as a “jumping off point“
Discuss the articles, answer questions
Note: There’s also a discussion in chat about the possibility of group calls.
2. TDD Real Life Project
The Sandbox Project is not enough, we need to translate our learnings to the Real Life Project. Fortunately, after applying the TDD in Legacy Code series to your Sandbox Project, you’ll be able to replicate the same process for your Real Life Project. The reason is because your Sandbox Project reflects key technical characteristics of your Real Life Project.
As you apply it to Real Life Project, you may face additional questions and challenges. In that case, you can write me Substack comments, so that I can provide advice.
3. TDD Technical Coaching
After you’ve made your Sandbox Project, you can show it to your team to get alignment, before proceeding to implement changes on the Real Life Project. The Sandbox Project helps everyone see, at a small scale, how the automated tests would look like and how TDD can help.
But it’s not as simple as just showing the Sandbox Project, and expecting others to accept it. Most likely you’ll face resistance to change within the team, and instead of forcing ideas onto them, you’ll need to use a coaching skillset to bring a mindset change, and to apply it incrementally as a team.
I’m planning to write a series for Senior Engineers & Technical Leads: what to do after you’ve made your Sandbox Project, how to present your Sandbox Project to your team, how to get alignment within the team and with the Engineering Manager, how to handle any resistance or skepticism, how to introduce automated testing & TDD incrementally without breaking production and whilst still continuing to deliver new features, how to showcase your results within the team and to Engineering Management, and even how to gain influence beyond your own team.
4. TDD Engineering Transformation
What if we want to go bigger, and do a company-wide transformation across teams. Do we do it across all teams at once or incrementally? How do we get internal champions? How do we build inhouse technical coaching capacity to scale TDD across teams? How to ensure we’re synced regarding TDD practice across teams? How to handle resistance and skepticism? Should all levels of TDD be introduced to all teams and all projects?
I’m planning to write a series for CTOs & Engineering Managers on how to define their transformation roadmap, how to choose an internal champion team to create a sandbox project and showcase it to others, how to choose a pilot project where to apply TDD, how to apply it incrementally, and then to scale it out to other teams, as well as advice on which levels of TDD to apply across the projects.
Your feedback
The above roadmap is a tentative list of ideas for 2025 and the future, and I may update/adapt it.
Now I’d like to hear from you:
Is the above roadmap aligned with your needs and goals?
Is there something that you really need but isn’t listed above?
Any other comments or feedback
Thanks a lot everyone, I'm looking forward to 2025! 🚀
Looking forward to the TDD Transformation in 2025! 🙂
Great roadmap proposal, Valentina! I love it! Let’s become the sandbox mindset the safe place to improve together with confidence day by day