4 ms·
Some of the people I've encountered over the years who were praised for their speed and "productivity" dragged down the project (and/or the rest of the team) by
by amatecha 7y ago
Some of the people I've encountered over the years who were praised for their speed and "productivity" dragged down the project (and/or the rest of the team) by introducing more bugs (and risk) than anyone else. Upfront perception of "productivity" masks the long-term cost, in so many cases.
IMO the true "10X" developer is the one who boosts the rest of the team through mentorship and leadership -- the polar opposite of the "lone keyboard warrior" frequently portrayed as godlike and outweighing any other team member.
- malvosenior 7y agoTrue 10X developers are really good at picking the right tool for the job. They know the OS and standard library of their language very well. They also know patterns for how to apply technology to problems and have read a lot of other people's code. This knowledge translates into up front productivity but also less bugs as things tend to get done right and the correct technology is picked. I've seen a lot of code bases and it's never the super experienced, incredible developers introducing tech debt and bugs, it's the poor to middling developers.
- james_s_tayler 7y agoAgreed. I think there is a bit of Dunning-Kruger going on too. The "architecture astronaut" variety always manage to introduce mountains of tech debt.
- yarg 7y agoGetting a given task done fast does not make you a 10x developer. It's 10x over time, not 10x for a given task. There's the fast way of doing something, copy and paste some similar code, tweak it with your goals in mind and you're golden. You also copied every single bug in the code you replicated, and further polluted the base of the software, which is already a steaming heap of unmaintainable garbage because the impetus is for speed over quality, and tacitly encourages developers to do what you just did. Or you could refactor. You look at what needs to be done and how the current API limits your ability to implement it. Update the API to integrate the required features, and refactor if the gradual build up of changes has rendered it unwieldy. Quickly and cleanly implement the new requirements against the improved API. You just spent a day and a half implementing something that could've been done in two to four hours, ignoring whatever manager was wondering why it was taking you so long - but the next time you need to make a similar change you'll be done with dev in half an hour. And when that happens the code you write will be clean, simple and unlikely to introduce new bugs.
- BurningFrog 7y agoYeah, some people are -1x developers. They create more problems than they solve.
- onion2k 7y agoThose people are called testers.
- TimTheTinker 7y agoThat’s like saying messengers are responsible for causing any bad news they bring. Testers are integral to situational awareness in any software or hardware project team.
- r_c_a_d 7y agoIndeed. I worked on a team which was "given" a couple of contractors to help us "catch up" to where management thought we should be. They were both useless. Between finding something they could do without damaging stuff, fixing what thay had damaged anyway, trying to maintain the morale of the rest of the team and explaining to management why we would be better off without them... I was easily more than 10x more productive than they were. But the team was in a hellish mess.
- james_s_tayler 7y agoI think true -1x devs are also rare like 10x devs. To be -1x everything you "contribute" has to be a net negative. They are out there, but I think they're also rare.
- mywittyname 7y agoI don't think so at all. It's really, really easy to slow down a team. The most common -1x behavior I've encountered is committing code that breaks something else, poorly executed "refactoring", misunderstanding the requirements of a task, and asking too many questions. I've worked with -1x developers and have been one myself. I'm sure lots of other people here have committed these infractions at some point or another. But consistent offenders end up working on low-importance silo projects.
- LouisSayers 7y agoExactly! This is the danger of the '10x programmer'. The person 'gets shit done' fast and furious, but at the expense of the wider system which happens to be the team around them. To the outside (managers etc) they look like they're a 10x programmer, but in reality they leave a trail of destruction and a mess that others have to clean up after them. I have no doubt that 10x programmers do exist, but I'm not sure I've worked directly with one yet.
- james_s_tayler 7y agoI think there are different flavors of 10x. The people that I've worked with that I would consider to be of the 10x variety weren't the kind of 'trail of destruction' type that some people tend to talk about. I worked with a guy, great engineer, great guy, deep domain knowledge and a very solid understanding all the way through the stack. He was a great mentor and only barked when he was absolutely too slammed to help, which was rare. The thing that always amazed me is not only did he consult on all the really difficult stuff and ship it, but frequently you would come back to code you wrote recently and it would look nicer, cleaner and just a little more polished. He'd been in there leaving not a trail of destruction, but a trail of cleaning. Now, I have also heard of the trail of destruction kind too. They're more like -10x though. They just pump it out really fast, but super low quality. IMO that's a bad kind of 10x to be. It's 10x the recklessness. A truly great engineer is one that can help the team and the company avoid writing as much code as possible. As such I don't consider the 'trail of destruction' 10xers to be 10xers, but rather really fast cowboys.