📜 ⬆️ ⬇️

From Facebook HackerCup 2011 to Facebook Internship

Start

Hello! Often, running in the morning with my eyes on the headlines on Habré, I see articles about how someone went to study abroad. And every time I think that it’s time to stop being lazy and describe my story about how I went to train on Facebook.

Briefly about myself at the beginning of 2011, about what I remember now. I was doing sports programming. Not very successful, but not to say that a failure. The ratings on TopCoder and Codeforces were quite high, and I was preparing for the last attempt to reach the final. I participated in the Facebook Hacker Cup 2011, as in one of the constant contests, where you can just solve the problem. There I reached the 2nd round and got a T-shirt , having solved 1 task (the best thing was that I didn’t know how to solve it and thought to turn off the computer, but suddenly it dawned). And this task turned my whole life.

After 2 months, in April, I received an email from a Facebook recruiter that my performance at HackerCup was good, and I’m not considering whether I could work in their company. Well say that I was surprised, did not say anything! Before that, two more of my friends went on internships: one at Microsoft (later stayed there), the other at Facebook (now working at Google). I had heard about the life of the engineers "there" and took up the resume. The summary came out extremely scanty, basically the competition where I participated, but there was no work experience. But I was assigned a telephone interview. And they called almost immediately. I note that I interviewed for a job, not for an internship.

Telephone interviews

The first call was from the recruiter. I must say that I started learning English at 3 and taught up to the institute with a very good teacher. I also went to the institute for couples and practice was, but I did not understand 80% of what the recruiter said. She spoke very quickly, asked what I was writing, my interests. Then the first technical interview was scheduled. A few days later it took place. Simple algorithms problems. Only the following caused some difficulties. After I wrote that it is necessary to appoint the second. Assigned. It's time for him. The task of algorithms is easy, but then it was necessary to design a news feed. I actually said something, tried to reason, encouraged the phrase “yes, that makes sense!”, But then asked to appoint a third one. I still think this is because of my “design” news feed. The third was simpler, again tasks for algorithms. Pretty simple. Then for the first time I was given a task, which then became the very classic — to find the k-th maximum in the array. In the contests, we always did this using stl - nth-element, and I knew that its complexity is linear, but here we need to write the code with our hands, but it is also possible!
')
A couple of days later I received a letter saying that my name is on the onsite interview in the USA. What does pay for accommodation and flight. I had never been to America before, and it was just WOW - free-flying there! But it was already May, and it is necessary to fly in June. There is no visa, in the embassy there is a queue from Work And Travel, but nevertheless I managed to do everything before the flight, which was booked by Facebook, and flew to the interview.

Onsite interview

California was very cool! My friends who moved there relatively long ago showed me San Francisco, I looked around. But the interview itself was tough. 4 interviews in a row for 45 minutes - a bunch of tasks. Code write on the board. I shot three perfectly, but the 4th ... I’ve gotten the lightest question on javascript (now it seems like nonsense to me to write my own implementation of the bind function, but then I didn’t know what it was doing, because on js I wrote only a light front-end for his diploma), and then there was a design for 40 minutes.

After returning home, I got up at 5 am every day, since the time difference of 13 hours is not sickly. And one morning I read at the post office: unfortunately ... Immediately it somehow became sad! But already so simply I did not want to retreat! I responded to the letter that if I do not come to work now, maybe then for an internship? A couple of days I was given consent. Dates: from September to mid-December. It became clear that I was missing the sports programming championships that I had been waiting for and preparing for all this time. And at that moment I realized that my career as an Olympiad ended in favor of another direction. I must say that a couple of months before I left I started to read books, articles (still I didn’t make out a bunch of tabs from Habr), but the level was still very low. I did not know how and did not know a lot of things, but then it did not seem terrible to me.

Internship

For a couple of weeks, I was told that the team I will have is Site Integrity - we will fight spam and hacking. Absolutely not familiar with this topic. But there is nowhere to go - flew on an internship.

The interns are given apartments - 4 people in the apartment, 2 - in the room. The rent of the apartment has already been paid and there is no need to pay a communal flat. Since I wanted my wife to fly to me for a couple of months - for me it was not an option. In the group for Facebook, for interns, we wrote off a guy from Canada - he also wanted to rent a house himself. We agreed to be neighbors. When I arrived, my future neighbor said that he had been unable to find an apartment for 2 weeks. I had 4 days before the start of the internship and I began to search. Found an ad - go, did not like. And next to it I saw another house - I went there and everything was already cool there! We rented a 2-bedroom apartment + living room for $ 2020 per month. They also rented a car. True, I went to work on the shuttle - these are such minibuses from the company - only employees drive them - very convenient. Now, for example, in our shuttles there is also Wi-Fi, and I listen to Coursera courses on the way to work and home. So, housing was found, the internship began.

