Embracing Discomfort and Uncertainty to Foster Growth
We are constantly confronted with new challenges and opportunities as software developers. There's always something that can throw us off balance, whether it's learning a new programming language, dealing with a difficult stakeholder, or navigating a complex technical problem. And yet, it is precisely in those moments of discomfort and uncertainty that we can grow and become more agile.
So, how can we develop the courage to confront our fears and embrace agility? One approach is to work on developing a growth mindset, which is an open and curious attitude that allows us to see challenges as opportunities for learning and growth. This could include actively seeking new learning opportunities, accepting failure as a natural part of the learning process, and actively seeking feedback and constructive criticism from our peers.
Experimentation and Continuous Improvement
Another important aspect of developing courage and agility is to be open to experimentation and iteration. Adopting agile practices such as Test-Driven Development (TDD) and Pair Programming, which encourage us to work in short, iterative cycles and to constantly test and refine our code, could be a good place to start. By implementing these practices, we can foster a culture of continuous improvement and experimentation in which failure is viewed as an opportunity to learn and iterate rather than a setback.
Real agility ultimately involves having the courage to confront our fears and embrace the unknown, not just adhering to a set of guidelines or best practices. The most important advice I can give you is:
When you fear something, do it more often!
Hard and counterintuitive, I know, but it’s simply a piece of gold advice: don't let fear hold you back in software development!
Instead of avoiding deployment, make it a daily or weekly habit.
Instead of fearing bugs, implement Test-Driven Development and test every minute.
Instead of fearing code reviews, adopt Pair/Mob programming and receive immediate, in-voice feedback.
Instead of fearing feedback, embrace it by proactively asking for retrospectives more often, asking and providing sincere but delicate feedback to help your team grow.
Go Deeper
Here are some resources you can check if you want to go deeper and learn more about how to face fears thanks to Agile practices.
Books
- eXtreme Programming: Explained - The book about XP has a small section about the remote work context
Online
- Why fearless feedback is critical to agile development success - by TechBeacon
- Agile Doesn’t Work Without Psychological Safety - by Harvard Business Review