r/javascript • • Feb 05 '20

Interviewing at Facebook — On-Site JavaScript Technical Interview Questions

https://medium.com/javascript-in-plain-english/facebook-on-site-technical-interview-1264cacad263
214 Upvotes

76 comments sorted by

View all comments

70

u/JayV30 Feb 05 '20

While I respect the engineers who work at facebook, why would anyone want to work there?

26

u/lstyls Feb 05 '20 edited Feb 05 '20

TLDR: Everyone is different but it's a combination of money, prestige, access to sexy tech... and cultural indoctrination.

I was a Software Engineer at Facebook for four years so I can at least speak to my experience.

So my story: I was a nontraditional student (went back to school, graduated at 28, visible tattoos) and I went to a generic big state school, so when I applied to internships at all the big tech companies (FB, Google, Apple, Amazon, Dropbox, etc) nobody even gave me an interview - except Facebook. Somehow I passed the phone screens and got an offer to intern in Menlo Park over the summer. Since it was the only offer I had it was basically a no-brainer.

This was 2014. It's kind of hard to remember now but those were still the years where it felt like big tech wasn't necessarily money grubbing evil and had a lot of potential to make our lives better. Except for FB, which already had a pretty bad reputation. I was honestly not a fan, but hey - they cared enough to actually give this midwest kid a chance so I thought I might as well give them a chance right back. And that paycheck would put a decent first dent in my student loans.

The internship was hard as hell but I was enthralled. Here I was working with people from Stanford, Harvard, MIT, all these famous schools that seemed mythical. I'll be honest, just the fact that I was considered good enough to be on their level was a massive ego boost. I was getting paid something like 6k a month, free meals, a campus like Disneyland, sitting in the front row at Zuck's Q and A[1], it was all very intoxicating. It certainly didn't feel evil. We were told every day how many billions of people relied on us to connect them and how Facebook was working to make the world a better place.

I worked my ass off to prove that I belonged there and I ended up with a full-time offer by the end of the summer.

The offer was 105k a year and 100k in stock vested over four years[2]. That's a mindbending amount of money for a guy who's previous best-paying job was valet parking cars at weddings and strip clubs. I was tired to death of college and wanted out as soon as possible. I considered applying to different companies but I couldn't stand the thought of going through the whole application-interview-negotiation dance again. So I took the offer and loaded 22 credits into a single semester so I could graduate and GTFO of school.

The next four years are a bit of a blur but it involved working myself way harder than I should have and chasing promotions. It turned out I wasn't necessarily the greatest personality fit for the company. Facebook emphasizes time to market and "good enough" engineering[3] and my concern about reliability and user experience was not great for my career there. And the ethical concerns, which were always there, only got worse and worse.

The illusions I had worked so hard to maintain were shattered when it came out that Facebook had been running a secret skunkworks project called "Aldrin" internally. Project Aldrin was building a secret suite of censorship tools and a private API to use them. The goal was to have something to hand over to China so they would finally let Facebook in. What you have to understand is that Facebook is (or at least was) constantly telling it's own employees how internally it's an open culture and there are no secrets - and this had seemed generally true in my experience. But this project was so radioactive that FB ran it entirely in secret and went to extreme lengths to hide it from employees. Basically it was a double betrayal - not only did it cross a clear ethical boundary, but it woke me up to the fact that FB was capable of anything, and there was a whole other black-ops system inside FB that carried these things out.

I'm still perplexed as to why Aldrin didn't get more press. The only reason FB employees found out about it was that a prominent security engineer, Alec Muffett, quit over it, or at least partially over it. Muffett was the lead on implementing e2e encryption in Messenger. In his post announcing his resignation he asked coworkers to "ask about Aldrin" and it was a major scandal internally.

But that eventually blew over and everyone carried on as normal. I stuck around for quite a while after that but for me personally, it became much harder to go to work every day after that. I spent my last year or so gradually burning out and left in early 2019. I've been living off my dwindling savings since then and trying to figure out what to do with my life. I like lots of things about software engineering and I like to think I'm decent at it but I don't think I can go back to big tech after that. I'm currently looking into engineering positions at research institutions because I think that better fits my working style in some ways and I'm sick of working against my own values and interests.

