Sunday, October 14, 2012

How to build a site without any tools or controls

How to build a site without any tools or
controls
Product engineering at the first office was an extremely simple
process, and the few all engineering meetings we had (a dozen
people in the small conference room) were focused on keeping
development fast and flexible. There existed the all important
server “maverick”, and
• Developers all logged in as root to change code, directly used to
serve the Harvard site.
• Occasionally we broke it.
• But immediately fixed it.
• A push script which would copy the Harvard program files to all
of the other schools.
At this time the site had over 2.5 million members, and well over
a billion pageviews a month. Yet, there was no source control and
code changes were all made as root. That was ok as long as
Dustin was making most of the changes. Actually, Dustin
continued making most of the changes for a long, long time.
Nick’s first major Ops new hire Dan Neff, who also cooks
awesome BBQ and set the Facebook commute record by driving
Karel Baloun 31
I’ve found something to put here. Your turn.
almost 2 hours from out past Gilroy, within a few weeks put in
subversion source control, trac for documentation, and a custom
browser-based push script.
This direct development system worked amazingly well, even up
to a half a dozen engineers, up until the first complete revamp of
the site, project Facelift, which required source control for
coordination among every new, old and temporary engineer.
These months I was feeling Experienced. Issues would arise for
which I had the answers, because the site was still comparable in
size to others I’d worked on, and actual internet application
experience was a rare commodity in the building. Jeff Rothschild
(founder of Veritas, technical guru) came on shortly after I did,
and very soon he was having all of the answers. Jeff’s arrival
made it clear Facebook could not fail, and I loved working for
someone as technically talented.
I mapped out the first system diagrams and planned a major
architectural redesign for PHP5. Around four months in, Zuck
gave my favorite engineering roadmap presentation, in which he
assigned me to about half of the site’s code base and features,
and after the meeting he walked directly to me and kindly asked
whether he had given enough attention to my items. That’s Zuck,
always concerned that everyone who is working, and is important
to him, is happy. I was managing a team of over half a dozen
engineers building a very valuable product, and in love and
delighted. Then and now I acknowledged that this was one of the
best work times of my life; my gratitude magnified my joyfulness.
32 Inside Facebook
Copyright, Karel Baloun, 2006. All rights reserved.
If you ever find yourself this happy, note and remember, this sign
that you should find more ways to live your life this way.
After serious internal deliberation, I championed upgrade to
PHP5.1, to which we were the first large site to migrate. We may
have been the most heavily trafficked php site at the time. We
upgraded right after the first official release, and worked to fix
performance problems with the core APC team29. Facebook was
like that - we were afraid of nothing, as we tried to get the best
technology and pull in the best people, for we knew we could find
the brains to fix anything that happened.
Hiring was a perpetual challenge. Before I arrived a mostly
symbolic recruiting tactic involved parking a huge wooden italian
chef outside of the office door, and while usually he was expected
to hold some restaurants pizza menu, he showcased our current
open positions, with VP of engineering at the top. I was involved
in most engineering hires at this time, and while my main concern
was whether the candidate could do an excellent job on the set of
projects I knew were upcoming, Zuck, Scott and others wanted
simply brilliant geniuses who could learn to do whatever we
needed, now or later. It takes longer to find geniuses, but I must
say, drawing on the 8 million college student pool of users,
eventually the company succeeded. While I suppose
subconsciously I was looking for more engineers like myself, the
Karel Baloun 33
I’ve found something to put here. Your turn.
29 Alternate Php Cache. The standard, not alternate, way of making Php
applications scale and run fast.
company explicitly and correctly decided that Scott was the
correct model engineer.
Like Google, Facebook wanted super smart engineers who could
own a project and deliver amazing technology, though unlike
Google, Facebook gives more weight to sheer intellectual
brilliance than experience or demonstrated ability to deliver a
great product, which selects towards younger engineers. Also
Google tends to hire known experts in specific areas, while
Facebook encouraged engineers to be generalists30.
Nevertheless, even with our reputation and ability to pay top
dollar in the heart of Silicon Valley, it still took tremendous time,
effort and dedicated recruiters to build out the team.
One hiring story showcases Zuck’s tremendous integrity. Randi,
his sister, now works at Facebook, and her interview happened
right next to me, since that was where two open chairs sat, on one
of those very late work nights. He gave her nothing that everyone
else didn’t have, and insisted on her having a strictly market
based salary, repeating that nepotism was something he wouldn’t
accept. My easy role was convincing her he was being fair, and
not just playing out some childhood revenge fantasy.
The engineering culture evolved away from having any architects
or managers, as all of the engineers where brilliant, motivated,
34 Inside Facebook
Copyright, Karel Baloun, 2006. All rights reserved.
30 Well, Google also hires brilliant generalists. Google hires anyone brilliant, and
I’ve heard of a secret plan to build an underground tunnel from the Stanford
graduation to the Googleplex.
and sharp enough on all product details to not need formal
management. Much later as I approached my one year
anniversary departure from Facebook, I started feeling Old.31 But
only in relative terms, since everyone around me was so young,
inspired and brilliant. In absolute terms, I only felt that when I
started getting sleepy around midnight, and if my back hurt after
sleeping on the couch.
That’s my beginning at Facebook, and while it was a genuine
silicon valley early startup experience, an even earlier story awaits
telling. I came when Facebook was already a big deal for college
students, and when there was plenty of cash to have an office and
hire a full engineering team. But as you know, Facebook started
in a Harvard dorm room, on one server with no cash or few
expectations of greatness.

No comments:

Post a Comment