How I ship projects at big tech companies

Shipping in a big tech company is a very different skill to writing code, and lots of people who are great at writing code are terrible at shipping.

This statement is true at all scales of companies based on my anecdata.

Projects do not ship automatically once all the code has been written or all the Jira tickets closed. They ship because someone takes up the difficult and delicate job of shipping them.

Tasks done as the definition of shipped feels very waterfall. Each completed task reveals more information about the gaps between what’s been done and when the project will be done.

What does it mean to ship? It does not mean deploying code or even making a feature available to users. Shipping is a social construct within a company. Concretely, that means that a project is shipped when the important people at your company believe it is shipped.

I resonate with this idea that “shipping is a social construct”. It seems to explain why defining what “done” means is so difficult to nail down. It’s dynamic based on the scope and impact and progress of the project.

Really, the whole thing could be highlighted. Go read it.