3 ms·
I am mostly talking about what you just pointed out. The fact that soft skills are required to move up is evidence that technical skills are required less the m
by proc0 2y ago
I am mostly talking about what you just pointed out. The fact that soft skills are required to move up is evidence that technical skills are required less the more responsibility you get. There is a minimum bar requirement at entry level, and maybe one or two more levels before it gets taken for granted and rarely becomes an expectation for the higher positions that pay more. The more experienced engineers spend less time on code, and this is justified because they want people to be a "force multiplier" by becoming managers, essentially.
Engineers get a tiny slice of the app and the majority of the time is spent on tasks that could be done by anybody else who didn't spend 10+ years studying and practicing computer science. Promotions are about managing a bunch of engineers that each get a tiny slice of the engineering. I would love to see promotions based on learning more technical skills and for this "track" to go all the way up the chain of responsibilities until you are responsible for coding hundreds of thousands of lines of code at a time. Ironically if I tried to build a company like that I would end up doing exactly what I am complaining about.
- intelVISA 2y agoUnless you're RMS level weird orgs use "soft skills" as cover in the same vein as "bad culture fit" for likeability, politik and empire building. That said, imo the "technical skills are required less the more responsibility you get" mindset is the root of much dysfunction in tech companies... it's how we ended up suffering the car assembly line cargo cult in an industry where ~10 engineers can make Whatsapp ($$$$) when not laden with ceremony and theater.
- zdragnar 2y ago> The more experienced engineers spend less time on code, and this is justified because they want people to be a "force multiplier" by becoming managers, essentially. I think this is a fundamental misunderstanding of what the higher level roles are (or ought to be). Experienced engineers spend less time on code because the code doesn't live in a vacuum. Changes require planning. Requests for features usually come from people who either don't understand what they're asking for, or don't realize there's a different and better way to achieve the same outcome with less effort. Junior developers need mentorship and review to grow. If those things don't appeal, that's fine. They still need doing, and the people doing them need a good amount of technical skill- usually the more the better, though the phrase architecture astronaut comes to mind. There are some organizations that revolve around pure technical competency, but none of the ones I can think of are businesses- mostly, it's open source projects run by their BDFL founders like Linux, that sort of thing.
- proc0 2y agoI agree to a certain extent, mainly that it is a matter of appeal and it's about finding the right match, etc. That said, I can't help but think there is value being lost by thinking engineers need to scale their productivity by managing more people rather than by managing more software. Software is inherently about automation and abstraction, and the possibilities are limitless as we are witnessing with recent AI breakthroughs. If more engineers had the opportunity to optimize their expertise throughout their career they could produce advanced solutions adding orders of magnitude more value. It has to do with the nature of software and how you can build an intricate system with whatever properties you want, but instead companies like to use popular frameworks and slice their product into tiny fragments that they can divide among their army of low level engineers, so of course they need a proportional amount of managers as well.