To be honest, at first it was very difficult - the team didn’t understand well, the tasks were terrifying, but I worked 12-13 hours a day and went to work on the weekends - 6-7 hours. My manager did not help me as it should, I did everything myself. At first, I didn’t understand the importance of questions - ask! - I was embarrassed, I felt uncomfortable because of my English, so the first month dealt with each piece for a very long time. Then it went faster. In the end, I was already fluent in the code, understood everything and answered the questions of newbies. So I got a code reading skill, which is very helpful now. All the tasks I have done. Much has gone into production. It was nice to hear from a friend with whom we started an internship (he was given an offer after and he now works on facebook) that he recently understood my code.

I will try to summarize the internship:

Office

Recently, we were in a new Facebook office - this is not the case! He, of course, is big, there are a lot of cafes, but then we worked in Palo Alto. Small office (relatively), but very cool! Tennis, near the basketball court, table football, a lot of sofas, slot machines, posters, just hack atmosphere.

Food

In companies of this level are usually fed for free. Three times a day and very tasty! At the beginning, the feeling of a buffet somewhere in Turkey and I want to try everything. It achieves that a bunch of micro-kitchen with sneakers, twixes, M & M drums, etc. More refrigerators with any drink you want and everything is free. I gained a pound of weight ... well, a lot. Now I am back to my weight and I do not repeat such mistakes. My method is to take snacks all day in the kitchen and try to take only nuts and yoghurt. And for lunch, breakfast and dinner, do not take cakes, but only fruit (which is also very much).

People

The guys are very cool. Highly! And everyone is friendly. Anyone throws everything, if you ask him something and explain it. Having worked this way, I myself became like this. The team learns a lot. You still learn a lot by reading the code on code review. I learned a lot of very cool hacks C ++ and javascript. If you set a goal to learn and ask yourself - you will very quickly become a teacher yourself :)

Conditions

I worked on a 15 inch macbook pro. Then I moved to poppies, although the first week did not understand how to use it. Any software is free (if at work, of course). 32-inch monitor in the office, ergonomics everywhere - I ordered a Microsoft natural ergonomic 4000 keyboard - brought in 20 minutes. They gave iPhone 4S (then it was in fashion) with unlimited internet and calls all over the world (also not impudent, because no limit - it’s just the company’s account). In general, everything is for you, just write the code. Now I ordered a Kinesis , ergo mouse and all this was given to me!

Programming and technology

Separate item. I'll tell you how I worked on the internship.
First, I learned to use the terminal. find, grep is just a treasure. I began to use VIM. Not just like that, but it came to the point that I demolished all the IDEs. I will definitely share my config for VIM, if someone is interested! Moreover, I am now adding my plugin for Wim, but this is covered in another article. Git is what I didn’t know and learn. Code review - without it, it’s not at all clear how to work. After all, the idea is excellent - check the code before sending it. To avoid unnecessary refactoring, unnecessary bugs, so that everyone already knew what you wrote, and did not recognize it by chance, after a month, when you spent N hours, to write the same feature. That's basically all. This is all you need to work! And now I use all the same! On Facebook, it's a culture in general - a “hacker” culture. During this time I started working on javascript, python, java. I continue to write in C ++. I learned a lot of patterns and subtleties, a bunch of new tools and techniques.

Salary

Big. Highly. True, the taxes are also not small, but some were returned on return.

Friends and acquaintances

Everything is clear without words.

What's next?

One more line appeared in my resume. Thanks to her, I received a couple of dozen interviews and now I work at the central office of Google . My level is growing dramatically. There are tons of job offers at the post office. Many hackathons, their projects, teams, people who are addicted to the same! Then in 2011 I did not think that in 2 years I would be where I am now!
I described everything crumpled and briefly! If you have questions - ask in the comments, I will answer with joy!

PS
I was interviewed when I returned from an internship. Who cares - here is the link .

Pps
Email me if you want to try your hand at Google! I will answer all! My VC page has already felt the start of the habroeffect, so I think it is better to email alexffeta@gmail.com - do it in the [TryGoogle] topic - I will tune this filter!

Source: https://habr.com/ru/post/167561/


All Articles