Live data from Hacker News

High Performance Individuals and Teams

pablasso.com

31–40 of 76 posts

Re: High Performance Individuals and Teams

#31
post #17

Earlier quoted context omitted.

I feel the same way, anyone who does not believe in the 10x engineer has just never met one. Sometimes the software they produce is absolutely stunning.

> I feel the same way, anyone who does not believe in the 10x engineer has just never met one. Food for thought: The interpretation of a 10x engineer is not consistent. Putting my manager hat on, I ask: Can I replace 10 of my average engineers with this one person? The answer is never "yes". That's because a team does more than just technical stuff. There's documentation, dealing with customers, bureaucratic stuff, e…

Producing an equivalent result in less time than a less capable engineer is not the main benefit of having some really good engineers, at least not at all companies. It's being able to perform work (and well) that requires more knowledge/ability. I know quite a few people who can't be replaced with 2 average engineers, but that's not because they work at a >2x faster pace, it's because I wouldn't trust an average engineer to do their job.

Re: High Performance Individuals and Teams

#32

I’ve been fortunate in my career thus far, since I was about 14 or so, to have always been in the company of at least one “10x”’er on each of my teams, as the cliche goes. They’re dispersed through various companies nowadays - Stripe, Twitch, Google, FB, Discord, etc etc. But it was interesting and beneficial for me to work alongside them if only because I had decent role models to follow. This article first puts up…

Can john carmack build 10 crud apps in a week?

Re: High Performance Individuals and Teams

#33
post #17

Earlier quoted context omitted.

> I feel the same way, anyone who does not believe in the 10x engineer has just never met one. Food for thought: The interpretation of a 10x engineer is not consistent. Putting my manager hat on, I ask: Can I replace 10 of my average engineers with this one person? The answer is never "yes". That's because a team does more than just technical stuff. There's documentation, dealing with customers, bureaucratic stuff, e…

> Putting my manager hat on, I ask: Can I replace 10 of my average engineers with this one person? The answer is never "yes". Well, yeah, people aren't interchangeable cogs. A person that is capable of delivering 10× value per unit of working time when properly employed probably isn't a drop in replacement for 10 1× developers. And managers thinking of people as interchangeable cogs where productivity multiples work…

> A person that is capable of delivering 10× value per unit of working time when properly employed probably isn't a drop in replacement for 10 1× developers.

I find that claiming they produce 10x value per unit of working time, while also pointing out that they aren't interchangeable cogs, as a bit odd. If they are not interchangeable (which I agree they are not), then you shouldn't compare their productivity so glibly. At the very least, you need to state up front your method of valuation, which was why I said in my comment that "The interpretation of a 10x engineer is not consistent."

I've never found a manager, or even a company, that could put even a remotely accurate number to the value a tech employee is providing. In sales, perhaps. But with this kind of work, the error bar is large enough that any such estimate is useless.

And then confound that with the fact that the value of your work is dependent on other people - both in and out of your team. Being able to extract how much you produced from this mishmash is usually not possible.

So at best, your scenario of assuming someone is producing 10x value per unit of time is little more than an interesting thought experiment.

Lest "different people have different roles" is a confusing factor, let's eliminate the uncertainty. Say I have a team with many responsibilities (including non-technical ones), and it is every developer's responsibility to do these. You will likely never find a 10x employee there. You'll find someone who may be 10x better on the SW coding side, but he won't achieve those multipliers in his other responsibilities. His real value will be lower. In reality, managers will often shuffle roles so he is not hampered, and assign him to do only the thing he is great at, but that won't mean that he is producing 50% of the value in an 11 person team (which is what 10x means), when you look at the total output.

There's a reason why in game theory, if you need me to achieve something, I can demand half the value even if I only contribute 10% - because 50% is the stable solution (assuming you can't find an alternative to me, of course).[1] People who are replaceable get lower pay, but there's a reason almost no "10x" engineer gets 10x the pay. It's because they literally are not worth 10x to the company.

> Yeah, and all of those things are things a developer can be better at than average, not just technical design and coding

For sure - just not 10x. The reason I mentioned these other "bottlenecks" is that they don't scale as well as other technical/engineering work. And this is why most people viewed as 10x engineers aren't. To be clear, I don't doubt that a person is 10x better than the average in doing X, but I've found that X is always a very narrow scope. I want to see how much more he is contributing to the whole compared to others, and have yet to see a multiplier as high as 10x. If you cannot leverage your 10x productivity in X into 10x better documentation, 10x better promotion, 10x better testing, 10x better customer skills, then your productivity in X has those bottlenecks and your multiplier is less than 10x (in practice, rarely more than 2x for the "whole").

Of course, I work in a big company. I can believe 10x engineers exist, for short intervals, in a small company or a startup.

[1] Growing up, I really hated game theory, but too many decades on this Earth has shown me that the results largely reflect stable outcomes in society. I continue to hate it, but I don't ignore it any more.

Re: High Performance Individuals and Teams

#34
post #17

Earlier quoted context omitted.

> I feel the same way, anyone who does not believe in the 10x engineer has just never met one. Food for thought: The interpretation of a 10x engineer is not consistent. Putting my manager hat on, I ask: Can I replace 10 of my average engineers with this one person? The answer is never "yes". That's because a team does more than just technical stuff. There's documentation, dealing with customers, bureaucratic stuff, e…

> Can I replace 10 of my average engineers with this one person? The answer is never "yes". That’s because the “10x” is an order of magnitude difference between the best and the worst , not the average. https://www.construx.com/blog/productivity-variations-among-...

Fair enough. In that case, I would expect a multiplier much larger than 10x. :-)

