4 ms·
High performance is generally an anti pattern in software. The name of the game, at least historically, is first hiring and Jira task completion second. The on
by austin-cheney 2y ago
High performance is generally an anti pattern in software. The name of the game, at least historically, is first hiring and Jira task completion second.
The only real incentive to become a 10x developer, at least for me, is to use my time for other things. Otherwise, stepping outside the mold just upsets people in the corporate world.
- worstspotgain 2y agoI've experienced this. It'd be nice to hear from the counter example here, the 10x developers in meritocratic nests. Mostly so we know where they are.
- throw4950sh06 2y agoHere I am, hired as a team lead, got to a VP of Eng. in 2 years during which I fixed (initiated and led the projects, didn't code myself) many long standing issues with the company's engineering organization and the product itself. I was a director before this job, though at a smaller company. It's a 200-person startup.
- curtisblaine 2y agoI'm kind of an high performer and it's not so simple. The first thing is that you need to flight under the radar most of the time. It doesn't pay to do 10x all the time (and realistically you can't constantly in all facets of your job), you need to do 1.5x most of the time and then do 10x when it's most needed and most clear to everyone that you just saved the day. The second thing is that I never said no to more money. It's a job, your boss and colleagues are people who work with you. Occasionally they can become friends but not automatically and not most of the time.
- jajko 2y agoCorporate world ain't the place for 10x devs, that's just a non-primary skill maxed. Primary skill is somewhere around understanding politics and grokking how to please the person evaluating / promoting you. If its about rating from others then same applies to them. Rarely is that directly relevant to quality of engineering output itself. This goes often very directly against innate desire of engineers to do some good creative work so we often struggle to get appreciated, but that's how it is. That's why various degree of sociopathy present naturally helps with above and smart sociopaths comfortably inhibit higher levels of management of such places. I don't use that term as an insult just to be clear, rather personality trait that is not binary but very much endless tones of grey. Triple above if IT is just a cost center to given corporation.
- emmanueloga_ 2y ago> High performance is generally an anti pattern in software. Talk about "10X performers" reminds me of the saying "It’s a marathon, not a race." Most people recognize Usain Bolt, but how many people have heard of Eliud Kipchoge? In our field, the "Usains"—the flashy 10X performers—are hailed as heroes. If you are a "Kipchoge", quietly focusing on a sustainable career, you will probably fly under the radar.
- InitialBP 2y agoKipchoge is less like "quietly focusing on a sustainable career" and more like "consistently maintaining the highest quality and pace of development and rarely if ever having an off week".
- rightbyte 2y ago> "It’s a marathon, not a race." Rather "it's a crawl, not a marathon". Also, I think the most value a programmer provide is as a maintainer. I blame feature factories led by agile clergy for the perceived drop in commercial software quality in the last 10-15 years. There is no place for maintainance.
- stickfigure 2y ago> I blame feature factories led by agile clergy This is a weird take. The most basic principle of agile is that you start with a tiny kernel of software that does something useful, and then iterate on it. In effect, all agile software development is maintenance.
- austin-cheney 2y agoYou and I have very different definitions of 10x developers. 10x developers are just people who can achieve vastly superior performance. Rarely is there any announcement, bragging, or bravado that comes with this. On the contrary most 10x developers tend to want to hide their performance up until they are ready to quit. Its not like they are going to get paid 10x more for over achieving. There is nothing flashy to this. Instead they will be reassigned to other people's problems on top of their own work. So, its best to just keep it to themselves and over achieve as necessary to do less work, because they will get paid the same either way.
- hylaride 2y ago> stepping outside the mold just upsets people in the corporate world. This is the crux of the problem for me. How many of us are literally not allowed to work on stuff not on the backlog, which is usually driven by product people. We only deal with the product roadmap and other issues (technical debt, inefficiency, security issues, etc) don’t get resolved unless it somehow impacts the product. If you’re very lucky, you’ll have an actual technical CTO who has the power to say no and allow the developers to remediate issues (one CTO I worked with had to spend enormous political capital to get a single sprint dedicated to upgrading to Java 8 so that the developers could benefit from lambdas - something that for our code base literally cut development time in half due to the way we ingest and process very dynamic ingested data). There must be some law of software engineering that all engineering teams eventually become run like assembly lines where management disallows ground-up thinking. One place I worked finally only implemented a proper security program when a potential customer demanded it, and it was ultimately implemented as a checkmark-based solution to meet the terms of the contract. This meant burning CVE’s more than writing secure code. This was frustrating as management at the time decided microservices were what we needed, but then resulted in a distributed monolith because they weren’t allowed to spend the time on architecture work, tooling to secure communication between services, or even have proper distributed tracing.
- VHRanger 2y ago> There must be some law of software engineering that all engineering teams eventually become run like assembly lines where management disallows ground-up thinking. Its a law of incentives. At some point protecting the existing processes is more important than growing, which implies disruption. At that point all the things mentioned above start
- Muromec 2y ago>Otherwise, stepping outside the mold just upsets people in the corporate world. That's not exactly true. What upsets people in the corporate world is telling others that their creative ideas enshrined as a Corporate Policy are wrong and asking to do it the other way. What doesn't upset people in the corporate world is finding a way to further said Policy while at the same time getting yourself a license to some creativity in the ways to implement it.
- austin-cheney 2y agoAs a JavaScript developer you live in a world where people are afraid to write software... any software, at all. When I say afraid I mean that word in the very visceral emotional way. It is a culture of extreme Invented Here Syndrome where you add dependencies and if there is not a dependency that already solves a given problem the problem is simply not worth solving. So, you end up with these colossal frameworks, yes that's plural. The developers like to pat themselves on the back for their supreme challenge of conquering the beast to... put text on screen. It's stupid, but it a way it's self-validating because these frameworks are just massive. They provide an API more than 10x larger the standards they replace so that developers don't have to form original opinions or build things. When I say stepping outside the mold I mean not doing any of that stupid shit. As a result of avoiding the stupid I can release products that are possibly 1000x faster to execute, more accessible, dramatically faster to maintain, and so on. One developer that actually knows what they are doing can easily replace an entire development team. If that one developer that knows what they are doing always knows how to implement test automation they can reduce expenses associated by regression around 95-98%. But when you do any of that you have immediately invalidated the existence and imposter nonsense of the other developers like popping a balloon. The natural response is hostility. Fortunately I was able to switch careers and go do something else.