Remote Internship at Facebook

This summer I was fortunate enough that the company I signed on to intern with, Facebook, was doing a remote internship during the pandemic. I wanted to summarize some of the ups and downs of this experience.

Structured Internship

Facebook has a very structured internship. Interns (at least on the technical side) are given 3 milestones, each split up into a variety of tasks, and an estimated timeline of when each of those would be finished. I really liked this structure for a few of reasons:

  1. It translated well to remote work: With a set structure, there is less to set up and plan once the internship starts, which saves a lot of effort since planning remotely is far more difficult. 
  2. It kept me productive: I always knew concretely what I should be working on for a given day 
  3. It was more like real life: In past internships, I would work on an isolated, more freeform, intern project with a few other interns and that standalone project could be used by the company later. That’s nice, but in real life, people have to spend time searching for code. The project you create will be integrated with thousands of other people’s code and has to work in sync with them

This last point was highlighted in FB’s Developer workflow (below is from memory so it may be slightly different, but the idea is there). 

Locating the right code and handling peer review well is just as important as being able to write your own code independently. And in terms of an internship, it is perhaps an even more important skill to practice since it’s not something you often get to practice in university coding assignments. 

Remote work

Okay so the experience of working remotely was an extremely large part of my internship, so I’m gonna split this up into sections:

Icebreakers
Asking for Help
Disconnecting
Tips

Icebreakers

Meeting new people (or at least meeting voices and black squares)

At the start of my in-person internship in the summer before this one we did a puzzle hunt. Basically, you’re assigned a team of 3-6 and solve a series of puzzles together as fast as you can. It was a lot of fun and later when I saw my puzzle hunt team at lunch or around the office, I was comfortable enough with them to say ‘hi’ or have a quick chat. 

At the start of this summer’s remote internship, we also kicked it off with a puzzle hunt! But it was in no means the same experience over Zoom… 

Most of my team kept their videos off and solving puzzles together was unexpectedly difficult. Communication was much harder. If we were solving a puzzle and writing things down, people couldn’t see what you were writing. We also couldn’t easily split up to work in parallel. 

I think puzzle hunts are one of the best ice breaker games because it gets you close with a small group of people really fast. It exercises communication, problem solving and leadership. It’s also just fun. However, I think there are some games that would have been more suitable to an online medium. Online pictionary (such as skribbl.io) is far less engaging, but far easier to play together online. 

That doesn’t mean it’s not possible to meet new people. It’s just much much harder and you have to actively decide if and when you want to do it. Also! It makes such a big difference to simply turn on your camera when you are meeting new people. (I remember my teammates who turned their camera on, and totally forgot about the ones who didn’t)

Asking for Help

(or…texting for help)

Getting blocked or having technical issues is sucky enough, but this is aggravated by remote work. It’s much harder to communicate what the issue is and on the other end, harder to communicate what the solution might be. 

However, on the bright side, that did get me to be determined to figure out more and more things on my own. If my manager had been just sitting 5 feet away from me like last summer, it would have been very tempting to bug her about little things. Instead of a quick “hey what’s this message mean?” it would have involved screenshotting the message/context, pinging her, waiting for a response, and worst of all, distracting her from other things! In person, you can tell when a person is in an “interruptible” state. But remotely, I didn’t know if I was pinging my manager at a bad time. 
Also, remotely, you lose all the 2-min water cooler chats where little things are often addressed. 

Disconnecting aka When the office disappeared

Ahh yes, that fateful day, June 9th. When I got disconnected from the internal Facebook system. My laptop functioned, but I didn’t have access to the code, tools, or wikis internal to FB. 

At my last internship, something similar happened. I walked over to IT, asked about it. They took my laptop and gave me a ticket number and asked me to come back in an hour. I spent an hour talking to a fellow intern and learning about his project and then I went back and got my laptop. 

But here, remotely, I was so lost. The real-life equivalent of this would be if all of a sudden, the whole office disappeared! I ended up calling my manager over FB Messenger and she looked up the wiki on what to do in this case, and gave me instructions. (luckily we were Messenger friends already for testing our project :P) It was an awkward and lengthy process and I greatly appreciate her taking the time to do that and being chill about it too!

Tips for working remotely

You lose a big chunk of personal connection when working remotely, so that’s the main part you have to compensate for.

1) Recognize that it’s a struggle on both ends. As frustrating as it is for me to not see my mentor in person, it is also frustrating for them to not be able to see me in person. It’s the mentor’s job to keep tabs on you as the intern, so try and make it as easy as possible for them. I found it super useful to have a document with what I did each day. Something like:

This gives a convenient visual and record for the manager to check in since they can’t see you either. Not to mention it’s also a great way for you to plan and see your progress.

2) Be 10x as enthusiastic. This advice is from the PM (Product Manager) for my team. He is in charge of leading a lot of the team meetings and he notes that in order to have the same energy and hold the same attention through a video call, you have to have 10 times as much enthusiasm. Using visuals helps too since people are less likely to notice your body language. 

3) Ask lots of questions (specifically ones that seemed silly before)! I realized that there were so many things that I didn’t ask before because you just kind of learned the answer by looking around. When you’re at a company, it’s easy to learn via “when in Rome, do as Romans do.” But things like “how long do people take for lunch breaks?” actually have to be asked explicitly now–and that’s okay!

Deadlines

Deadlines for an internship are different from deadlines in college. At one point, I finished a task 2 days after the deadline estimated by my manager. I was freaking out. I felt so bad since I was comparing this to how deadlines have worked my whole entire life (i.e. as a student) In college, if you submit 2 days past the deadline, there had better be some extenuating circumstances for that. Before you, hundreds (maybe thousands!) of students had completed the same exact assignment in that allotted time period. However, in a real work setting, if you submit 2 days past an estimated time period, it really depends on the circumstance how critical that is. In my case, my manager had just estimated the time and didn’t actually mind if I took +/- 5 days from that deadline. Unlike college tasks, no one had ever done the particular task I was assigned so there was no precedent.

In fact, I ended up finishing overall, all the milestones, 3 weeks ahead of schedule, despite being “behind” by two days on this one task–all the deadlines are estimates! The important thing is to keep the overall functional company timeline in mind and not dwell over the little task-to-task deadlines that aren’t strict anyways.

Asking Technical Questions

I often notice that many industry skills aren’t emphasized in college. But one thing I was pleasantly surprised to have practiced was asking technical questions well. 

In college we use online platforms such as Piazza to ask and answer questions from fellow students. A “good” question is clear and concise, but still provides all the necessary context to answer the question. 

Similarly at Facebook, we used an internal tool: Workplace groups, to ask and answer questions in pretty much the exact same way! I noticed that some people asked questions without providing the code or context or explained things in a roundabout way. Consequently, those questions were less likely to be answered. With practice, I’m sure that these people will ask better questions, but it is nice to notice that I’ve already practiced this skill in school! 

What I worked on: 

I got to work on a really cool project! I’m super excited about it, but it is currently in alpha testing and I’ll post more about it once it’s released (which should hopefully be in just a few months!) 

UPDATE!

It has been launched and I can officially talk about the product I worked on!!!!

See more in this post.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: