Hacker News new | past | comments | ask | show | jobs | submit login

Experienced engineers who perform better than a recent graduate are usually not interviewing. They have jobs that pay them extremely well.

There's an adverse selection problem with interviewing, in that people who are good tend to disappear from the labor market and when they do appear on the labor market they get snapped up quickly. New grads don't have this adverse selection effect: there is a very good reason why they don't already have a job. This is why companies invest so much in internships: this will often be the only time to snap up a promising young developer before they start building a career at your competitor.

https://www.joelonsoftware.com/2006/09/06/finding-great-deve...




> Experienced engineers who perform better than a recent graduate are usually not interviewing. They have jobs that pay them extremely well.

Doubtful. There is constant churn in tech, as the best way to get a raise is to switch jobs. It's well documented that junior/senior engineers (and beyond) switch jobs, on average, every 2-3 years. Longer tenures are generally favored due to vesting schedules (though I've had several friends ditch Amazon before the [iirc] 4-year cliff).


Eventually you hit a ceiling, and there aren't companies that pay better than your current employer. You're getting raises each time you switch jobs because your experience & job performance qualifies you for jobs at progressively more economically successful businesses, which both can and will pay you better. This can't last forever: eventually you get to the "center" of your industry, the set of companies with more money than everyone else, and you're better off performing better within them than finding another job.

(Or alternatively, you find a fast-growing startup that's growing faster than the wealthiest companies in your industry, hop on the ground floor for stock options, and ride the stock up. Once that happens you don't need money, though.)


This has been my personal experience as well. Stay at the company and get a 6-10% raise or jump ship and get a 50% raise.


Try doing the numbers in your head.

You switch jobs every two years, applying to four companies, getting two offers and taking the one that most closely doubles your salary, then you’re gone from the market again.

Meanwhile the other 1000 guys who applied for that gig you took are still out there looking. They'll apply for 50 jobs this week, 50 next week, and 50 more every week for the next two years. They’ll be your competition again next time you’re on the market.

Now think about how many of “you” it will take doing your four interviews every 2 years before you are anything but noise in the process from a hiring perspective.

It’s the reason guys like you get offered nearly every job you apply for. Because the person in charge of hiring is amazed to have found somebody capable of programming computers at all.


A few years back when I was not so good at being a leveraged employee delivering value, I remember doing ~30 interviews in a single week because I needed to talk to that many people to find a job in a timely manner.


Is the constant churn just a Silicon Valley thing? I get a raise every year of about 8% which keeps me well compensated even after working at the same job for 8 years. It’s possible the company I work for is an outlier? We have lots of engineers who have been working here for 15+ years.

As a result, my interviewing skills have deteriorated significantly. I wouldn’t be surprised if a talented programmer straight out of college could out-interview me even though I have much more experience.


I doubled my salary each time I changed jobs, from internship -> first job out of high school -> first job out of college -> Google. When I got to Google I said, "I guess that's the end of the doubling." Nope, my compensation doubled again while I was an employee there, and then doubled again. Left to do a startup and then went back - at double the compensation.


Just need to double your job about 25 times and then you'll make as much money as Jeff Bezos


The "problem" that I have now is that there are few companies that can offer me double my salary, and none in my area. I'm not willing to relocate so my only hope is that FAANG-type companies start to hire remote developers.

I put problem in quotations because it is very hard to complain about being paid too much :(


You're an exception. In developed countries for sure most companies don't give out raises higher than a few percentage points, and definitely not constantly 8%. For reference, at your current rate in 10 years you're doubling your salary.

In developing countries your story is a bit more common but even there you can accelerate things by switching companies once every few years (somewhere between 3-5). After a while you probably want to stay put to get promotions.


It also depends where in your career are you. When I started as a junior and improved year by year, my salary grew 10% yearly in the same company, for 6 years.


It definitely depends on industry ___location. In the big tech centers, 10% avg increase over time would be, well average (Seattle, Austin, NY, Boston, bay area). I was shocked when I learned my last company was paying new college grads more than 100k. Then it got to be 120, 130 (total comp, salary, bonus, stock). I think the starting salary could have gone up 10% a year. This was a company that wasn't a faang but competed with the faangs for hiring.


Interview skills do degrade. You have to practice before you interview if you haven't been doing it recently. Interviewing is a performance, it's different than normal programming, but the world mostly expects you to handle that difference.

1. You have to solve a problem immediately (whiteboard or now in a webbrowser)

2. It's often frowned upon to research via google search something, although in real life most people do it all the time.

3. you have only an hour to solve a problem, and what if you don't see the 'right and easy way' to do it? In real life things aren't so simple.

4. Don't forget it's a performance! You have to be on your best, sharpest most intelligent and witty behavior, think through things, it can be exhausting.

These are just a few of the ways that interviewing is artificial.


Interviewing is a performance, it's different than normal programming, but the world mostly expects you to handle that difference.

I was looking last year, I flunked my few interviews. Then I paused and spent a few weeks working through CtCI. After that I was easily getting offers. Was I a better programmer than before? No, of course not, I had just learned how to put on a show, and I forgot it all the moment I had an offer I was happy with.


What is CtCI?


I think you need to define "interview". I recently just got a new job and in the interview process I definitely did worse on the algorithms than I would've done right out of college, but everything else went great. "Here's how I've done it for 8 years that has been to the satisfaction of people who write paychecks" goes a long way for many companies.


Yes, that's true. It depends on how the interview is structured. I would not excel in an interview that relies on whiteboard coding, algorithm problems, and CS trivia, but I can talk for hours about the projects that I have worked on and real problems that I have solved.


A steady raise rate of 8% when not being promoted would be phenomenal. After 15 years you'd be triple your original pay, which, for non-promo compensation, is unheard of.


I agree that it is pretty great. I think triple my starting pay is very doable at my company. I know that the people at the top of the engineering org chart are doing quite well for themselves.


Looking at my friend group, it seems like a mixed bag.

We're in our early 40s. About half have been at their current place of employment for close to 10 years now. The other half seem to change jobs every couple of years, although some of those had a long tenure before the recent bought of job swapping (they haven't found a new place they like).


