In 2021, the last full year I worked at Meta, I made more than $800,000 dollars. In this post, I'll break down my compensation and how it changed each year. Here's the proof from one of my last paystubs in 2021:
I joined Facebook, now known as Meta, in 2017 with a total comp (TC) of $400K, and over the next 4.5 years, my compensation more than doubled.
Here’s my total yearly compensation across 4.5 years of working at Meta:
- 2017: $390,000
- 2018: $370,000
- 2019: $504,000
- 2020: $703,000
- 2021: $823,000 🙀
But my journey was not a straight shot to counting $100 bills. In fact, for the first 6 months after I joined Facebook, I was crippled with anxiety. I felt imposter syndrome as a senior engineer, I struggled to adapt to the company's culture and tooling, and I dealt with a re-org within my first few months. This is my story.
Joining Facebook And Understanding Performance Review
Here was my initial offer when I joined Facebook in August 2017:
- Base salary: $170,000
- Signing bonus: $45,000
- RSUs: $600K / 4 years
- Target annual bonus: 15%
This offer translated to $390K TC in the first year. Not bad! Because I had 5 other competing offers, I had the leverage to negotiate a strong offer, especially in terms of equity. However, $390K is a far cry from the $823K that I ended up receiving in 2021. How did I adjust my salary, bonus, and equity over the next 4 years?
Meta is unique in their philosophy to reward strong performance and provide regular, formulaic increases in pay. My compensation increases would not have been possible without their generous equity refresh and bonus structures.
Every 6 months, every Meta employee receives a rating about how they’re doing relative to expectations.
- If you meet all (MA) expectations, you get the target bonus. Given my base salary, that translated to $25K each year for me.
- If you exceed expectations, that bonus could be 25% higher or even double (a $50K annual bonus!). I received the "Greatly Exceeds Expectations" (GE) rating twice during my tenure, which led to a 2x bonus multiplier.
The rating dictates your base salary increase and equity refresh. Meta made new RSU grants each year to each employee. After a few years, these stack up to a meaningful amount.
The Path To High Performance
As I mentioned, the first few months on the job in 2017 were difficult for me. Frankly, I didn’t have the tools to become a strong software engineer on my own. I put in lots of extra time to learn the codebase, but it took months before I started actively learning from other people. I struggled most in the first half, and I barely squeaked by with an MA rating.
This led to a small compensation bump after 4 months of employment: my salary went up almost 2%, I got an $8K bonus, and I received 253 RSUs, translating to $11K in additional compensation for each of the next 4 years.
The first half of 2018 was still a struggle. The product I worked on (Portal) got delayed by several months, employee morale was low due to the Cambridge Analytica data scandal, and Facebook stock was at a low point. The only thing I looked forward to each morning was the fresh-squeezed orange juice in the Facebook cafes 🍊
After a few months, I was finally able to launch something meaningful which resulted in my rating of “Exceeds Expectations” in 2018 H1. This summer perf cycles netted me a $14.5K bonus payout (no salary or equity change).
As I headed into year 2, the extra hours I was putting in finally started paying off: I felt more confident in the codebase and organization. I not only had the technical knowledge, but I also had enough context to lead projects, which is a critical part of being a Senior or Staff engineer.
This led to my first rating of “Greatly Exceeds Expectations”. The video-calling device I worked on finally launched, and I was a big part of delivering the core functionality using WebRTC technologies.
This led to a significant equity refresh of 1160 RSUs in 2018 H2 ($160K of additional stock over 4 years), and I also received my largest bonus, $26K for the half. Interestingly, Facebook stock was getting pummeled at this point with the fallout of Cambridge Analytica, so my TC actually went down 5%.
The next half also went well and I ended up with a $19K bonus payout and an “Exceeds Expectations” rating. Along with the previous stock grant, this brought my total compensation for 2019 to almost $500K, recovering from the drop. At this point, I’m starting to think about promotion. I’ve had 3 halves of strong performance at the senior level and I’m working on projects with sufficient scope.
The next half, H2 2019 was my most productive period at Facebook. I built the initial version of an internal tool which gained adoption throughout the org and led to huge time savings for engineers. (I did a deep dive into the tool in this Taro talk.)
Not only did this result in my second "Greatly Exceeds Expectations" rating, but I also received Additional Equity (AE) for the first time in my career. AE is a retention tool used by senior leaders at Meta to reward strong performance. This led to my largest RSU grant of 1836 Facebook shares, valued at $400K.
This recognition felt fantastic, and on top of that, my base salary crossed $200K for the first time! My $800K TC by 2021 was only possible due to this standout half.
Unfortunately, even after my best half ever, I still didn’t get promoted. My manager said I was operating as a Staff Engineer already, but they wanted to see “sustained” performance at the next level.
As we all know, though, 2020 was the year of COVID. So even though I was about to get promoted, Facebook canceled all performance reviews and promotions in 2020. This likely resulted in tens of thousands of dollars in lost compensation, but I was just grateful to have a stable job while the world was in turmoil. Facebook truly take care of its employees:
- Zuck announced to the whole company that not only would everyone still get a bonus, but we'd also receive a 25% premium 💰
- On top of that, he gave every employee $2,000 to handle any needs in the transition to work from home.
When things came back to normal a bit at the end of 2020, I finally landed the promotion to Staff. This led to the largest increase in my base salary, up 14% to $231K, and another sizable equity refresh of 937 shares valued at $250K. At this point, I had been at the company for 3 years, so each equity grant I accumulated kept “stacking up”. The vast majority of my compensation at this point came from equity.
For my last year at Facebook, I transitioned into a manager role and I switched teams to work on a Dev Infra team. The combination of the new role and the learning curve of being a manager resulted in a rating of "Meets All Expectations", the same rating I got in my first half at Meta.
As 2021 wrapped up, I started to think about the next step in my career, which resulted in me leaving Meta in January 2022 to start Taro. (And my initial equity grant had also run out at this point 🤐)
When I reflect on my promotion from Senior to Staff Engineer (E5 to E6), the main pillars of my packet were:
- The product I worked on was finally delivered to users in late 2018, and sold well during COVID.
- I built an internal tool that gained adoption throughout the org, saving thousands of hours of developer time.
- I led the re-architecture of some core client infrastructure involving dozens of developers.
Takeaways: How To Become A High Earner
The combination of strong sustained performance and a run-up in the Meta stock price led to a massive payoff in 2021: my total compensation exceeded $800K. At that magnitude, it’s hard to feel like this money is “deserved”: I have to acknowledge the result of my luck and the environment.
However, “get lucky” is not very actionable. I strongly believe that you can put yourself in positions that create luck and opportunity. I did fairly well, but I’m not some genius-level programmer. Here are my recommendations:
You need continuity to get to very senior levels
I stayed within the same org at Meta for 3 years to land the promotion to Staff Engineer. My rule of thumb for promotion is that you should commit to the team (or at least the company) for at least 2 years. This lets you deeply understand organizational priorities, build relationships, and tackle problems of sufficient scope.
Once you find a high-growth company with smart people, make the commitment to stick around for a few years. Interestingly, despite being 20+ years old, most of FAANG still fits this criteria – you don't need to go to a startup for this!
The other benefit of this approach is that you can avoid torturing yourself with Leetcode continuously. Too many engineers waste are constantly spending a few hours every week doing interview prep "in case I need to start interviewing" 😨
My promise to you: you're better off minimizing the amount of time you spend on data structure and algorithm (DSA) problems. Instead, spend more time on the actual work of software engineering at your company.
You can improve dramatically if you focus on improving
I struggled a lot initially at Meta. I felt overwhelmed with the size of the codebase, it was my first time working with hardware, and I dealt with a re-org within 3 months. I focused on two things that helped me:
- I put in the time to get better each half. For the first 2 years on the job, I consistently put in 50+ hours/week. In addition, I set up recurring "performance discussions" with my managers and other tech leads to get feedback on what I could be doing better.
- I developed an awareness of Meta's evaluation system. I talked to managers and tenured employees to get clarity on how performance reviews worked. How could I find work with an undeniable impact on my team and product? You need to understand the company incentive structure to align your work appropriately.
You need to understand how equity works
Owning equity (a piece of the company) is the secret to wealth creation in Silicon Valley. 2021 was my blockbuster $800K year at Meta, and almost $600K of my compensation came from company stock. That means 71% of my comp was equity! At the best companies, both startups and Big Tech, a huge portion of your pay is stock.
- Think about the extreme scenario: if you joined Airbnb, Uber, or Pinterest in the early 2010s, it’s effectively impossible to not be a multi-millionaire now. These companies have gone up 100x in value, so many engineers have vested stock options worth 10s of millions of dollars 💰
- Too many engineers focus on their salary, but you absolutely should understand the terminology and meaning behind equity, things like vesting schedules, options, RSUs, strike price, and trading windows. These are all important to ensure you get fairly compensated while growing your career.
To keep this to a reasonable length, I cut a lot of additional details and reflections. Join me for a live session on October 3 where I'll share more details and take questions.
I hope this transparency is helpful. There are a lot of "salary reveals" for different tech jobs, but not as many about how your compensation can increase by staying within a company and succeeding.
Several periods of my engineering experience were grueling, but I’m glad I persisted. I left Meta in 2022 as a much better engineer compared to the person who joined the company in 2017.