Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Blue Velvet

Moderator emeritus
Original poster
Jul 4, 2004
21,929
265
The Guardian has an exclusive interview with Mike Schroepfer, Vice President of Engineering at Facebook. Some excerpts:

You're in charge of a team at a company that famously does things fast. How far out do you plan what projects you're going to assign people to?

In general our projects are very iterative - often they last one or two months. Facebook Messages was bigger and longer [Mark Zuckerberg said that a team of more than 15 people worked on it more than a year] so we had to make a longer-term commitment. Others are about working on a piece of technology that has a huge effect on [site] performance. So for example there's Hiphop [which compiles the interpreted scripting language PHP into runtime C++] which took two years to finish.

So we're looking at making the web servers more efficient, which is something we have to invest in.

Where's the centre of gravity in the projects among the developers? Are people writing for mobile, or for HTML5, or what?

Mobile is certainly important, and increasingly important. From the products we have launched there's increasing emphasis on mobile. So when we had Facebook Messages it launched on mobile and on the web at the same time. We have 200m people using Facebook on mobile; in some countries they only access it via mobile.

We're also making huge enhancements to the systems through investments such as Hiphop and server software, because that makes the cost of operating lower, or leads to speed improvements.

The third thing that's important is capability in machine learning, because it allows better creative experiences.

What tools do you develop in?
There's a wide proliferation - we use C++, Java and PHP. The back end is built in C++, the messaging in Java. We build in and leverage open source where we can, and when we build code then we try to release it as open source where we can.

What do the team develop on?
Everyone gets access to a development Linux server. For themselves, they get a choice of Windows or Mac laptops. Most of the developers are using Macs - I think it's because they have a good selection of command-line tools.

Read the rest of the interview here.
 

redwarrior

macrumors 603
Apr 7, 2008
5,573
4
in the Dawg house
Interesting read, Blue Velvet. Thank you. I'm studying web interface design right now, and this came in handy in some of our discussions about server applications and programming/scripting languages. :)
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.