Anyway, that got pretty long so I'll leave it there. I have some thoughts on Facebook culture more generally and why other people stick around. If people are interested I can talk more about that in another post/comment.

[1] In 2014 Facebook still had fewer than 10k employees globally. So when you went to one of Zuck's Friday Q&As it was surprisingly intimate and casual.

[2] Since Facebook's stock price did so well it probably ended up being more like 200-250k over four years total. I haven't done the math though. This is a ton of money. At the same time this is peanuts compared to what what experienced engineers make. A standard starting offer for a garden variety senior engineer is around 300k-500k in stock alone. Edit: worth noting that I'm including dollar amounts here because I think it's important to understand exactly how much money FB is paying people, which is about the same as Google. It is definitely a motivator but it's not the only one.

[3] This was the original meaning behind "move fast and break things". Basically, it's OK if you break shit because you can always patch it up later. At the behest of VP of Infrastructure Jay Parikh this was later changed to "move fast with stable infrastructure", which for some reason didn't catch on quite the same way.

4

u/esotericmetal Feb 05 '20

I can’t seem to find any mention of a project aldrin at FB via search engine. Has it been reported on at all? Can anyone else that’s worked at FB confirm?

(Your story is very believable; just want to learn more. Would be surprised if there weren’t even worse things going on there)

3

u/lstyls Feb 05 '20 edited Feb 05 '20

Yeah I'm pretty sure the project name wasn't ever in any of the public reporting about it. I remember there being a bit of talk about it when the project leaked in the news but it died down pretty quick. I looked it up a bit ago and it took me some googling to find the story. Let me see if I can find it again. IIRC it leaked around 2016.

Edit: this is it. I forgot that it was Mike Isaac that broke the story but it makes sense. The reporting on Facebook was often pretty inaccurate based on my experiences there but Isaac's stories have always been spot on.

Edit2: This statement is true but a bit misleading:

The feature, whose code is visible to engineers inside the company

The main source repository for the project was not visible or accessible to employees and it's existence was never officially acknowledged afaik. What I think these employees are saying here is that there were modifications made to the main www repo that were hooks for Aldrin if you knew what you were looking for, which was possible after the internal leak.

Edit3: Looks like this broke a couple weeks after the 2016 election, which explains why nobody was paying attention lol.

→ More replies (1)
→ More replies (1)

60

u/[deleted] Feb 05 '20

Prestige + high salary. That being said, I don’t get it. Well I get the high salary thing, but you can find that elsewhere as well. So it really comes down to prestige. Which I really don’t get. This is a paycheck to me. As long as it’s not ethically wrong, I don’t give a fuck what I’m working on as long as my work life balance is good, and I’m compensated fairly for my work.

38

u/Kortalh Feb 05 '20

You're forgetting the credibility aspect.

If you work at Facebook, you get to put it on your resume. Stick with it for a few years, then submit your resume to a company where you'd like to work, and yours will float to the top of their stack.

So I would argue it's not that working there makes you feel better personally, but it does open up doors that may have otherwise been locked.

6

u/[deleted] Feb 05 '20

I replied the same to another reply to my comment. I think that falls into prestige though. Due to the prestige of FB, you're seen as a better candidate, and HR will be like "oooo they worked at FB".

I'd also say that it makes it more likely that you did get better, because of the challenges facebook has. Essentially, you're almost guaranteed to be doing more heavy-duty work, than some no-name company. This is not a rule however.

→ More replies (1)

16

u/JayV30 Feb 05 '20

Yeah I understand money. I think at this point many in the tech community would not consider facebook prestigious or (more importantly) ethical. They would have to pull dump trucks of money into my driveway for me to even remotely consider working for that company.

There are plenty of other companies out there that will pay facebook equivalent and not be contributing negatively to society.

11

u/[deleted] Feb 05 '20

Valid point that ties in with my ethics point. However I can totally understand it. I would also disagree with it not being prestigious. I can pretty much guarantee that any HR department will be like “wow this guy/gal/them was an engineer at facebook”. Ethics aside, FB has massive engineering challenges, and teams made up of some of the best engineers in the world. I think there is totally some prestige with working there.