Definitely encountered folks who fail on FizzBuzz and similar problems.

Re: High Performance Individuals and Teams

#35
> If you find a project where only one person know what is going on, chances are that person is not good at writing code for humans, not that is a coding god.

I have actually experienced this. Huge code base, 25+ years, oldest copyright notice goes as far back to 1995. Worse of all is that refactoring would always need middle management's approval, and the "tech leads" would never delegate jobs and would always spew out code like crazy while the rest of the team was slowed due to their mess. I'm glad I quit.

Re: High Performance Individuals and Teams

#36

"If you find a project where only one person know what is going on, chances are that person is not good at writing code for humans, not that is a coding god." This is hard for many to grasp, but if you get the opportunity to lead enough teams it will become clear. And it makes sense, if you think about it. An individual who ended up owning a particular piece of a codebase will be incentivized to obfuscate and obscure…

In my experience, the far more likely explanation for a bus-factor for an area of code is not that they want it to be that way, but because the organization has stretched them and other coders thin enough that it's hard to fix that.

An organization can get surprisingly far with a huge number of bus-factors, and doing a learning-by-fire session whenever someone burns out and quits.

If the engineer who's a bus-factor on that project is willing to help others learn and recognizes tech debt but isn't given time to fix it, that points to organizational issues to me, not to any engineer being bad nor attempting to have job security.

Re: High Performance Individuals and Teams

#37

> Even more important than finding great engineers is to avoid bad ones. After reading that sentence, I thought to myself, "How long did I go from the start of my career before meeting someone of whom I genuinely thought, 'this person is so bad they should definitely be fired asap'?". In my case, I think the answer is somewhere around 20 years. My takeaway from this is that at even with ~18 years of experience, my fo…

I felt similarly as an IC, but my perspective changed as I shifted into management.

I didn’t believe that “negative value” engineers existed when I was working on the front lines alongside other good engineers. In reality, I was seeing the end result of competent management teams who effectively filtered out negative employees in the hiring process or quickly dealt with anyone who became problematic after being hired.

Being a negative value engineer isn’t just about writing bad code or being incompetent. Those things are trivially obvious in any technical interview. The reality is that negative value usually comes from behavioral issues. Engineers who are constantly sowing discord against the company or management can bring down entire teams. Engineers who create conflict and destroy morale are toxic for productivity and will drive away your best team members. Engineers who can’t ever ship anything on time because they can’t manage their own time or they have pathological perfectionist tendencies will sink your schedules. Ironically, negative value can often come from those with great technical chops who are unfortunately mired in personal issues.

Managers can compensate to some degree with intense attention and guidance for those individuals, but at what cost? Obviously managers should make an attempt to correct behavioral problems that are dragging the team down, but at some point you need to do the inevitable and replace the problematic employee with someone who can perform without the behavioral issues.

It’s not just a question of whether or not someone can write good code. It’s a question of whether or not the team and company are best served by keeping a troubled employee as opposed to reallocating that finite headcount to a new candidate.

Re: High Performance Individuals and Teams

#38

"If you find a project where only one person know what is going on, chances are that person is not good at writing code for humans, not that is a coding god." This is hard for many to grasp, but if you get the opportunity to lead enough teams it will become clear. And it makes sense, if you think about it. An individual who ended up owning a particular piece of a codebase will be incentivized to obfuscate and obscure…

Never attribute to malice that which can be adequately explained by incompetence.

Re: High Performance Individuals and Teams

#39
post #16

> Even more important than finding great engineers is to avoid bad ones. After reading that sentence, I thought to myself, "How long did I go from the start of my career before meeting someone of whom I genuinely thought, 'this person is so bad they should definitely be fired asap'?". In my case, I think the answer is somewhere around 20 years. My takeaway from this is that at even with ~18 years of experience, my fo…

What would you consider a bad engineer? Are we talking about the utterly hopeless or those who might only have an attitude problem? If it's the former I've perhaps encountered only one in the last ten years. If it's the latter it's almost every month.

I have met plenty of bad engineers so maybe it's just luck.

Engineers that can't write simple code and always over engineer. Engineers that have no concept of encapsulation and use globals all over the place. Engineers that have no concept of perf. Engineers that can't ship and noodle the same piece of code for weeks that others would have finished and moved on in a 1/10th the time. Engineers that are all talk no work.

That last type sticks out where the engineer would basically walk around and stop at people's desks and talk their ears off but never actually finish any code. People complained. The boss said "they have a family so I don't want to fire them". I don't know how to answer that.

Re: High Performance Individuals and Teams

#40

"If you find a project where only one person know what is going on, chances are that person is not good at writing code for humans, not that is a coding god." This is hard for many to grasp, but if you get the opportunity to lead enough teams it will become clear. And it makes sense, if you think about it. An individual who ended up owning a particular piece of a codebase will be incentivized to obfuscate and obscure…

I don’t work in this kind of environment. What is an example of a common team based incentive?

Team-based incentives are not particularly common yet, though they are growing in popularity. It's pivotal that a team has some choice in who they are teaming up with in order to align motivations and incentives to achieve. A simplistic incentive is an autonomy based award. If a team completes a project ahead of schedule then they can spend the remainder of the allotted time to work on whatever they please. Sort of make your own 20% time. You can see how hard this is to get right though because if you let the product managers set schedules then they'll make the deadlines too short. If only the engineering team sets the schedule and is incentivized to come under schedule then they'll consistently over-estimate. Requires trust and balance between the team and the stakeholders.

All that said, when you talk to really high-performing teams many of them will say that they value just continuing to get to work with that same set of individuals. It's a reward onto itself to get to work with people whom you really enjoy working with.

Post reply on HN