On the topic of interview prep - is it weird that I’ve never been able to bring myself to do it? I can’t be the only one, right? As best as I can tell it’s never really hurt me (okay, there was a Google interview I failed where grinding a few leetcodes might have helped…).
There are levels to this. Most people will at least prepare a resume and visit the company's website. That's interview prep.
You have to match the level of prep to the jobs you're pursuing. You don't need to grind LeetCode to have a SWE career. Most people never do that.
However if you're trying to get the more competitive jobs then some prep is necessary, as you already discovered with your Google interview.
The reason so many people do interview prep is that the ROI can be extremely high. Spending 100 hours grinding LeetCode sounds like hell to most people. Spending 100 hours doing practice problems to get a $100K raise for a job where you stay for 3 years suddenly becomes a $3000/hour career booster. That high paying job opens doors for more high paying jobs in the future, so the real number is even higher.
That's why people do it. You don't have to do it and it's not guaranteed to get you the high paying job by itself, but for people in the position to take advantage of it, the ROI is huge.
You're not, and thank goodness for that. I hired about 10 engineers during the past six months, and as far as I could tell, at least 9 out of 10 didn't use AI in the interview process, as in, they demonstrated in day to day work, the same level of proficiency they demonstrated in the interview. If that's because they continue to use AI in day to day work, I have no problem with it as long as they don't exfiltrate IP and data in the process.
If you are trying to advance your career, I feel prepping for interviews is probably the number one most important thing you can do, unless you are freakishly gifted at acing interviews with no prep.
The number one most important thing you can do is to learn how to actually do the job. Your ability to pass interviews will follow from that. If the place you're applying to has an interview process that does not align well with the job, then you might not want to apply there -- they will be hiring a lot of people who are not a best fit for the role, and that's the environment you might end up working in.
Agree becoming good at your job is number one, but interviewing is an independent skill worth developing. The places I've worked that required interview prep in one form or another, were all around better and all around had higher quality employees. That's not an absolute rule (nothing is) of course. But prepping for interviews gives you more "yes" opportunities to evaluate companies, and once you get competing offers you see something you normally don't. You can get paid substantially more for the same job, without ever negotiating. Merely having other opportunities, your prospective employers will magically offer you more money, a bigger signing bonus, more stock, for the same exact job, and you don't even have to ask for it. You merely tell them all what they are all offering. But of course the real value is being comfortable and confident enough to _take_ multiple interviews, and ask hard questions, and using that to find better companies.
(This of course works for all kinds of things, not just interviewing: Quotes for house work, car purchase / sell offers, etc. Simply get more than one, and poof you get better deals).
I agree with you but only for junior engineers. You have to distinguish yourself. A senior should be expected to show competency in something already on their resume, and be able to learn whatever is thrown at them. The bigger priority with interviewing a senior is making sure they aren't bullshitting.
I usually have to grind some leetcode problems because interviewers love to ask the in-place linear time array questions that absolutely don't resemble any work I do on a regular basis.
That's exactly what they want: to filter out anyone who lacks time to prep. Such as those older candidates who have families and things to do outside of work.
I'm the same, and it makes me paranoid. I feel like I'm investing purely in one company instead of any defensive diversification.
But my job is very demanding and I have 4 hours after work to spend with my wife and kids before I have to start all over again. I'm just not in a season where interview prep (which may as well be a university 16-week course) is reasonable.
It's been typical for me to get hiring managers/interviewers who don't feel it's a good question format for the job (this might be a .NET/C# cultural thing though).
Since the day-to-day job rarely requires it, and I've gotten jobs without it, there's little incentive to change unless I want to.
Or they might simply have some ADHD/autistic traits which make these things require additional effort.
I have a list of past projects I'm comfortable talking about. I can go to great lengths talking about any of them in detail if prompted. I'm also comfortable talking about technical topics including those I'm not intimately familiar with - that's part of my job after all. But most importantly, I'm confident enough that I can say "I don't know what that is, can you elaborate?" and "I'd need to look into that and get back to you".
I've you're going to leetcode me, I'm going to underperform. I've never had to do leetcode for a job. I also don't typically apply to the kind of companies that think leetcode is a good filter. Why should I waste their time and mine to apply to a job at a company I'm probably going to hate working for?
Okay, you don't like leetcode, that's fine. It doesn't mean you shouldn't prepare for an interview. In fact I'd say preparing for an interview might include researching their interview process and avoiding them if they use leetcode type questions which you don't like. It might also include learning about their tech stack, brushing up on relevant past experience, or learning a bit about the industry they operate in (for example).