Hi everyone,
I’m excited to share that I’ll be joining Meta as an E5 Software Engineer in the Enterprise Engineering org, specifically working on internal HR and recruitment products. I bring over a decade of experience, primarily in Java and full-stack development, and I’ve consistently been rated outstanding throughout my career.
That said, this will be my first time working in a high-scale, big-tech environment. While I’m confident in my fundamentals and problem-solving abilities, I know Meta's engineering culture places strong emphasis on ownership, velocity, impact, and collaboration—values I deeply admire and want to embody effectively from day one.
I’d love to learn from those who’ve walked this path:
I have ~30 days before I join, and I want to use this time wisely—not just to brush up on tech, but to prepare mentally for the transition and set myself up to contribute meaningfully.
Appreciate any tips, resources, or words of wisdom. Thanks in advance to this generous community!
Congrats on getting into Meta! I think the best resource to help here is actually the L4 -> L5 course: Grow From Mid-Level To Senior Engineer: L4 To L5
That course specifically breaks down FAANG/Meta senior expectations, which are generally far higher than outside companies (Meta E5 = Staff at most other companies).
If you have time, I highly recommend the full learning path: Nail Your Promotion: Mid-Level To Senior (L4 -> L5)
What does an E5 engineer at Meta typically own or drive?
E5s at Meta are generally tech leads, especially now with the higher bar. There is nuance here as E5 on infra teams in particular can be relatively isolated technical specialists, but given the org you're going to, you will probably be leading other engineers, particularly E4s and E3s.
Using very rough numbers, E5 scope is 3-9 month projects across 4-7 engineers as I talk about in my L4 -> L5 course. Technical complexity of the project will make those numbers go up and down.
Any recommendations on technical prep, documentation practices, or internal tools I should be familiar with?
You should be following pretty much everything from the code quality course: Level Up Your Code Quality As A Software Engineer
When it came to engineers who couldn't make it at Meta, not being able to write clean code was the most common culprit. Most engineers aren't used to the rigor at Big Tech around quality, and they get culture shocked (back when I was at PayPal, code review was effectively a formality and people just merged in their own PRs 🤣). Big Tech is obviously going to be far more careful in code review and in general with execution as the stakes are so high there.
When it comes to internal tools, it's hard to prepare really as, well, they're internal. You obviously want to get good with Mercurial and Phabricator ASAP. But since you're in HR/recruitment, I'm unsure if all the experimentation infra is worth learning (Deltoid, Scuba, etc).
How did you handle the shift from a smaller, perhaps less intense setup to a fast-paced environment like Meta?
Write great code, overcommunicate, get people to like you so they'll help you, and manage your time well: Maximize Your Productivity As A Software Engineer
Here's another good thread to go through: "What would you do in the first 30 days after joining a FAANG like company?"
Understanding the culture will be helpful too: "How does Meta's culture differ from that of other Big Tech companies?"
I keep hearing about bottom up culture and PSC fear, how to handle these?
Bottom up culture is great, and you are expected to leverage it as an E5. You should have an opinion on the product and work closely with your product manager and designer to sharpen your product intuition.
When it comes to PSC and all the perils of Big Tech performance review (stack rank, PIP), I recommend this: "How does Stack Ranking work (at FAANG) and how can I be proactive at a base level?"