Interning at Facebook: Answering Your Questions on Quora

Our engineering interns have been building and shipping code all across the site since the beginning of the summer. Since many are heading back to school this month, they wanted to answer some questions about their experiences before they leave. Last week we asked you to post questions about Facebook Internships on Quora. Here are some highlights:

 

Q: Does Facebook often make undergraduate summer internships immediate full-time offers (so they start right away instead of finishing school)?

 

A: Cullen Walsh, Current Facebook Intern, Summer 2010 Facebook Intern

 

I think that finishing school helps students discover new fields that interest them and round out some skills that will benefit them at Facebook (or any technology company). For example, I had never done much security or hardware coursework until last year, and in doing so I found that I really enjoyed security class, but the hardware one wasn’t for me. That knowledge will certainly help guide my career, and acted as an extended boot camp (boot camp is the 6 week process of finding your team when you join Facebook). For Facebook, it means that I know more, can find the project that fits me best quickly, can move faster with that project as I understand it better, and can be more productive. That is not to say people who skip the remainder of school aren’t (as I’m sure they found a good project fit for themselves), they just didn’t have as much exploration and skill development in the school environment.

 

 

Q: How much creative freedom does Facebook give its interns?

 

A: Mary Pimenova, Facebook Intern, Summer ’11

 

This depends on exactly what you mean by “creative freedom”, as well as the sort of role the intern is in. I can speak from a back-end engineering perspective (I work on site efficiency, so I rarely deal with changing a UI).

  • In my day-to-day work, I feel like I’ve been given a lot of control over design decisions related to my project. My mentor had some idea of what I was going to do, but I was ultimately able to define what I wanted to build and how I wanted to build it. My code is reviewed before I commit it, but these reviews are very reasonable and I’m happy to get feedback. After I finished the project I was asked for ideas about what else I wanted to do with my internship, so they are really trying to match me with work that I’m interested in.
  • As part of my team, I also make performance improvements to other pieces of the site. I can pick what I want to investigate, make changes and send them to whoever wrote the code initially to approve.
  • Additionally, there are semi-regular hackathon events when employees, interns included, can take up projects that are totally unrelated to their daily work. So an intern can build whatever he or she wants. At the end we demo what we made and, if it gets enough momentum, it will probably ship.

A: Cullen Walsh, Current Facebook Intern, Summer 2010 Facebook Intern

 

Overall, interns have freedom to make changes anywhere in the codebase. Smaller commits are generally approved after style and sanity feedback from one reviewer. More impactful changes usually result in a discussion and need collective consensus to be shipped, so our freedom is limited in this sense. There are commits that get rejected, but probably with good reason.

 

I think it depends to some degree on your project/team, but I’ve had quite a bit of creative freedom on the projects I’ve worked on.

 

This summer, I was given a project that had a document with the goals and a screenshot of a prototype home page. From the beginning of summer, I’ve flushed out what features were(n’t) making the v1 release, tore apart the prototype that had already been created, iterated on some ideas, getting feedback from my mentors along the way, and just today started demoing it internally, with the intention of releasing it in the next few weeks. While I received a lot of guidance along the way, I’ve definitely owned the project and made nearly all the critical decisions. (I know that is really generic answer, but it isn’t released yet. I hope you understand)

 

While not directly part of your question, I think it is not enough to have the freedom to make decisions on your project, but to have a meaningful project that will make an impact to users. Facebook seems to be really good about doing so; rather than being given “refactor this code” or “fix these annoyances” type of projects, interns are given core responsibilities. http://www.quora.com/What-live-Facebook-features-were-started-and-finished-by-interns has some good examples.

 

A: Ashoat Tevosyan, currently interning at Facebook

 

In general, I agree with what Mary and Cullen said earlier. As an intern, you are provided with a lot of flexibility in engineering decisions. Beyond that, I’ve definitely felt that I have the freedom to pursue my own convictions in the work that I’ve done.

 

However, it’s worth noting that product and design decisions are often made by product managers and designers, and those sort of decisions tend to involve the higher-ups more often than engineering ones. That’s not to say that you don’t have input in those sort of decisions; only that you’re less likely to have the final say.

 

I don’t think that this is too unusual for a medium-sized tech company.

 

 

Q: How does the Facebook internship experience compare to that at Microsoft?

 

A: Kellen Donohue , Interned at Facebook Summer 2010

 

Overall they are pretty similar work-wise. There are some notable philosophical/cultural differences between the two companies through.

 

Same:

  • At both companies you’ll work on a team with developers at the company on a specific project. 
  • You’ll contribute to the product just like the rest of the developers, and you’ll be expected to meet their code standards, follow their code review process, etc.
  • You’ll get to mostly set your own hours, as long as you do your work, and you’ll get free drinks.

Different:

  • At Facebook you can check out the entire code base, at Microsoft you’ll probably just get to see the code of the product you’re working on. This philosophy extends beyond just the code though. Microsoft is much more siloed, as a Windows intern you probably won’t see the latest edition of Office, whereas at Facebook you’ll see many of the features in development.
  • At Facebook you’re more likely to be placed on a team with other interns, because FB hires a lot more interns relative their number of engineers than MS.
  • FB has free food and snacks, at MS you have to pay. This matters to me more for culture than money reasons. At FB everyone that works there eats there, you’re more likely to interact more with your coworkers.

These last two are specific to software developer interns:

  • At FB you will see your code ship during your internship, many times. At MS you are unlikely to see your code ship during your internship, if at all (After my first of two Microsoft internships my team disbanded).
  • You will have more responsibility for your code at FB than MS. MS has much larger test and PM teams than FB. You will have more responsibility for specing and testing your code at FB.

 

A: Ashoat Tevosyan, currently interning at Facebook

 

I’ve done two high school internships and one (non-Explorer) college internship at Microsoft, and am currently interning at Facebook. To answer your last question first, Facebook does offer product manager (PM) internships, though it tends to have a smaller concentration of PMs than Microsoft does.

 

The first thing that’s worth noting is that Microsoft internships vary depending on the team you’re with. There are teams at Microsoft that are more like Facebook and there are teams that are less like Facebook, and that will impact the difference in experience. With that said, here’s a list of differences I’ve noticed:

  • At Facebook, it’s more likely that you’re going to be assigned to work on critical portions of projects than at Microsoft. I’d say that that’s mostly because Facebook is a smaller company. Smaller companies tend to be more constrained with their resources, and consequently the interns are utilized for higher-priority projects. A larger company might already have all the high-priority projects covered.
  • Facebook interns tend to be more independent. Interns are encouraged to implement features wherever they think features ought to be implemented. Each intern has full access to the Facebook codebase, and every week interns hold a “Hackathon” where they work on their side projects. As an example, the friendship page on Facebook was born as an intern side project.
  • Facebook interns tend to be more involved with Facebook than Microsoft interns are with Microsoft. What I mean by that is that your intern friends will be more likely to be working late nights. That’s not necessarily a bad thing, as it’s often because they’re at a Hackathon or because they’re having fun, but take it as you will.

 

Check out more questions about interning at Facebook and ask your own here.

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

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

Twitter picture

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

Facebook photo

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

Google+ photo

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

Connecting to %s