One of my favorite books is Slack, and I have this quote highlighted: "There is no such thing as healthy competition within a knowledge organization; all internal competition is destructive."
One anecdote I faced once was talking to a senior engineer at a FAANG company who was complaining that he just discovered another organization building the identical product his team had spent over a year on, saying that management was so disorganized it must have not realized it. A couple weeks later I happened to talk to a VP up his chain of command, and mentioned this to him, and he chuckled and said "oh yeah that's by design, I'd rather have internal competition than external, it's worth the cost". Was a good reminder for me to avoid large companies.
> A couple weeks later I happened to talk to a VP up his chain of command, and mentioned this to him, and he chuckled and said "oh yeah that's by design, I'd rather have internal competition than external, it's worth the cost". Was a good reminder for me to avoid large companies.
Rather than just outright dismissing what he said without any justification, did you consider that he actually had evidence/experience that it indeed did reduce the cost? In terms of risk in particular, having two teams work on the same product significantly reduces the chance of not having a viable product by the deadline. Assuming e.g. a 50% chance of failure, having two teams reduces this chance to 25%.
That's the cold number's game. But that excludes a lot of factors which the original article is about. The moment you have internal competition, you build conflicts and distrust. The fallout on both teams may be much worse, in the long run.
Maybe you get this one project out the door, one team wins, the other one loses. Great. And then what? Half the other team quits since they didn't get that bonus and feel betrayed by management. The other half stays, but resents both management and the "winning" team. Now you reshuffle, and those guys have to work with each other. Start the game anew, with a new project? Great, now people know what's up and will play their cards accordingly. Infighting is guaranteed. That's a terrible way to manage teams. Short-term gain? Maybe. Long-term destruction? Basically guaranteed.
The "without any justification" part of your answer dismisses that that's exactly what the original article is about that we are discussing here. That alone is justification and it matches many people's experience.
I'm personally experiencing the exact opposite these days. I'm thriving on my company not doing this nonsense and we are doing fantastic!
>The fallout on both teams may be much worse, in the long run.
The key thing is that nobody's presented any evidence, just some anecdotes. Clearly there are places that have internal competition and have done quite well, like Amazon (compared to e.g. GCP), or many trading firms.
I so far haven't heard an anecdote from somebody claiming "I experienced internal competition and it was sooo great!".
It's anecdotes from people having experienced anxiety, toxicity and overall bad work climate leading them to either quit or seriously consider it themselves or hearing it from their colleagues.
And it's other anecdotes saying "some companies have done quite well".
I personally have experienced it and I won't go back. And I have also personally experienced the opposite and now I'm having a blast without this nonsense.
But sure, let's just say "nobody has evidence, maybe it's great, maybe it's not".
Then you didn't read well. User tovej presented pretty good arguments about intrinsic vs extrinsic motivators, including a bunch of cited studies.
Your argument that Amazon does great does not provide evidence. Maybe they's do even better without this crap, or maybe the employees would be happier.
> Assuming e.g. a 50% chance of failure, having two teams reduces this chance to 25%.
...if failure is independent, sure. Not only is independence generally a dangerous assumption, but in particular when it comes to software engineering, it's been shown that problems are not independent. I don't have the reference at hand, but if I did, I could show you that completely separate teams tend to make the same mistakes.
This makes sense. Both teams must work with the same organisational rules, the same infrastructure, the same 'enterprise' technology strategy, often the same geographic constraints, the same marketing organisation, the same customer preconceptions about the company, etc, etc.
Nono it doesn’t make sense. What are the chances that both 50% failure chances of both teams overlap on 49% of each other? Bad luck! but it is rarely random: Start at the wrong time of the economic cycle for example. Also what are the chances each team poaches resources that the other needs? Then you increase failure rate to 75%…
and if the product's market only allows for say 2-3 dominant actors, the lack of focus might even mean that you lowered your chances of success quite a bit. just look at Google's multitude of misc chat and meeting solutions.
That's not how risk management works, and it's also not how costs work. You're (more or less) doubling costs, but the biggest risk factors may be outside the control of both teams.
The opportunity cost is the productivity of an entire team of developers who might well be better employed doing something useful.
>That's not how risk management works, and it's also not how costs work.
It's how it works in a lot of successful trading firms; Jump Tower and Citadel for instance have competing internal teams. Reduces the risk to the firm because if one team's approach fails, chances are another will still be doing okay.
I'd think sharing the plan of building two versions of the same thing and tasking the teams to come up with two distinct implementation strategies would provide a better outcome. This way there's still competition, but of a friendly kind. The risk is further diminished by communication of lessons learned and not having to step on the same rake multiple times.
It destroys at least one team’s morale and increases attrition directly. If a company cares only about results and has a good supply line of employees like for FAANG companies have, it might work. But for most companies, it would only lead to implosion.
Agree on sometimes having good reasons. Not just time to market, but also different approach. As long as in the end only the better one is shipped and the "losing" team is managed well through the decision, it could be a win.
There can be good reasons for redundancy, like you mentioned. I think that not even telling different teams about the others working on the same thing goes a bit far though. Eventually people will find out anyway and then they will feel like management has lied to them. The fallout of that situation will probably more than erase the benefits from having multiple teams.
Yes, that's exactly what it was. Keep them squibbling among each other so they wouldn't get any ideas of disposing of him. At least that's the consensus nowadays. Not sure if there's any proof of his intent.
I remember reading from a Googler somewhere that exactly how Google Pay was built. Several regions were asked to build Google Pay product and finally the version built for India by Singapore team won so Google made that as the default version to everyone. And I guess many from original US Pay team quit or went to other projects or something like that.
> 2 is still pretty good for a lot of things though.
It doesn't stop at 2. When I left Amazon about a decade ago there were at least half a dozen digital money services/products. Each vertical (retail, 3-p retail, Kindle, Gaming etc.,) all had their own stored-value service managing a slightly different version of the same digital money (gift-card, merchant balance, game coins). The feature sets overlapped ~95%. It may well turn out alright for the company but if you are an engineer or manager tasked with building yet another such service it's no fun at all.
"Two is one, and one is none" is a phrase I've heard for critical survival equipment in several contexts. For example two regulators when scuba diving,
two tie-offs when securing gear to a pack,
It's not like they had any systems competing, unless we're talking competition between Boeing and FAA, where one fights for profit by destroying evidence and fudging results, and the other tries to fight for safety (nominally).
P.S. It didn't start with McDonnell-Douglas acquisition - 737MAX is not the first 737 with deadly design failure - the first one was the original one. Except there Boeing also destroyed evidence from wreckages to hide the issue.
I remember reading somewhere that Bill Gates once said that Microsoft would rather pay for developers to do nothing at Microsoft, than having them leave and work for the competition.
If all competition withing an organisation is destructive, is it still destructive if it happens withing parliament? Thats a single organisation that needs to get things done. What about withing a government or a political party?
What about withing a country, is that not an organisation? Organisation is not defined by the payroll department after all
> A couple weeks later I happened to talk to a VP up his chain of command, and mentioned this to him, and he chuckled and said "oh yeah that's by design, I'd rather have internal competition than external, it's worth the cost". Was a good reminder for me to avoid large companies.
I had the exact same interaction with a VPish person. The concern in my tone didn't even register with him. He said, let them all build, and may the best tool/service/library win. There is no such thing as healthy competition; it always tends to get vicious and ends up really badly for one of the teams.
I believe that a management culture where teams and projects had to compete against each other was also one of the causes of the downfall of Nokia’s phone empire.
I suppose from the perspective of those higher up the chain of command, it’s not much different than acquiring competing companies as soon as possible.
If you acquire a competing company, you ideally assimilate the employee work force and integrate them into your organization. You welcome them and make them feel home from day one. At least those that you keep. There are likely a few that you let go. But it's really important not to get hard feelings in there, 2-tier engineering, internal competition. I'd quit immediately any organization that doesn't understand this.
I think it does. I'm not just talking about politics here, though I do think company size and level of politics are correlated. I'm talking about purposefully designed internal competition. That's very rare to see at smaller companies.
One anecdote I faced once was talking to a senior engineer at a FAANG company who was complaining that he just discovered another organization building the identical product his team had spent over a year on, saying that management was so disorganized it must have not realized it. A couple weeks later I happened to talk to a VP up his chain of command, and mentioned this to him, and he chuckled and said "oh yeah that's by design, I'd rather have internal competition than external, it's worth the cost". Was a good reminder for me to avoid large companies.