|
"x10 developers" are, in fact, proficient developers, who are experienced with their stack and problem domain. Well, I'd say this is only true for your typical corporate entity, where their products are basically just web applications that represent a state machine using some sort of database store for persistence (which is... basically everything). By the time the company has achieved some size, there's enough process and bureaucracy and projects mostly consist of what the OP described -- migrating from one framework to another, or some other incremental enhancement that's hardly pushing any sort of business of technology threshold. At previous employers that fit this description, I could have easily been 10x more productive if I didn't have to endure four hour sprint planning meetings or be required by an understaffed QA/DBA/sysadmin team to approve my code before release, all to do completely routine development changes that required no serious problem-solving. This doesn't mean I'm a 10x developer. It probably means I'm a 1x developer, so a 'true' 10x developer would have been 100x more productive without the aforementioned bureaucratic crap. At these companies that would dogmatically follow Agile and had two week sprints, I might spend four hours, across two days, actually developing -- with the rest of the days filled with various meetings, interviews, waiting for QA/DBA/sysadmins, fucking around, etc. I could easily see how someone could spend only 15 minutes on what took me four hours, and his solutions would likely be more elegant. It doesn't matter -- the limiting factor isn't the development time, or even the development quality. In that environment, there is literally no difference in productive gains between a proficient developer and a 10x developer. Given a "10x developer" is literally defined by his productivity/quality, if you think they're effectively overhyped/nonexistent, ask yourself this: are you in an environment where a 10x developer could actually demonstrate 10x productivity? At most companies, the answer is no, because a 10x engineer is doing in hours what takes people days, and nobody notices. But in the right environment, the 10x engineer will do in weeks what would take proficient engineers months, or do in months what would take years. They're the people that Steve Yegge calls "Done and Gets Things Smart"[0] or that Rands calls "Free Electrons"[1]. And if you work at a company that can't think in terms of months because it's always concerned about quarterly earnings, then they have no use for 10x developer, and chances are you couldn't even tell if one was even there. [0] http://steve-yegge.blogspot.com/2008/06/done-and-gets-things... [1] http://www.randsinrepose.com/archives/2005/03/20/free_electr... |
>>I could have easily been 10x more productive if I didn't have to endure four hour sprint planning meetings
I completely understand this feeling. The problem is so plain and simple. There are teams that win because of heroics, they achieve something big. Those management types who lack the chops to be heroes simply try to turn heroics in a process.
So what they basically do is, watch a team win. Instead of realizing its the interesting/challenging nature of work combined with things like lesser distractions, strong deadlines and well aligned monetary incentives that count, they rater look into common set of patterns that they would do. The net result is they end with a really boring process.
If you think to be successful you have to do X, Y and Z steps you are doing it wrong. X, Y and Z are catalysts, enablers or at most methods to keep you sane while you pursue a higher purpose.
My latest irritation is manager types getting too obsessed with Unit testing, it reminds of XML and the way it was abused.