More Than You Think …
One of the fundamental challenges of product development is understanding the true cost of releasing a new feature. The benefits feel concrete. Shipping feels great. Talking costs is a downer.
- Opportunity costs across all disciplines
- Cost to implement feature (engineering, UX, product)
- Cost to implement incremental improvements (engineering, UX, product)
- Cost to deliver feature (processing, storage, monitoring)
- Cost to train people internally to sell the feature
- Cost to train people internally to support the feature
- Cost to market the feature to existing customers
- Cost to market the feature to new customers
- Coordination costs across all teams
- Cost to document and train users/customers on new feature
- Cost to maintain that extra documentation
- Cost to train engineers on more complex codebase
- Cost of slower engineering, caused by increased system complexity and maintenance
- Cost to hire more resources to account for slower engineering
- Cost of reduced flexibility, caused by increased system complexity and maintenance
- Cost of maintaining system usability as system broadens
- … until the feature reaches end-of-life (unless you retire it) It turns out that engineering costs are but a small part of the puzzle.
Wow. So I guess it isn’t just a week or two of work! The good news is that you don’t need to cut a check for these things right away. The hard news is that you’ll end up paying in the long run. And many features end up going unused (or rarely used).
So … consider this expanded list of costs the next time you think about tacking on a new feature. Is it still worth it?