Taro Logo

Software Engineer Interview Experience - Redmond, Washington

August 1, 2019
Negative ExperienceNo Offer

Process

A recruiter kept sending me ping emails every month or so. After several months, I responded with my canned "don't bother unless you can meet these criteria" message (things like relocation being a non-starter, salary and equity requirements, industries I won't work in, etc.).

He said he thought they could clear the bar on these issues, and I ended up doing a quick chat with a hiring manager about two weeks later, followed by a tech screen two weeks after that, and then another phone conversation about moving forward with an in-person interview a week and a half after that.

So, at this point, it's a month and a half after my first response to the recruiter, and I'm waiting for Facebook to schedule the in-person interview. It's right before the July 4th holiday, so I figured it wasn't unreasonable if it took a bit to get the scheduling together.

I spent three weeks waiting before I received an email stating that they had lost someone on their recruiting team, lost track of me, and asking if I still wanted to come in for an in-person interview in the next couple of weeks. OK, then.

I said sure. The next day, I received an email tentatively scheduling my on-site for another two weeks in the future. Along with that, I got a flurry of mostly automated emails asking for all sorts of information needed for travel arrangements. I live in Seattle. The on-site is in Redmond. I pointed out that I didn't need travel accommodations, although I was kind of sad I didn't just leave it, just to see if they were able to book a flight from SEATAC to SEATAC.

One thing I asked about before the on-site was whether I could bring a laptop to do coding questions on. My handwriting is bad, and my hand tends to cramp up after a few hours holding dry-erase markers. I generally prefer to use an editor while coding. I was told that while I wouldn't be allowed to bring my own device on-site, they had the option for candidates to do problems either on a whiteboard or on a company-provided laptop for that purpose.

Finally, on the day of the interview, I went in and did the thing. It's the standard "large tech company" interview cycle, where you spend an hour or so with different people, each one tasked with evaluating some aspect of your abilities.

Right off the bat, I was told that there was an issue with the interviewee computers and that I wouldn't be able to use one, for coding problems or otherwise.

Most of the sessions involved me spending most of my time at the whiteboard, except for one case where I was talking to someone in an SF office over a video conference connection.

He exclusively asked the soft questions, like "Tell me about something you did that you were particularly proud of." The questions were pretty familiar because they're the kind I tend to ask when I've done no prep for an interview. That might seem harsh, but during the back and forth, I got several other signals that he really hadn't done anything to research me. I'm not exactly famous or anything, but I have written a book specifically related to the work Facebook Reality Labs does. If you Google my full name, you are immediately presented with my LinkedIn, GitHub, Twitter, and Amazon profiles, all of which contain a fountain of information you could use to personalize an interview session.

After the interview, I didn't hear back for a full week, at which point they said they wouldn't be moving forward. Unusually, the recruiter did specify that the feedback had been mixed, and that the negatives had come from the two design-oriented segments of the interview.

Overall, it wasn't a horrific experience, but I'm still rating it negatively because:

  • Frequent delays
  • "Losing track of me"
  • Trying to set up travel arrangements for a local candidate
  • Setting expectations of interview conditions (being able to code on a computer) and then breaking them on the day
  • No one, especially the "soft questions" guy, appeared to have any idea who I was or made any reference to my existing history in or contributions to VR.

Questions

Design question:

Given an internet server with 12 cores, 60 GB of memory, and a big network pipe (the exact value was specified but I cannot recall it), how would you implement a caching service with three functions that boil down to:

  • void set(string key, byte[] data);
  • byte[] get(string key)
  • void delete(string key)

where the key is between 1 and 255 characters, and the data block can be up to 1 MB.

Further, how would you design the system to be effective when some key becomes part of something that goes viral, such that there is suddenly a much higher rate of requests for it?

Imagine a two-dimensional NxM grid of boxes. Each box may contain a pipe, which can connect to any of the 4 cardinal directions. Write a function that returns true if the pipe network(s) described by the grid are closed, i.e., there are no pipes connected to the edges of the grid or connected to an adjoining cell that does not have a pipe connecting to the shared side.

The last memorable questions were all about vector math (in the sense of geometric vectors, not SIMD optimizations). Most of the time was spent trying to implement intersection tests, first sphere/sphere and then sphere/capsule.

Note that this interview was at Facebook Reality Labs, so these kinds of questions weren't out of left field, and I expected some focus on 3D rendering fundamentals.

Was this helpful?

Interview Statistics

The following metrics were computed from 3 interview experiences for the Meta Software Engineer role in Redmond, Washington.

Success Rate

0%
Pass Rate

Meta's interview process for their Software Engineer roles in Redmond, Washington is extremely selective, failing the vast majority of engineers.

Experience Rating

Positive33%
Neutral33%
Negative33%

Candidates reported having mixed feelings for Meta's Software Engineer interview process in Redmond, Washington.

Meta Work Experiences