I had the good fortune of reading an article about how we’re getting better at getting better in the New Yorker. And it got me thinking about the pursuit of the 10x engineer and the lack of on-the-job training at most tech companies.
One of my beliefs is that as the size of a company expands the engineering population becomes average through sheer force of numbers. You can fight this problem indefinitely like Google and NetFlix do, or you can ask yourself – what the hell am I supposed do about this?
The general approach most companies take is to lather process on top of everything in attempt to prevent anything bad from happening. In effect, acknowledging that the average employee is no longer good enough to do their job, you rely on a small number of gatekeepers to act as fulcrums on your product quality. Hence the emergence of architecture reviews and design reviews and gatekeepers of quality.
We look at small high-talent density teams and wonder why can’t the entire company be like those teams? Heck we fantasize about the small high-quality teams and their productivity.
We rarely ask the question of how do we systematically improve our teams. We rarely approach making engineers better a core part of our core values. We make our value hire only the best, not make the best better.
The wasteful approach we take to talent, and to people will get disrupted by a company that realizes that it’s better to systematically train hundreds of engineers than to keep trying to find the best…
Our industry’s approach to talent is wasteful in the extreme – we discard 50% of the human race, we don’t train people, we love youth at the expense of the old, we think that insane hours that burn people out are okay and we’re able to do that because there is this almost endless supply of new kids coming in from every corner of the world dreaming of getting a piece of the action.
This approach reminds me of a company that never asks the question of what happened to the OLD users because of all of the NEW users that are joining every day.
I hate to leave a post with only a problem. What are some things that need to change?
Two things that need to happen:
- Change the review process. Right now we are loathe to evaluate and improve people’s work because it ties so intimately with salary and promotion discussions. We need to find a way to continuously evaluate people’s work not to punish or reward but to improve. Evaluations all feel punitive because we don’t use them to specifically target ways to improve just to ding people.
- Invest in teaching. Too much of training is done on the job through osmosis and practice because that’s all that’s available. And if someone is teaching the guys doing the teaching are very bad at it because we don’t train them on how to teach. We ask people who suck at teaching to create training materials and are surprised at how little value anyone gets in them.
This space feels like there is a lot of opportunity for innovation because of how little is currently being done. And if you believe that companies success is a function of the people, then a deep and sophisticated training program may be a strategic differentiator.
Something to ponder.