My journey in the tech industry began with a tiny salary at my first programming job where I was barely making rent. When I left, I found a job that tripled my salary.
I moved to Silicon Valley, where my salary increased 50-100% each time I changed jobs, depending on whether I moved up a level.
During my Silicon Valley years, I was promoted once. It was a brutal process, and my salary increased 25%.
Job hopping, especially in tech, is the single best way to improve your salary.
There are a lot of good reasons to stay at a company for a long time. It’s rewarding to build deep, long-lasting relationships with your team and see the impact your work long-term. Just don’t do it as a financial choice.
Learn how to interview and negotiate well.
Both skills are learnable; here's what I found most valuable:
Tech interviews are truly terrible. Most of them don’t test you on anything remotely related to your day-to-day. Preparing for them takes a long time and typically doesn’t make you a better engineer.
Many of my peers refused to learn how to interview because interviews are so stupid. I agree in principle, but this stance is costly.
For self-taught programmers like me, I found 3 resources particularly helpful:
- a 2-part data structures course on Coursera (part 1 and part 2) — helpful for learning fundamentals if you went straight to the practical
- Cracking the Coding Interview — widely considered the bible of tech interview prep
- Leetcode — platform for practicing technical challenges
For a long time, I never negotiated. I took the first offer I got. Good enough, I thought, better than my current salary. I never even knew how much I was leaving on the table.
There are a whole host of tactics you can use (e.g. using market data, negotiating other perks), but the two I needed to hear most when I was younger are:
- Get comfortable doing it. It's not rude. Most recruiters and hiring managers expect you to negotiate.
- Interview at multiple places simultaneously. With Big Tech, all negotiation tactics pale in comparison to having multiple offers in hand and igniting a bidding war. I’ve had initial offers increase 30-60% by the time the dust settled.
Note: #2 applies even if you’re asking your current company to increase your salary. Many tech companies only believe you’re more worth more than your salary if another company tells them.
At this point, you may think all I care about is money. In reality, I always left my job for non-financial reasons. I just left in a way that maximized my salary bump.
Ultimately, this one of the most frustrating aspects of the industry and contributed to me leaving Big Tech. I wish companies rewarded loyal, skilled employees more freely than they do new recruits who interview well, and that I wouldn't have to write posts like this.
But everyone should get the most out of their time working, and I hope these tips help you do just that.