Iām thrilled to announce that Iāll be joining Facebookās Site Speed team in Palo Alto, California on September 26, 2011 for a 12-week internship!
After almost two months of being in contact with Facebook, I finally got the liberating call with the verdict yesterday evening: Iāve been accepted!
Backstory {#backstory}
For those of you who want to read it, hereās the full backstory.
Excitement {#excitement}
On February 24, I was contacted via the contact form on my website by Jason Sobel of Facebook. Heās a member of the Site Speed team and mentioned their article about BigPipe (which is the technology they developed to make Facebook load twice as fast). Apparently he had come across my master thesis and my website (i.e. this website) and was interested in my work on making websites faster. Jason asked if I was up for a chat some time to find out what Iāve been working on and so he could give a sense of what the Facebook Site Speed team does. There even was a mention of possibly joining Facebook: āmaybe our team would be an interesting opportunity for you?ā.
Iām sure you can imagine that when I received this e-mail I initially didnāt believe the senderās e-mail address was real. It turned out to be legitimateā¦ (I checked the e-mail headers and looked up Jasonās LinkedIn profile for verification.) By the end of the e-mail, I was literally hopping around uncontrollably like a schizophrenic kangaroo.
A couple of days later, I had an informal video call with Jason Sobel. It became clear they were interested in interviewing me for a full-time position. I explained that Iād first have to complete an internship to collect the final credits to complete my studies.
Thatās why I proposed to do an internship first instead. They liked this proposal, so now I was interviewing for an internship instead!
First technical interview {#first-technical-interview}
My first technical interview was on March 21st and was taken by Benjamin Billings, a Software Engineering manager at Facebook whom is also a member of their Site Speed team.
Since Iād been working hard on finishing as much as possible of the various courses Iām enrolled in right now, to ensure Iād have enough time left to finish my master thesis by the end of May, I didnāt have time to prepare for the interview. A few hours in advance, I started looking up some algorithms, scanning them quickly, to get at least some of the details in my head.
Unfortunately, this first interview didnāt go too well. I was extremely nervous and solved the problems he asked me to solve very slowly.
At the end of the interview, I asked how I did and Benjamin confirmed my suspicion: my performance was not great.
Algorithmic Skills Sharpening {#algorithmic-skills-sharpening}
I was afraid this was going to happen. After all, it had been three years since Iāve had to deal with the details of sorting algorithms, tree traversal, single-source shortest-path finding of graphs, data structures and so on.
It had been one year since Iāve worked with relational algebra, database algorithms (such as calculating logical cost-based query execution plan selection), expression power of query languages, distributed computing algorithms and data structures (such as B+tree indexes).
My current master year has proven to be very āappliedā: IT project management, information visualization, current trends of databases, basic accounting, bio informatics, legal aspects of ICT and entrepreneurship. The reason for that is that our university is trying to prepare us to enter the business world, either as an employee or business owner.
I explained Jason that āfor me, itās a matter of being immersed in a specific problem field again to regain the associated method of thinkingā. Jason responded that they expect their engineers to be generalists and to be proficient across a wide variety of programming tasks. This is of course completely understandable ā itās in fact an excellent requirement for hiring software engineers.
So I decided that an opportunity of this magnitude was worth some sacrifice. I simply postponed all my university work to sharpen my algorithmic skills.
Over the next week, I processed Ā±1500 pages of knowledge acquired in the past of which my recollections had become rusty, plus I made some exercises. I re-studied the following courses:
- Algorithms & Datastructures (time complexity, inherent time complexity, sorting algorithms, data structures (linked list, stac, backtrackingā¦)
- Operating Systems (OS architecture, FS architecture, CPU scheduling, multi-threadingā¦)
- Technology of Multimedia Systems and Software (compression techniques for images, video, audio and data in general)
- Distributed Systems (techniques for building distributed applications that keep in sync, can recoverā¦)
- ā¦
Second technical interview {#second-technical-interview}
Clearly, I was prepared far better for my second technical interview on April 4, which was conducted by Yuri Putivsky (whom is not a member of the Site Speed team). Heās a C/C++ programmer, and if memory serves, he said he did and still does some fairly low-level programming. I told him Iād been working with C++/Qt a lot for my master thesis (he knew Qt), so he proposed Iād answer his questions in C. I agreed with this, but was slightly worried that heād overwhelm me because of his ālow-level C programmingā history.
However, mostly thanks to the re-studying of the Algorithms & Datastructures course and the practicing, the interview went very smoothly! I answered far more questions than the first interview, most of which were harder, in the same amount of time.
The verdict {#verdict}
I was anxiously awaiting the verdict for just over two weeksā¦
On April 19, around 20:45, the verdict was finally shared in a liberating call. When I finally heard Laurie Young (responsible for university recruiting) utter the words āCongratulations! Youāve been accepted!ā, I was incredibly relieved to know the answer, but most of all, I was incredibly excited :) As mentioned at the beginning of this blog post, I will start on September 26, 2011 in Palo Alto, California!
(I was later told by my (amazing!) girlfriend that I squeezed her hand quite firmly as I was being told the good news :P)
Drupal {#drupal}
Iād like to thank Dries Buytaert once more for his letter of recommendation and the chances he offered me over the past few years. In particular, Iām grateful for the opportunity to build Mollomās e-commerce system back in 2008, when I only brought open source Drupal modules as prior experience to the table.
If I look at the grand scheme of things, I even have to thank him to open source Drupal. After all, if I wouldnāt have come across Drupal in my search for a CMS to rebuild DriverPacks.net, then I would never have written the article about Drupalās page loading performance. If I wouldnāt have written that, I would never have written my bachelor thesis about it. Next, Iāve only been able to come up with the concept of my master thesis thanks to the preceding bachelor thesis. Finally, Facebook has only found me thanks to my bachelor thesis and especially my master thesis, about which Iāve written on my website that is powered by Drupal!
Itās clear that I owe a great deal to Drupal, the Drupal community and Dries.
Thanks, Dries! Thanks, Drupal community!
Hasselt University {#hasselt-university}
Of course, this was not only possible thanks to Drupal. Clearly, I also owe a great deal of gratitude towards my university, Hasselt University and its many excellent professors.
In particular, Iād like to thank Prof. dr. Wim Lamotte (a great professor, my bachelor thesis promotor, but he didnāt stop there: he also reviewed my master thesis literature study and helped get approval for doing my internship at Facebook, amongst others), Prof. dr. Jan Van den Bussche (my master thesis promotor and an amazing speaker ā he manages to make the most dry topics funny), Prof. dr. Kris Luyten (also a great professor whom teaches many multimedia and HCI courses, while always looking at the newest technological innovations) and many others.
The future {#future}
My father and brother have also been very supportive over the course of my university studies. As have my girlfriend and parents-in-law to be over the course of my master thesis implementation (which is still ongoing).
It feels strange, knowing that a great opportunity awaits you in the not too far (yet not very close either!) future. Iām very excited to start at Facebook, and hopefully I will be able to continue to work there after my internship. (If Iām good enough and it can be combined with my personal life.)
Right now, Iāll just have to focus on finishing my master thesis implementation. (I had it put on hold for the last 1.5 month while interviewing with Facebook and while I was trying to advance other courses as far as possible, so I can get a long uninterrupted time to work on finishing my master thesis).
I donāt plan to leave the Drupal community any time soon, in fact, I will be building a new Drupal 7 site for my my table tennis club during the summer. Some of that work should flow back to the Drupal community, as usual :)
After this last multi-month summer vacation, I will then start in Palo Alto. But today, I have other things to do!
Congradulations!
Congrats my old hotel room partner! :)
Thatās awesome news! It just goes to prove that doing great work gets rewarded!
Youāre going to have a blast in Palo Alto. I actually just moved to Palo Alto earlier this year. Great place. Great weather and lots of really interesting people doing really interesting stuff.
Awesome
Awesome story! No hamsters in it, but still awesome :) What a great opportunity! You deserve it, as you always presented the most impressive projects at university.
Thumbs up, I wish you all the luck!
Congrats
You really deserve this great opportunity!
This is my fourth H L Mencken
This is my fourth H L Mencken quotes time coming by your blog.I just stumbled upon your blog and wanted to say that I have really enjoyed browsing habit quotes your blog posts.
congratulations
Exciting story Wim! Interesting also to hear that the good old basic algorithms and data structures skills are highly valued by the American computing companies. Also thanks for thanking me, I donāt think I have done much, except perhaps to gently force you to think a bit deeper from time to time.
Congratulations
Amazing story Wim. You really deserve this and I know youāll do great in Palo Alto !
Wow!
Wow! Awesome news! Congratulations! Youāre going to have blast over there!
Congratulations
Congratulations, Wim! Well deserved.
Congradulations! May the Force be with U !!!
You really deserve this ! You helped me a lot on the past and i wish you to find everything you are searching for @ Palo Alto !
Excellent!
This is excellent news, Wim! Iām almost as excited as you are! ;-) I am very confident that the FaceBook team will benefit from your eagerness to solve tough problems. Have a great time!
Congratulations. One
Congratulations. One question though. With your level of expertise why dont you start your own consulting firm, or some kind of a product which would push you much more to the edge in every sense, from expertise to money.
Woot!
Great news. Excellent opportunity. Go for it!
You certainly deserve this awesome opportunity
Your contributions and serious approach to solving problems have paved the way! I am happy you have found recognition and hope you will enjoy what will clearly be a fabulous learning (and teaching) experience!
Victor
Congrats!
That is awesome! You are gonna rock even harder than you already do :)
Yeah!
Great news Wim! This also shows how the āopen sourceā attitude you have -sharing your knowledge with the world- pays of. Iām happy that your university supported you with that; and that Facebook seems to acknowledge it too.
Dude! Congratulations! Not
Dude! Congratulations! Not sure what else to say. Iāve obviously seen you kicking around this place for ages, and itās awesome to hear that youāre going to be doing some amazing things, outside this little world :)
Nice one :-)
Awesome, Wim!!! Enjoy :D
Wow, hearty congrats, Wim.
Wow, hearty congrats, Wim. Go teach them a thing or two, and see about converting them to Drupal. ^_^
Congratulations!
So good to read the good news about Facebook internship and future. My best wishes to you there, I know you will do an excellent job there. A great way to start your labor carrer!
Best regards, Nestor
=)
Excited to have you joining Wim!
Congrats!
Congratulations again, Wim!
Steve Yegge has a nice blog post where he emphasizes the importance of studying data-structures and algorithms again before an interview. Itās mostly targeted towards interviewing at Google, but will also apply to Facebook and the likes, I guess.
ā Jo
Awesome!
Congratulations, Wim!
Youāre a brilliant person to talk to and work with, so I have no doubts that Facebook will look into working further with you after the internship.
Also loved to read the full backstory, well done!
Great
Great for Facebook, but hopefully you will not be lost for ā¦ Drupal.
Awesome!
Congratulations Wim!
What an excellent opportunity, enjoy your time in California!
Pls someone tell me how to
Pls someone tell me how to apply for thisā¦. Wim pls. help me for the applicationā¦.
California
Hi Wim, it produces a warm feeling that someone from my old region is getting this fantastic opportunity. Take the challenge. Go West young man!
Welcome to California (soon)...
Hi Wim,
Congrats on the internship with Facebook. My office is close by. Letās plan on having lunch or something after you arrive.
Ciao,
LKG
Congradz, proud of ya!!
Congradz, proud of ya!!
Hi,
Hi, Congratulations on the selection. I am sure by now you have started at Facebook. I was living in California before I moved to NY and loved the environment there (1 may either hate it or totally love it there). Nice to know the drupal folks going places. All the best for everything and hopefully see you at Drupalcon 2012.