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).
(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.)
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.
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 put problem in quotations because it is very hard to complain about being paid too much :(
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.
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.
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.
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).
What a shitty thing to do.
Companies sure as shit don't care about you, and you caring about them gives them a leg up, not you.
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.
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.
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
Only inside a community, not coming from outside.
I’ve had it happen to me and done it for others.
My favorite is businesses and colleges that don't take applicants from PO Boxes.
We need better proof and better data than a 2006 blog post.
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...