It seems like there have been quite a few posts asking about the Enterprise Engineer Role at Facebook, so I decided to write a post to help those who are currently looking or have been contacted by FB enterprise engineering recruiters. When I first received an email from an Fb recruiter, they never told me the difference between enterprise and SWE, and said that there was no difference except for the target audience of the product that was being built, so I was shocked when I received low RSU numbers. I’d like to clear up any misconceptions. I’ve seen a lot of Enterprise Engineer == IT, which is false. There are Enterprise Help Desk Assistants, which is IT. Enterprise Engineering is a full stack role, using the same tech stack as SWEs at Facebook React JS frontend / PHP Hack backend. All of the tools available to SWE are available to Enterprise Engineers, with the caveat that typically Enterprise Engineering Roles don’t involve AI/ML. There are some projects that are built using C++ as well. Enterprise Engineers build internal and external facing applications targeted towards Enterprise (which means companies, either for Facebook specifically, or for Facebook’s partners). Some examples are certain features on Workplace for partners, tools that communicate with Oracle software, UI/backend for Oculus sales and inventory, data center tools, financial managing tools, helpdesk/onboarding tools, etc. So what’s the difference? Scale - Typically the products that Enterprise Engineer’s build tools meant for < 1K users. Typically everything fits within a MySQL db. That said, there are definitely interesting problems to solve within Enterprise Engineering. Pay - the RSU band is typically 50-80% of a SWE’s band. For top performers on interviews / those with competing offers, an E3 TC (1-2 YOE) top of the band offer would look something like 130K Base, 100K RSU / 4 years, 50K signon. An E4 TC (3-4 YOE) top of the band offer would look something like 160K Base, 200K RSUs, 50K sign on, in the Bay Area. Interview: There is 1 fewer coding round than SWEs. Interview question difficulty is the same, but the packet review (hiring committee) bar is slightly lower (80-90%). Prestige: Definitely less prestige than SWEs. You can get a feel for this with your interactions with HR or business users, who are less kind to you. Talent: Most talented individuals transfer out of Enterprise Engineering into a SWE Role or join Google/LinkedIn/Amazon within a year or two, so there’s little chance that you will find a super talented mentor (though some do exist). Note that to transfer into SWE, you need to do 2 algorithm and 1 design interview, and you must be at least E4 or above, no internal transfers for E3. WLB: Many say that WLB is better in Enterprise Engineering than in SWE, but it is pretty similar and varies depending on team. Numbers Focused: In Enterprise Engineering, there is a large focus on lines of code and diffs count (number of pushes). This isn’t the case within SWE orgs -- ideas, XFN, execution matter more. This leads to a semi-toxic culture in Enterprise Engineering, where people break a 10 lines change (for example, adding better typing in different files that are 1 liners) to 10 separate diffs. Managers: in Enterprise Engineering, your managers typically are M0s (just recently promoted to become managers), and aren’t ready to be a manager. They most likely just got promoted because they’ve stayed within Enterprise Engineering. In SWE, managers are more mature, know how to handle interactions, and know how to help you grow your career. No AI/ML - there is no AI/ML in Enterprise Engineering. If you’re interested in these, you would need to transfer to SWE, as well as do one ML focused design interview. Who should join: - If you are happy with the TC, all the power to you. - If you are not in the Bay Area / Seattle / NYC, (such as Singapore or Austin, Texas), there might not be SWE roles at FB in those offices - If you are comfortable with re-interviewing internally for SWE after a year. Note that when you internally transfer, your compensation does not change, only future refreshers will. Also to note, the interviews aren’t trivial even though you work at the company -- I’ve actually heard equal people passing and failing (~50% pass). - If you want a FAANGM job on your resume (which will definitely lead to many new opportunities at other top tech companies). Many people join Google / Amazon / Stripe / Square / Tier 1 tech companies within 1-2 years, with good comp (masters + 2 YOE = 250K+ TC) - If you have < 5 YOE, you get valuable experience at FB, and you can also interact with SWEs / other areas of the company if you want to, even as an EE. - All other perks are the same as SWEs (pay, benefits, swag, offsites, etc). You should consider the Enterprise Engineering Role as a stepping stone to a better career. What might happen to the Enterprise Engineering Role Actually, within Facebook, the tech stack and work that some Enterprise Engineers do is so similar to SWEs that entire Enterprise Engineering orgs have been converted to SWE. AFAIK, Enterprise Engineers in Singapore == Software Engineers, there is no distinction there. I can honestly see all Enterprise Engineers being converted to SWE within 10 years, since the requirements / technical contributions for the both jobs are so similar. The Enterprise Organization is already taking strides to become more similar to SWE orgs. For what it’s worth, there are definitely some talented Enterprise Engineers that I’ve worked with, though most end up leaving the company within 2 years. Feel free to dm me if you have any questions, and good luck on the job search! :) #engineering #software #swe #enterpriseengineer #facebook #google #amazon
Thanks for this brilliant post! Posts like this is what Blind is all about. Too bad I have to filter out 80% garbage to stumble on these gems
I think you are overly generous with your estimate.
“In Enterprise Engineering, there is a large focus on lines of code and diffs count (number of pushes). This isn’t the case within SWE orgs -- ideas, XFN, execution matter more. This leads to a semi-toxic culture in Enterprise Engineering, where people break a 10 lines change (for example, adding better typing in different files that are 1 liners) to 10 separate diffs.” What the hell? Seriously?
Jesus Christ. "Semi-toxic"? Full toxic imo
Nice op
I can totally vouch for this. I have my fiance in the same role at FB.
So you’re IT. Okay.
Thanks for taking out time to explain this. I am an EE and could not agree less.
You mean more?
are you happy as an EE ? am debating whether to take the EE offer....
Very good summary! This aligns with what I’ve seen from EE and the amount of bait and switch that goes on (advertise it as a ML/AI type role but actually end up as a data analyst building pipelines lol)
Good one! Thanks OP
Wow - I have nothing to do with enterprise engineering but still enjoyed your post. Kudos! You sir/madam are very kind. Power to you!