* This all about a relatively small number of companies, all large, mostly trendy, mostly webby.
* mostly Bay area and their satellite campuses in a few other places.
* base salaries are higher than what I'm used to but not crazy higher unless one counts stock grants. When danluu casually drops numbers like 400K he's really talking about senior/principal folks in very elite job-tracks WITH very high stock grants.
* the data comes from people who have had "career trajectories" that brought them to this salary escalator. Career-changers, those of us with weird and varied backgrounds and those with rough starts are, generally-speaking, excluded from these kinds of salary expectations.
Will I read as senior even if I pass?
The backend interview lets you choose whatever language you want. You'll be asked algorithms, distributed design, code quality, and data-structure questions.
Generally speaking, if you focus too much on a programming language / stack, it comes off as a sign that you're not a good fit, since you emphasize programmer skills, but they're looking for engineers. Except for particular roles, like front-end dev, where they're looking for programmers with experience in the technology stack itself.
Provides list of the three languages you specifically need to code in.
Perhaps agnostic means something different in my language :p
It makes sense if you think about it. A small startup with 5 Python engineers can’t afford to hire one with heavy experience in Ruby and who knows a thing or two about Python.
First, it may be the case that this person can actually transfer their knowledge and do a good job with Python, but there’s also a chance they can’t and that will disturb the entire operation for a team that small, that’s a big risk.
Also, this person is not going to be paid as a Jr. Python because they have the options to be paid as a Sr. Ruby somewhere else, so the startup need to step up their pay game, now that’s a big and expensive risk.
A big company like Google, on the other hand, can afford to have that risk. If everything goes right, they end up with a great Ruby and Python engineer, if things goes wrong, Google is so big they probably have some other projects somewhere that can use a good Rubyst, and in the worst case scenario, if the person really can’t fit anywhere, a company like Google can still afford to let them go and eat the costs of a wrong hire.
edit: mav3rick has clarified below, it does indeed seem code agnostic.
Also, most Google jobs are language agnostic. You can code in pretty much one of C/C++, Java, Python, Google hires for generalists. Your Ruby experience is not what's holding you back, so don't get bogged down.