I've built many large and small engineering teams. One of the most important lessons I've learned is "A players hire A players. B players hire C players. C players hire D players." It is a fact.
Sometimes you can't avoid hiring B players. But if you do (either by mistake or because you explicitly decided to) you need to be disciplined about either turning them in a A players or ensuring they are not responsible for hiring. If you find you have C or D players get them to move on IMMEDIATELY.
Kevin says something here that is really important, and I think it is part of the lesson he's learned: "It was really hard to get rid of the C & D guys".
This is why I now try to work on the principle that I am far better off not hiring someone than compromising on quality. I have learned the hard way (multiple times) if I don't live by this principle, I WILL pay later.
On (A) first, not everyone works in California (I don't). Second: "inertia". People get attached to people. People are afraid to rip the band-aid. People think "Oh, this is a critical time so we CAN'T fire him/her now! We'll do it later."
"You just fire them" is the right ATTITUDE, but in practice it's rarely so simple.
Related to all this is another lesson I've learned: In almost all cases when it comes to removing people from jobs, or re-organizing teams, it should be done quickly and decisively. Rip the band-aid! As a leader, you are far better off dealing with a mess that exists ON YOUR TERMs than one that exists on other's terms.
This, of course, assumes you have a set of core principles you both believe in and live by. But that's a whole 'nother diatribe.
I've never fired anyone (though I did give a student an F), but I think I could manage it. You just have to establish a process.
* Do evaluations
* If someone isn't performing, start a process to make them improve. Usually called a PIP. Manage them more closely, set standards but help them improve.
* Give feedback often, rather than all at once on a podcast several years after the problem has manifested itself.
It's partly a selfish, rational decision. In the borked world of corporate politics, firing someone on your team can reflect badly on you, or reduce your personal power (the size of your bonus pool is often related to headcount). Do you want your boss asking: "Why did you hire them in the first place?" "Why couldn't you just train them?" etc.
Sometimes you can't avoid hiring B players. But if you do (either by mistake or because you explicitly decided to) you need to be disciplined about either turning them in a A players or ensuring they are not responsible for hiring. If you find you have C or D players get them to move on IMMEDIATELY.
Kevin says something here that is really important, and I think it is part of the lesson he's learned: "It was really hard to get rid of the C & D guys".
This is why I now try to work on the principle that I am far better off not hiring someone than compromising on quality. I have learned the hard way (multiple times) if I don't live by this principle, I WILL pay later.