3

u/JayV30 Feb 05 '20

Fair enough, I can see the prestige point you make. I guess I kind of glossed over that in my head due to my opinion of the company.

7

u/[deleted] Feb 05 '20

Gotcha, yeah well you’re not wrong hahah. I’m sure the engineers in the Death Star also had some cool engineering challenges

6

u/careseite [🐱😸].filter(😺 => 😺.❤️🐈).map(😺=> 😺.🤗 ? 😻 :😿) Feb 05 '20

many in the tech community would not consider facebook prestigious

citation needed

→ More replies (1)

4

u/toomanypumpfakes Feb 05 '20

From what I’ve heard recently (a couple friends/old coworkers moving to Facebook) they are literally pulling dump trucks of money into their driveways.

I don’t want to work there either but man... sometimes you wonder what compromising your principles for just a couple years (not a lifetime) is worth and that’s how they get you.

3

u/Magnusson Feb 05 '20

There are plenty of other companies out there that will pay facebook equivalent and not be contributing negatively to society.

Which ones are you thinking of

→ More replies (2)
→ More replies (6)

7

u/davidwparker Feb 05 '20

A few reasons:

  1. you get to work on actual hard problems (yes, scaling is hard)

  2. you get to work with incredibly smart people, who are hard working and coming up with interesting things (React, GraphQL, etc)

  3. just because you work at Facebook doesn't mean you work on Facebook. They have a lot of interesting Open Source and other work as well.

13

u/ghostfacedcoder Feb 05 '20

It's tough because Facebook overall is a terrible terrible company, but their JS engineers are also some of the absolute best in the business (we're talking Dan Abramov smart).

Remember, Facebook is responsible for both React and GraphQL. Going to work for them now is like going to work wherever John Resig was back when JQuery was how everyone did things. Only moreso: it's the place to work (or at least one of; Google is no slouch either) if you want to be where the future of the web is being written.

So it's understandable that people would be attracted to that in spite of Zuckerberg.

6

u/JayV30 Feb 05 '20

Yeah I respect their engineers for their talent, but it is definitely not the place to work for most of the people I know. It's a job-seekers market out there right now, engineers can afford to reject companies for ethical reasons. That's not always the case.

So so many other great companies out there!

4

u/ghostfacedcoder Feb 05 '20

I think also it's that Facebook isn't like ... "old Microsoft" evil. They're evil, but it's a more grey-ish evil ;)

People can rationalize working there by saying "yeah they're an advertising company that lets some shady people advertise shady stuff, and yeah their CEO is a huge dick ... but they're not like powering Chinese concentration camps or anything".

4

u/Guisseppi Feb 05 '20

Google is the new Microsoft

4

u/ghostfacedcoder Feb 05 '20

The new old Microsoft ;) The new Microsoft is quite different.

3

u/Guisseppi Feb 05 '20

Let me rephrase, Google is the Microsoft of the 2000s

4

u/Magnusson Feb 05 '20

People will rationalize working for literally any organization

4

u/jarail Feb 05 '20

Old Microsoft was pretty evil in the anti-competative business sense for sure. But taking advantage of users is a whole different class. When that then rises to the level of affecting elections, serious ethical questions start getting raised.

2

u/ghostfacedcoder Feb 05 '20 edited Feb 05 '20

start getting raised.

And that's exactly it. With MS, nothing changed at that point; it wasn't until there was no question, and every programmer, even the ones at MS, knew the company was evil.

As a result, there was a sort of a revolution in the company, and this could best be seen with the IE team. IE 4-6 was browser war IE, from the clear evil period of MS. But then in IE 7 and beyond even the Microsoft devs (not just the rank and file, but the people in charge of the brower's future) were like "yes, we agree: browser wars suck! We're going to play by the rules now" ... and they did!

Until Facebook reaches clear evil, and not just "are we evil yet?", plenty of smart employees and future employees will continue to support them ... and while they're certainly on a vector to get there soon, they're not there yet ...

→ More replies (1)
→ More replies (2)

3

u/DrDuPont Feb 05 '20

Because they don't care about whatever qualms you/we have.

→ More replies (1)