Agile does not make you build a better product than your competition. At best it makes you the same.
I spent the last 7 years in #productmanagement and learned 6 unconventional tricks to ship insanely fast.
🧨 First, why shipping fast matters
The speed at which you build and iterate is a proxy of your success.
Paul Graham puts it this way
« mere rate of shipping new features is a surprisingly accurate predictor of startup success».
Here are my 6 cheat codes for your startups.
🧪 1. No staging environment!
If you batch your releases using a staging environment for weeks, it's more likely that things will go wrong,.
Any steps between the dev and product environments are a way to hold back. Canary version is the worst.
Exception: mobile apps because they need manual install from users 📱 Staging helps making sure the app is stable before publishing it.
🚩 2. Adopt a feature flag
How can you catch bugs without staging?
Answer: Feature Flags (FF).
Feature Flag lets anyone release a feature to one or several customers without writing code.
They remove the need for staging since you can create a feature and add only yourself to it.
Feature Flag is great to add users to beta and iterate with them.
Feature Flag gives responsibility to engineers who know anyone is a click away from pushing a feature live.
Feature Flag urges the team to test, iterate, and release faster.
🔚 3. Give end-to-end ownership to your engineers
There is no point in adopting a Feature Flag if your team doesn't embrace its responsibilities.
A way to ship fast is to make it clear to your engineers that they are responsible for:
- translating user requirements into an initial scope
- building the initial scope
- validating the first scope solves the user problem
Product and design support engineers. But engineers are responsible for making sure the problem is solved. Please note the difference. Engineers are not responsible for the feature being a success. They are responsible for making sure the problem is solved.
⚡️ 4. QA immediately
When engineers wait for QA, they have to switch contexts. Context switching is a huge waste of time.
Fix that with immediate QA. Most of the time someone in the team has 10 minutes right away to test and give some thoughtful feedback.
🔻 5. Scope very small
It’s faster to break down a project into 3 small parts and ship them than to ship an entire project at once.
To make this happen add a step called “scoping” to your product development process.
Make this step compulsory.
Answer the following question "is this scope likely to solve the user problem?".
🌖 6. Set regular changelogs
Every sprint ask yourself “what will be the changelog highlight next week?”.
Publishing a changelog at a regular cadence is forcing function to ship fast.
It forces you to think about new exciting things to communicate. Hence new exciting things to build over time.
Do you have more secrets?
Please share 🙏