3 ms·
High wages do not manufacture talent. Spending more money won't allow every soccer team in the world to have a Lionel Messi on squad. There are a finite supply
by jandrewrogers 5y ago
High wages do not manufacture talent. Spending more money won't allow every soccer team in the world to have a Lionel Messi on squad. There are a finite supply of most skill sets, which can be well below the total demand for those skill sets.
Companies don't want to hire generic software engineers, there is a huge demand for software engineering skill sets that are extremely difficult to learn, and which can only be acquired after years of diligent effort and experience. This is where the gap is and no amount of paying more will create a larger supply. Some software engineering expertise is already paying in excess of $1,000,000, and there are still severe shortages. That's not a "wage shortage" unless you expect me to believe that software engineers are choosing to grind away on ERP software for $150k instead.
The highest paying software engineering skill sets are the most difficult ones to fill. Software engineering skill sets are not fungible. The highest paid ones are often those with the least elastic supply.
- learc83 5y agoWhat are these software engineering skillsets that are paying over $1,000,000? There are people who are technically ICs making that, but at that salary its mostly down to politics not technical skill, and they are ICs in name only. >That's not a "wage shortage" unless you expect me to believe that software engineers are choosing to grind away on ERP software for $150k instead. There are a ton of software engineers who are grinding away on ERP software are capable of handling the vast majority of work at most SV companies. Many of them can't pass leetcode style interviews despite being capable of doing the actual work. Some of them could but don't think they could. But that leaves plenty of engineers who just don't think the prep time is worth it. Those are the people who you could convince by increasing wages.z I've worked with many smart software engineers in specialties outside of backend web development/distributed systems who are capable of retraining in a matter of months and would retrain if the pay differential were high enough. Of course the other option is for companies to come up with more realistic hiring tests, lower the bar and fire quickly, or train employees and set a realistic retention budget.
- jandrewrogers 5y agoA skillset I am familiar with that can pay extremely well is the design of complex systems software from first principles. Most software companies don't have this skillset on their payroll, and honestly most companies don't need it. Companies that do need it really need it though, and they can often directly attribute many millions of dollars to the work, so the exceptional compensation seems reasonable, demand greatly outstripping supply notwithstanding. These days, people with this skillset are commonly employed to design data infrastructure software for cases where open source software has material deficiencies in terms of scalability, performance, or efficiency. Optimization of complex AI/ML processes is another emerging area where I see friends being hired. It typically isn't a leetcode style hiring process. A software engineer cannot be retrained to do this role in months, the domain is too deep. It requires multiple years of diligent self-study to achieve functional competency, plus many more years for mastery, and I've never seen an exception to this. Much of the essential theory is diverse and never covered in undergrad e.g. greedy routing theory, universal sequence prediction problems, agreement-free consistency, etc. Efficient reduction to practice on real hardware is esoteric, non-obvious, and poorly documented. You need similar levels of low-level knowledge about how silicon behaves as software optimization specialists. In most cases, all existing software is demonstrably unfit for purpose which often implies a likely requirement for inventing a novel and/or unorthodox software design that is superior to what has been done before (the alternative is that all popular implementations that might be fit for purpose are just really poor, in which case you do a blank-sheet implementation of a conventional design). Consequently, the new talent pipeline is almost entirely sourced from people who devote years of their life to mastery solely because they love the problem space. We simply have no practical way to produce this skillset at a rate sufficient to meet demand. In principle you could build a full-time educational program that focused on training people up effectively but it would still require years to produce more talent like this.
- learc83 5y agoThat speciality actually sounds extremely interesting. Is this the kind of thing that companies bring in a consultant for, or are these full time positions? I’d be very interested to hear more. Do you have a blog, or can you point me to any relevantly communities?