that's only a 6% increase (accounting for us inflation). I am sure you can get more if you change jobs.


Yes, but even in that case, they tend to get picked up quickly. They're not staying in the pool for months and months and months, racking up dozens of interviews.


Yep. Last time I interviewed I did one interview at a random place I didn't care about just to get rid of jitters, one at a mid-tier place I'd actually accept if I didn't get another offer and then two at FANG companies. I easily passed all of them except one of the FANGs and then I was off the market. The time before that I did a single interview. The time before that though I wasn't as experience and probably interviewed at 20-30 places before I got a job.


> I did one interview at a random place I didn't care about just to get rid of jitters,

What a shitty thing to do.


This is such a weird comment to make: these are companies that can quite literally (and quite often) let you go for any reason at all (if you live in an at-will-employment state). I've done this exact thing before, and I've also resigned without 2 weeks notice to chase greener pastures. Business decisions should always be purely transactional and borne out of your own interest. Anything else is self-sabotage.

Companies sure as shit don't care about you, and you caring about them gives them a leg up, not you.


Most of the time when people do this, they're open to accepting an offer if it turned out to be really great. They just know that such an offer from a particular company is really unlikely.

I don't see a big problem with it. While it may 'waste' some time on the company's part, it also sends a signal of, "hey, you could get some of these really high quality engineers if you were willing to [pay more/offer more vacation/offer remote work/etc.]".

Now, if you're unwilling to accept an offer from a particular company even if their terms blow you away, then yeah, that's a dick move.


This is exactly what I've done the last few interview cycles I went through. For me, my screening interview was with a company that had a tone of public problems with treatment of female engineers and fired the ceo soon after. But they had some good engineers too. I interviewed with them and it was a mess, but I did get good experience. I thought I failed, they never told me, then 6 months later tried to get me to come do a full loop.

I think it's a smart strategy to pick 1 or 2 companies you'd never want to work out, including for low pay, and do your practice there. You should tell them if you pass why you don't want to come there, including for the low pay.


How so? If they turned out to be amazing then I would have considered an offer, I just didn't go into it expecting to accept anything.


Exactly. People who are good are always going to be referrals, once they've worked at a few places, their networks are just not going to let them get away. The only times I've found where you are interviewing someone experienced who turns out good is

1) someone coming from a big corporate job where they were undervalued/underutilized

2) someone coming from a different region, different country, where they have no local network


Exactly. People who are good are always going to be referrals

Only inside a community, not coming from outside.


Also, referrals still have to go through interviews, so it's not really unusual to interview someone who is senior and skilled.


Right, and that's why we still source and recruit, to pull in people from outside of our community. It just has a much lower hit rate.


That’s not true. You can have people who are in multiple communities refer in someone from outside.

I’ve had it happen to me and done it for others.


Its the old boys club. You do realize there are tons of programmers in just the US that have no contacts with the coasts? This is what makes the Ivy League so valuable which is very good at discriminating over large groups of people.

My favorite is businesses and colleges that don't take applicants from PO Boxes.


Sounds nice and awfully convenient for those supporting the current interviewing practices. But does this apply to all experienced engineers, 50%, 5% ? US only, Europe, Russia, India?

We need better proof and better data than a 2006 blog post.


It doesn't have to apply to all experienced engineers to make a big difference. Say that only 50% of engineers on the job market are bad, but the bad ones apply for 100 jobs and the good ones apply to 2. Then of the interviews conducted, 98% of them will be with bad engineers.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: