For most engineers most of the time, the job isn't politics or performance reviews. It's writing interesting software with talented teammates.
(Counterexamples of course exist, and a handful of vocal ones certainly like to chime in on threads like this. But if it weren't still mostly good for engineers at Google, Google wouldn't still employ the great engineers it does. But it does have great engineers to this day, so something is still going mostly right.)
What led to me becoming one of the vocal ones is what happens when allocation fails and there's really no resort other than trying to fit in doing something completely uninteresting or leaving. Google seemingly does not acknowledge that the allocation process is in any way flawed.
My mistake was I should have insisted on an allocation upfront as a condition of accepting the offer made to me. After acing the interview, all the power was in my hands and I failed to make use of it.
Certainly correct, although I have worked at a number of other companies (an investment bank, Microsoft, a startup, and in management consulting) so I was using those as benchmarks.
Thanks for reading!
Sorry OP, your opinion is almost certainly wrong.
Does this mean your opinion about my opinion is almost certainly wrong as well?
Snide comments aside, thanks for reading!
Disclaimer: I currently work for Google and I like a lot of the things here. The company culture that you see every day really is refreshing and encouraging, but deep down, we are individual human beings with different motivations and drives and want different things. There are many people who join and leave Google every day, an considering the size of the company, I can guarantee that not everyone works on those "moonshot" problems every day either.
Google is a fantastic company, but using a 3 months experience to generalize the entire workforce and culture of a company this size is a bit ambitious.
The two biggest points I think are fairly true:
1) Google engineers are very passionate about transparency, and collaboration.
There are way way less engineering prima-donna hot-heads at Google than other companies. The kind of Linus Torvald-style rants and flame wars are extremely rare internally, and many people are happy to help and mentor. I've worked at IBM and Oracle and there were plenty of shouting matches between alpha-male hackers battling egos.
Secondly, secrecy pisses people off. To give you an example, there was a high-profile flop that started life as a secret project until it was almost ready for release, and it drove a lot of internal disharmony. In fact, one of the reasons listed in the post-mortem for the product flopping was the fact that it was developed in secret. Googlers don't like secrecy.
2) The engineers are world class, period. Jeff Dean. Rob Pike. Etc. 'Nuff Said. It's possible in a smaller company to be a big fish in a small pond. It's part of what drives the big, hot-headed egos of engineering prima donnas. They're the shit, because they might have 10 other junior engineers around them who are far less knowledgeable. You can't really get away with those kinds of attitudes at Google, and that may be part of the reason for the more relaxed, cooperative humility ('googliness'), because many of your peers are just as good, if not better, than you.
The grey areas are this. As Google becomes larger, the probability of a shitty employee being immature and leaking to the press goes up. As a result, Google is not as wide-open internally as it used to be. Some of the bad employees have spoiled it for the majority. Moreover, to my dismay, many of Google's attempts at federated, open protocols have failed in the marketplace. Open doesn't always win, or, takes a long time, and the success of closed silos of competitors I think has taught some Google product teams the wrong lesson, and forced it to compete on the same grounds of its competitors. Hopefully, eventually when things reach saturation and commodification, they'll be a return to setting standards, but I'm cynical. Apple has the whole industry thinking open specifications are bad because you can't make arbitrary changes to them to vertically integrate and suit your needs. And Google's years of supporting XMPP federation did nothing to get AOL, Yahoo, Microsoft, Apple, et al on board. You can't say Google didn't try, they ran GTalk for years, but none of the big players with 10s or 100s of millions of users played along.
But even discounting this (naysayers will cry foul at the fact that it technically is a separate company), I think organizing the world's information is certainly an extremely difficult problem. And certainly one that Google is attempting to solve in more ways than search.
Also - self driving cars? Certainly you will agree that is not trivial.
That's pretty hard.
To say what Google does is "monetizing searches" is like saying Walmart operates cash registers. True, but hardly the whole story.
Working on monetization isn't, AFAIK, what Google engineers do, that's what Google business folks do.
Google engineers work on things like natural language processing for conversational search, or predictive algorithms for identifying information needs in advance and providing them at the right time without requiring an active search -- and that's just for Google's fairly prosaic mainstream products, not the GoogleX/Calico/etc. moonshot kind of work.
The everyday things you use, like Google Maps, have incredibly sophisticated pipelines behind them. I'm not talking about serving up image tiles, I'm talking about the software that processes satellite, aerial, and street view imagery and stitches everything together into a coherent whole, while doing things like using machine learning to recognize signs, text, objects, building outlines, etc.
It all works so smoothly and so well most of the time that people don't even know all of the work that goes into it. Just parsing a question for meaning in search is a very very hard problem. What Siri does is kind of a joke compared to what's really required to make things work as they should.
Unlike the main office, most people don't have to choose between commuting from SF or living in Mountain View, because Venice/Santa Monica is actually a nice area to live in :). Naturally, the breadth of projects is not as big as in Mountain View, but there's a number of exciting things happening here (computer vision, quantum AI etc).
I bet you have a few surfers there! I'd kill to work next to the beach. Nothing beats a good early morning surf session. (Figuratively, of course)
I didn't work out of any remote office full-time, but I visited seven satellite offices during my time there (nine if you count YouTube/SF). They were all unique and awesome.
Also, at least in my case, I don't get that "satellite office" feeling from the work I'm doing. The people I need to talk to most all sit within Nerf gun range.
I also work at the chicago office and we work on interesting and hard problems that keep me engaged. We are a remote office but it doesn't really feel like that's a hindrance.
There are challenges to being remote obviously but I don't feel like I'm missing out on anything critical.
As for actual work, projects seem randomly distributed, with some weight towards Mountain View since it's so much bigger than the other offices.
I've heard great things about the New York offices as well as the Zurich, Tokyo, and London offices though!
Personally, I've talked to Googlers all over the world and there seems to be a consistency in openness and passion.
What struck me the most going through the office is that the office setup and benefits seem to excel at getting out of your way. If you need something, it's there. You have privacy, you have food, you have people around, you have quiet. Whatever you need is already there.
It seems like in an environment like that it would be easy to get work done because distraction would be at a minimum and context switching would not occur as often.
I'd love to work in an office like that one day.