Is there any way you could give your first-reaction answer for "what is the worst thing about working at Google?"
If you care a lot about programming languages, you're going to be frustrated. Python: deprecated in production. That leaves Java and C++, which are le suck. Go is genuinely decent but none of the legacy projects (what you'll be tasked on in your first 18 months) are in it.
If you don't care about PL quality or actually like reading thousands-of-lines-long legacy C++ modules (some people do, and it's great for the world that "Sherlock Holmes" types exist).
Google has a lot of pluses, too, and if you get put on a good project it's pretty neat. Plus, the food is awesome (better than what most restaurants serve).
I don't know where you get the notion that Python is in any way deprecated. I'd hope to know, as both a customer of Python @ Google and a part maintainer of some core Python libraries there. It _is_ discouraged for large projects, but there's a ton of glue in Python and more shows up all the time.
Also, I know plenty of people that started working on non-legacy projects, and I'm working on a legacy project and find it fantastically fulfilling.
"Deprecated in production" may be taking it too far, but there's an attitude there that Python is a third-class citizen and the Real Language Of Google is C++, with Java a solid second in the context of acquisitions.
To be reasonable about it, I understand this impulse. Python is a pretty poor language to design large-scale systems in. I don't like C++, but one thing I've learned in using Scala and Ocaml is that static typing is a major asset, and that dynamically-typed programs can rot very quickly (even if written in the functional style).
Hi, I just started at Google ~4 months ago in NYC.
> Python: deprecated in production.
I have no idea where this idea came from.
> the legacy projects (what you'll be tasked on in your first 18 months) are in it.
This is not an accurate generalization. I've been developing completely greenfield Java and Python code since about 3 weeks into starting.
> If you don't care about PL quality or actually like reading thousands-of-lines-long legacy C++ modules
I'm quite curious what role had you "reading thousands-of-lines-long legacy C++ modules" - all the typical C++ infrastructure modules I've used (eg Bigtable) have tons of resources to learn them, and after that I typically find what I need reading auto-generated docs (doxygen/javadox/pydoc/etc).
If you care a lot about programming languages, you're going to be frustrated. Python: deprecated in production. That leaves Java and C++, which are le suck. Go is genuinely decent but none of the legacy projects (what you'll be tasked on in your first 18 months) are in it.
If you don't care about PL quality or actually like reading thousands-of-lines-long legacy C++ modules (some people do, and it's great for the world that "Sherlock Holmes" types exist).
Google has a lot of pluses, too, and if you get put on a good project it's pretty neat. Plus, the food is awesome (better than what most restaurants serve).