arjunrao
Published on
Wednesday, March 6, 2024

From a snowball to an avalanche: The power of small changes 

One of the things I guide my teams on is how they tackle big unknown problems. Often when a big problem is encountered, it is riddled with several unknowns based on business context, technical solutions, human touch points and the list goes on and on.  It can be pretty overwhelming to figure out where to start and how to proceed. In such scenarios, I propose the following steps — 

  • Pick a narrow slice 
  • Keep things atomic
  • Run a tracer bullet end to end
  • Rinse, repeat, iterate

Let’s look at these a bit more in details — 

🍕Pick a narrow slice

Looking at a project in its entirety makes it hard to determine what parts are important and where to begin. Rather than taking a sequential approach to building the whole feature, think of how to build intermediate pieces. The outcome might not look anything like the end product, but will provide valuable feedback or learnings for you to keep building towards your eventual goal. 

To demonstrate this, think of how you would build a car for the first time. A very complex and time consuming affair. Rather than starting by building a car, you can build it in multiple iterations. Each of these iterations provides you valuable lessons about the final way you need to build a car, but you learn it in steps. These include — 

GoalAction
Move from point A to point BBuild a skateboard to demonstrate usage of wheels
Provide some form of controlled navigationBuild a scooter to demonstrate usage of steering
Complex wheel system to travelBuild a bicycle to demonstrate usage of interconnected gear system
Move without human effort involvedBuild a motorbike to demonstrate usage of an engine
Car that helps you achieve your goalBuild the car

⚛ Keep things atomic

As per the dictionary, the definition of Atomic is,

of or forming a single irreducible unit or component in a larger system.

By creating bite-sized chunks or small increments of the project you are trying to deliver, you achieve several benefits such as -

  • They are much easier to explain to someone else who wants to know how things work.
  • They are independently testable. You don’t have depend on other components to prove the viability of the piece you are trying to test.
  • You reduce uncertainty because small things are easy to deliver and build momentum you need towards progress.
  • You increase the amount of feedback you are receiving to determine the direction you want to go down.

🎯 Run a tracer bullet end to end

As Pragmatic Programmer defines Tracer bullets

“Their phosphorus ignites and leaves a pyrotechnic trail from the gun to whatever they hit,” write authors David Thomas and Andrew Hunt in their book The Pragmatic Programmer. “If the tracers are hitting the target, then so are the regular bullets.”

Similarly, having end-to-end validation of the smaller slices of your project provides you feedback. You can use this feedback to determine whether you should continue further down the path you undertook, or abandon it to go down a different path. Having that feedback early and often is crucial for you to build something that has value. Otherwise it would be too late when you find out that the assumptions you made do not provide the value that you presumed at the outset. 

♻️ Rinse, repeat, iterate

Once you create this tight feedback loop, you create a flywheel that will take you in the direction you want to go, even if its not the one you anticipated at the start of your project. 

Making bite-sized increments is a powerful approach to achieving goals and making progress . Other benefits are - 

  • Reduced overwhelming feelings
  • Easier to identify and address problems
  • Increased chances of success
  • Improved productivity
  • More adaptable to changes and pivot as needed

By breaking down large, daunting tasks into smaller, more manageable pieces, it becomes easier to focus on the task at hand and make progress towards achieving the ultimate goal.


⭐ If you like this type of content, be sure to follow me or subscribe to https://a1engineering.beehiiv.com/subscribe! ⭐