🏆 Promotion-based development
Table of Contents
While researching how to create a proper career path for employees and the different ways companies do promotions, I stumbled upon a term that got my attention — promotion-based development. Or, as I like to call it — optimizing for performance reviews.
It’s an interesting concept that boils down to figuring out what the managers at the company want and doing exactly that — for example if people get promoted when they start a new project. Hundreds of projects will be created just to get a promotion. If you get promoted by the number of bugs you fix, you start letting things break and be the hero who comes in and fixes them. It’s all about getting that corner office with a good view.
Imagine that you’ve just been promoted to be a technical manager and got yourself and a lovely development team of 10 people. You trust them; you give them autonomy. They’re free to do anything they want, as long as they’re moving the product forward — a mix of bugs, features, and refactoring should be expected, though. But you start noticing that people do only features. Why? They’re trying to maximize their visibility in the hope of getting a promotion. Building the next significant feature sounds more thrilling than refactoring the old legacy code, making it easier to maintain the application in the future.
This practice is why many tech giants have built many projects in-house instead of relying on open-source solutions that already solve their problems. Integrating an open-source tool is not “promotion-worthy.” From developer tools to monitoring tools to chat systems — all built in the pursuit of getting noticed and rewarded and eventually abandoned after some time.
Google had multiple teams working on several competing chat systems simultaneously, and they built 20 chat products in total over the last decades. Each team most likely got a promotion before a new team said, “We need to rework this. We can build it better,” and the cycle continued.
How to do promotions right then?
I don't know.
A promotion-oriented culture is one where an individual matters more than the collective. You will get promoted if you’re an effective presenter and are visible enough. So naturally, there is less focus on doing the work that needs to get done and more on doing the work with the most potential to be noticed.
On the other hand, performance-oriented culture measures how well you perform against overall business objectives and is not based on the internal competition of who built more features. It's still not a perfect system and can be gamed (e.g. if the performance review is about the number of calls you make instead of the $ revenue that you bring in).
I think startups have it figured out. The company’s survival is the primary focus, while getting a promotion is a second-class goal. So the incentives for everyone are aligned — if the startup succeeds, everyone profits from this. This is where profit-sharing is a handy tool. As long as all employees can benefit from the company’s overall success, then the employee’s efforts will be focused on the overall goals, not personal gain.
This puts everyone in the same boat and rowing in the same direction.
There’s also no “Promo-season” as in big corporations, where everyone is expected to be either promoted or not during a specific month. When you’re building a startup, you don’t think about politics or who to kiss ass about your promotion which should be planned for Q4 2022. You’re just doing your best and learning a bunch of new skills, and you know that if the company grows, you grow also.
Sadly over time, startups tend to drift towards big corporation promo-based development with people trying to squeeze the most out of the company for themselves. After you reach a specific size, there’s no way around it, the pie will be sliced, and everyone will try to get the bigger size.
I don’t think there’s any way you can avoid that. Still, we should try and reward engineers who consistently contribute to the quality of the product rather than flashy people who favor redoing something in a hundred new ways.
I would recommend reading this twitter thread about promotion-based culture.
Other Newsletter Issues:
It’s high time companies reevaluate what truly deserves a promotion.
Promotion-based development seems like a recipe for short-term gains, long-term pains
You’re really highlighting a critical issue in corporate culture. As someone in middle management, I’ve seen how prioritizing promotions over product quality can lead to a fragmented and inefficient work environment. It’s essential to create a balance where employees are motivated by both personal growth and collective success.
The idea of promotion-based development is quite troubling. In the tech world, where innovation should be at the forefront, it’s disheartening to see efforts diverted to chasing promotions rather than improving or creating impactful solutions. I mean, we’re all coders, we want to build stuff, but also earn good money. We need to advocate for a culture that values creativity and problem-solving over mere visibility and self-promotion. In the end, it’s all about you build, not just what you appear to build. People will know.
Promotion-based development is a fast track to mediocrity