As a software engineer or engineering leader, do you enjoy
- trying to predict the unknown unknowns up front when planning a project?
- constant questions from others about the status of your team's project?
- finishing your day or week feeling like you haven't accomplished anything?
- being asked to review a pull request that touches thousands of lines of code?
- trying to test a pull request that touches thousands of lines of code?
- the product changing underneath you while you attempt to land that pull request?
- incurring massive risk when merging a new feature or refactor?
- providing no value at all to your customer unless you finish 100% of the project in time for release?
- projects that seem to go on forever?
I've been there -- it's not fun.
Plan the smallest valuable version.
Build that version.
Test that version.
Release that version.
Repeat.
Your customers will thank you.
Your team will thank you.
Your future self will thank you.