Balance to life is kale shakes and cupcakes!
Founded in 1853, the state owned Indian Railways has one of the largest railway networks in the world. With over 71,000 miles of track spanning 7000+ stations carrying over 8.3 billion passengers annually, it employs over 1.3 million people. Indian Railways generates about 70% of the revenue from freight traffic while the remaining 30% comes from passenger traffic.
Given the socialistic background of the Indian government, freight business profits are used to subsidize the passenger ticket prices so that a common man can travel very inexpensively. You could travel by train from Mumbai to New Delhi (about 900 miles) for a super low price of around $10! To enable such a low price travel, Indian Railways has to balance many variables such as freight-versus-passenger traffic, frequency, route planning, staffing levels, passenger convenience, amenities, capital expenditure, service quality, safety, etc.
In many ways, balancing train operations is very similar to balancing product roadmaps. And yet, if you look around, you will find plenty of examples of technology products (especially from big companies) that are a bit of a train wreck – uninspiring, buggy, unintuitive, slow, clunky to use, etc.
Why is that?
Unbalanced Product Roadmaps!
As companies get bigger, there is a pressure on product teams to prioritize items that have a direct ROI. While that intent is noble, it typically results in a situation where new features/functionalities are given much higher importance. Every subsequent release gets stuffed with more and more bells & whistles to appease external customers & internal stakeholders (sales, marketing, execs, etc.) and also because it’s easier to justify ROI with new features.
With this intense focus on new features & functionality, 2 things usually get the step-child treatment:
- Infrastructure Improvements: Every technology product has frontend/backend infrastructure like databases, middleware, messaging, caches, security framework, identity management, UX frameworks, analytics, test automation, etc. Keeping this infrastructure humming takes a non-trivial effort on an ongoing basis. And yet, such infrastructure improvements typically take a back seat because improving/maintaining it is not as sexy as product bells & whistles.
- Refinements: This is polishing the product to a shine – bug fixes, performance improvements, UI/functionality tweaks, usability improvements, etc. It’s the little details that elevate the product experience. Again, this area typically doesn’t get much love.
Over a period of time, as the products get stuffed with more and more bells and whistles with little attention to Infrastructure Improvements and Refinements, the product becomes clunky. Technology industry even invented a term “technical debt” to describe this. It’s a fancy way of saying “we didn’t do stuff that we should have and we kicked the can down the road”.
What’s the mantra to prevent that?
When planning product roadmaps, management should mandate product teams to present a balanced roadmap. Every product release should offer a balance of Features and Functionalities, Infrastructure Improvements & Refinements:
Typically, I guide my teams to allocate about 60% of the bandwidth to Features and Functionalities, 20% to Infrastructure Improvements & the remaining 20% to Refinements. While this allocation can vary, in the long term, this structure allows product teams to deliver solid well-rounded products in a disciplined manner without incurring “technical debt”!