The
internship
Angelo Failla
Production Engineer
Cluster infrastructure
team
Facebook Ireland
From hackathon idea to production: story of an intern project
Approximately one year
ago… at SRECon15
Europe…
I gave a talk about our
DHCP infra…
Slide Subtitle
I was about to wrap it up, then
somebody asked me…
“Have you checked that your
DHCP traffic is evenly
balanced?”
Fast forward one year later,
April 2016…
<<A "good hack" is a clever solution to a
programming problem and "hacking" is
the act of doing it>>
— Eric S. Raymond
The meaning of ‘Hack’: http://www.catb.org/jargon/html/meaning-of-hack.html
Hacking is central part of our
culture
We hacked a load balancer
POC done in 2d, shown @ prototype forum
Fast forward to beginning of “Summer”…
Awesome interns are
coming!
• 12 weeks in total
• 1 week of engineering onboarding
• team/project onboarding
• feature development
• controlled production rollout
• open source it!
Intern summer project: milestones
DHCPLB: a DHCP relayer with load balancing capabilities
Ship it!
dhcplb
takes over
Happy panda!
What I’ve learned from this
story.
Public speaking fear, are people even
listening to me?
Hackathons are powerful things
Managing (interns) is hard but
rewarding
Explain the Company values
Don’t be the
Make sure interns socialize and have
fun!
The internship

The internship

Editor's Notes

  • #3 BGP is the protocol we use to figure out which server is closer to a given client, but it’s not aware about load Explain how DHCP is used
  • #4 Explain how DHCP is used
  • #9 Hacking is ‘an appropriate application of ingenuity’. Quick-and-dirty patchwork job or carefully crafted work of art. You still have to admire the cleverness that went into it.
  • #11 Talk about hackathons at FB. held periodically, 1 or 3 days something done quickly food/drinks/socialize/know new people work on stuff you don’t normally work on like button, timeline and chat started as hackathon proj
  • #12 We used go because we wanted to learn, my team doesn’t use it, I wanted to learn and we find the language was suitable for the problem. Suitable for hackathon.
  • #13 Talk about prototype forums.
  • #22 Teach new people about the important of fast iterative dev cycles to gather lots of feedback. Most inexperienced people tend to submit code for review only when they think it is perfect.
  • #23 Talk about the fact that I went away for 2 weeks. Make sure you haven’t told them everything but they can figure out by themselves.
  • #24 Talk about events we organize, Friday booze and banter, etc.