Shipping Always Wins
As I progressed in my career, I found myself having less time to code. While I am far more efficient than I was at the beginning of my career, there is only so much one can produce in a limited amount of time.
There is a significant difference in coding time between a small company with minimal overhead and a large company with more processes. It also depends on the project. Are you working on a greenfield project, or is the codebase larger, more complex, and slower? Do you need to wait hours for tests to run, or can you deploy a feature in minutes after opening your editor? And there is a difference in responsibilities depending on the seniority.
The more time that gets chopped away by processes, meetings, and discussions, the more important it is to prioritize and focus. This is where my rule comes into play, which helps me keep moving forward: shipping always wins.
A few examples you might relate to:
You find a small bug. It’s an annoying one, but not a priority for your team to fix it soon. However, it is something customers might notice as well. What’s the solution? Correct — create a new branch, fix the bug, push, and ship it.
Or, you find yourself in a meeting where the discussion has already been going on for half an hour and is going in circles. No one is willing to make a decision, although any decision would be better than none. What’s the best strategy? If you can’t take over the meeting and make a decision, open your editor and push a first solution. After all, who can argue against shipping an improvement?
Or, you see an issue that has been in the backlog forever but would be a huge benefit for your users. Sure, you can wait until it’s scheduled, but what if it takes you only 1-2 hours to build a prototype or even ship it completely? Correct — shipping wins again.
My examples above all assume one thing: what we ship is valuable to the end user. Shipping for the sake of shipping is as useless as discussions for the sake of discussing things.
Prioritizing and focusing on shipping regardless of the stage of the company, the project, or seniority is an invaluable skill to have.
So go ahead and ship!