Google wants to grow. Some would call the growth plan aggressive, others call it insane. I prefer to think of it as ambitious. While the exact numbers are sometimes tough to come by, you can get some approximate numbers on many websites. Take for example, the numbers here. If these numbers are to be believed, Google grew at a rate of 100% per year for the past two years. For a company with several thousand employees, this is pretty good. The growth rates show Google passing Microsoft by 2010. Of course, it's very unlikely that the growth rates can be sustained. But we want them to be.
First, it's clear that we could hit these goals in the short term. We get many, many, many resumes a day. In fact, if we hired everyone that applied, we could probably double in one day. Is this a good idea? Probably not. Clearly, many of the applicants would not be qualified, meaning we would not necessarily get much production from many of the hires. Worse, many of the hires may not be "Googley". I personally believe that this is the most dangerous hire to make.
This deserves more attention, because I haven't seen enough focus placed on this in any other company. Anyone who does not fit the culture of their group, office, or company is very damaging. For example, when I interview someone, the only attribute of a candidate that essentially guarantees an unfavourable review (from me) is arrogance. Don't get me wrong - some people are absolute superstars and they should be confident and proud. But Google is full of smart people, many whom were at the top of their class and were suffocating in school or in other work environments. I don't care who you are, you're applying for a company that employs Vint Cerf. This guarantees one thing - no matter who you are, you will no longer be the smartest person in your company. This is a good thing! This is (or should be) why you want to be here.
Google offers lots of benefits. Everyone's seen the cafeterias, the massage chairs, the gyms, the prestigious visitors, the big monitors... whatever you consider a benefit - Google probably offers it free. But this is not why people want to work for Google. They want to work there because some of the greatest minds in the world are there. People at Google solve interesting problems in interesting ways, because some very smart people are bouncing ideas off even smarter people. If you were in the top 1% of your class, this is probably the exact environment you've been dying for all these years.
Okay, enough of that... Back to the matter at hand. How can you possibly sustain this growth rate (intelligently):
1) Don't lower your standards. Google has lots of smart people now and these people love working with/for other smart people. It's extremely valuable to know that (nearly) every line of code you will come in contact with was written by someone you can trust. There's nothing more frustrating than struggling with code, or a person, or a group that you don't think you can trust. This means you need to believe that everyone in the company knows how to identify, formulate, and solve problems intelligently.
2) Get a lot of referrals. Referrals are (and have always been) the best source of potential candidates. It's often the case that good, smart people know other good, smart people. They may be former classmates, co-workers, friends, anything. There are clear advantages to these people. For one, they probably come with positive comments and information, before you even interview them. Second, they have some attachment to the company, however small, through their referrer. Third, they often consider referrals flattering. I think lots of people would be happier having a company that wants to woo them, as opposed to having to seek out companies to sell themselves to.
3) Get a lot of resumes. No matter how many people you have, they aren't connected to everyone. Always allow people to apply directly and be diligent about finding the best resumes as they arrive. This bring us to...
4) Filter aggressively. This may seem cruel, but is very important. Interviewing a candidate is very expensive. A phone interview is not as expensive, but still requires anywhere from 30 minutes to 2 hours for someone to prepare for the interview, conduct it, and write feedback. It's frustrating (and sometimes even depressing) for an employee to interview candidate after candidate that is clearly not qualified. This means you want to get to the point where most (or ideally all) candidates that you contact have some reasonable chance of succeeding. This is important because it reduces the strain that the hiring process places on existing employees. Perhaps even more important is that it reduces the negative impact on unsuccessful hires. This brings us to...
5) Try to make the process pleasant. Not everyone is going to get hired. This is a fact at any company. And in a company with a very selective interview process like Google, most people will not get hired. Or at least, they will not get hired on their first try. Not getting hired sucks. You can find many blog posts on the web about people who were mad about not getting hired. They blame the interviewer, the company, the weather, anything. This reflects badly on the company and fosters an unpleasant image of the company's hiring process. There are two important scenarios here: 1. If someone does not get hired (but nearly did), you want them to want to try again. Make sure they enjoy their process, get them excited about working for your company, and encourage them to try again. In a commitee-based hiring process (like many companies, including Google, use), if you nearly get hired this time, you may get hired next time. Companies strive for consistency in the process (and this is especially true of Google), but the process is never precise enough to always make the right call on cases which are not clear-cut. The process should always work for the superstars (the top, say 20-30% of your hires) and the definite not-hires, but in a competitive hiring environment (like Google's) the other 70-80% of the current employees are probably "borderline hires". By this, I mean, for example, that if they went through the same type of interview process 10 times, at least one or two of those times, they would not pass. If this represents the majority of your current employees, it will likely also make up the majority of your future employees. Protect this resource! 2. If someone does not get hired because they are clearly unqualified, you want them to enjoy their process but accept that this is not the job for them. There are many smart people, who simply apply for the wrong job. We want them to enjoy the process (even if they didn't do that well) and understand that it's not that they're not smart, but simply that this is not the job for them. Keep them in good spirits and thinking positive about your company and how you treated them. They might have friends that are a perfect fit and you don't want to lose them.
6) Hire everywhere. This is obvious, but is key. If you can set up offices all over do it. If not, travel everywhere to find the best people. Seek them out and bring them in. This subject doesn't get me as passionate as (5) though, so let's leave it there.
I spent the most time talking about point (5) and there's a good reason for this. This is the one thing companies seem to worry the least about. Lots of people leave their interview unhappy. And when they don't get hired, they carry around a grudge. Your company does not want people carrying grudges around. The tech sector is large, but the clique of top people in the tech sector is small. Part of staying on good terms with these cliques is keeping everybody as happy as possible, whether things go well or badly for them.
If you take nothing else away from this, take this one thing that I now firmly believe is essential to growing quickly and effectively: be good to both the hires and the passes.