My (probably cynical) take is that most SV devs are also 1x. You make the big bucks not just by being a 10x dev, but by some combination of going to the right schools, making the right connections, learning how to negotiate and when to look for new jobs, learning to jump through the big tech interview hoops etc. So yeah, you have to put in above average effort, but maybe not directly into improving your craft.
Not at all cynical and why not? That's basically my impression and I've been hiring people here for 30+ years.
A team needs a mix of people with differing skills and interests. Even notice how "all star" games are so boring? no sabermetics used in picking those people. And in any company, 90+% of the effort is routine stuff, especially once you've launched.
This applies to non-programmers too.
I worked at a FAANG and I'd agree with that: the people there were good. But there was a huge caveat: most of them were definitely doing what would be "1x work" in a non-FAANG jobs. FAANG is very good at hiring but not too good at using the people to their full potential.
How many Software Engineers do you who drive Ferraris? Probably not many, but for Surgeons, Sales People (at good companies) it's not a big deal.
No other industry would anyone tolerate being told to study 4-8 hours a day for months for a chance to pass an interview.
I realize I'm ranting but I've a Software Engineer with over 20 years experience and I've kind of lost interest being in an industry where the only thing that matters for an interview is how good I can cram leetcode, rather than what I've designed and built. Granted it would be hard for me to easily find something that pays more so I'm not quitting my day job (and now extra night job).
I was supposed to quickly recreate the quick-select algorithm from memory in 10 min. Stuff like this I learned a long time ago but have no need to memorize how to code it by hand quickly.
Brushing up for the weekend is not enough if you haven't touched the stuff in 20 years. When I've spoken with recruiters they recommend studying many hours per day ever day for at least 2 months.
No doctor, lawyer, real estate agent (and many other much higher paying professions) would ever tolerate this type of interview.
Personally the interview prep is so boarding I can't wait for the day to be done with this field (not actually software development) just having to do it for work.
Hah. The grass is always greener on the other side I guess.
- The doctor has to pass exams to get their license to practice. And additional exams to be able to practice in a specialty. It often takes YEARS before a doctor passes the requisite exams to be able to practice in their chosen specialty.
- The lawyer situation is somewhat worse. It is significantly challenging to get a job after you get a law degree (which usually is rather expensive and at any rate an additional expense after your first degree), presuming you pass the bar exam. Let's say you did better than average, you'll probably end up becoming a lawyer in a small firm with <100k salary. The big money is in New York city firms (the equivalent of "FAANG" in the legal sector) which is super competitive, and they plainly won't consider any job application from "qualified lawyers" who worked in lesser firms for a couple years.
The FAANG situation is simply a result of lack of gatekeeping in the software industry (you don't even need a CS degree) and general inclusiveness compared with the other professional industries. You don't need have a piece of paper proving you can code -- and that means sometimes candidates really literally can't code.
If the software industry operated like the medical profession, you'd have to pass a leetcode test before you are allowed to use a C++ compiler without supervision. And you'll have to take tests every 5 years to prove that you still know how to write quicksort.
If the software industry operated like the legal profession, FAANG companies would refuse to consider applications unless you had a perfect GPA from the top 20 CS programs or from another FAANG company. And then you'd have the privilege to work 60 hour weeks with them.
If the software industry operated like real estate, you'd get a low base salary and most of your money would be made on how many users your features contributed to revenue for your employer.
Nobody says you _need_ to work for FAANG. Most people don't. Given the competitive situation, obviously some people think the increased chance of getting an offer is worth the time invested in grinding leetcode problems. If you think the grass is really greener on the other side, try studying a law degree and getting a job in a New York city firm and then tell me it's really a better experience.
Disclaimer: I have a law degree (not in USA) and work for a FAANG. When I have choice over interview questions I don't ask leetcode style questions.
But to become a surgeon, he probably had to put in ridiculous hours for years as a med student and then resident.
Going through that gauntlet is what earned him the reasonable hours and good pay, by reducing his competition.
Similarly the people doing leetcode are doing it to stand above the competition and make big bucks in silicon valley. The people working reasonable hours in Spain are making much less extravagant salaries.
Basically the general rule is if you desire above average money, you have to put in above average effort at some point in your career.
If you want to put in average effort, you have to be happy with average salary. Which is fine for many people.
But you won't get FAANG/surgeon pay if you never put in above average effort.