* The Software Engineer, Google.com position is a role that doesn't exist in most companies. * We are end-to-end owners of Google services, bridging traditional SWE Development and System functions. * They are ultimately responsible for engineering reliability into code, infras, OS, network, and processes used to help us scale Google. The buck stops here. * You are "root @ google", and are recognized as a go-to resource for building reliable services. With great power comes great responsibility. * Yes, you will spend much of your time doing software development. * We value automation and programmatic solutions much higher than human processing. * You will learn systems in a way most developers never see -- 1000s of machines, global traffic, etc. * Oncall is part of the duty for all software engineers across Google if you work on production services, in Google.com or any other "development" roles. * All Software engineering groups producing user-visible or production code have oncall rotations. * Google.com oncall rotations are generally more organized, larger, and less painful than most of other Software Engineering teams. You wont be getting pages at 2 in the morning unlike software engineers who might work on another development with less organization such as Google Groups. o Google.com chooses mature and important services for coverage, and have more dedicated staff to these roles. o Meanwhile, other software engineers (not Google.com) provide oncall support for their production service, irrespective of age or maturity of the code. * Many Google.com teams have timezone-shifted support so when you are oncall, it doesn't include overnights (i.e. you will get sleep). * What makes a good Software Engineer in Google.com ? How does this differ from being a regular Software Engineer? * Google.com likes "Generalists"; people who like to work on a wide diversity of technologies, or those who haven't yet decided where they want to specialize (versus those who know they wish to focus deeply on one or a few areas). * People who like problem solving, troubleshooting complex problems, optimization, and systems with many moving parts. * We do ask more of Google.com Engineers; the expectations are higher. But so are the rewards. * You'll need to learn greater breadth of technologies than in a normal Software Engineering role. * Many senior software engineers at Google have at one point in their Google career been part of the production team -- there's no other way to learn how things really work. * Production @ Google is where the action is, and where engineers learn how to write code that scales to millions of users. * In Google.com you will become experts on core Google technologies, which help us make software work at Google-scale, reliably. * You'll be an advocate and consultant to other engineering teams. * You'll learn how to understand failure, to engineer code better able at dealing with it. * Google.com engineers split their time (roughly) 50/50 between "interrupts" and "projects"; the % balance can vary from quarter-to-quarter and team-to-team. * Google.com engineers are responsible for incident response (i.e. emergency pages); while unavoidable at times, our approach is to code to prevent recurrence; fix the problem, and improve the service, rather than use humans as a brute-force solution. * Your mistakes can make the front page of the New York Times, but your positive changes can help millions, and/or can make millions. * Why is it great to be a Software Engineer in Google.com? * Dev projects are typically defined narrowly, based on specific product or project needs (e.g. write this specific library, implement this feature); Google.com projects tend to be more open-ended and broad, with scope defined by the individual engineers involved. * Software projects in Google.com don't require official "chartering" (approval process for engineer allocation); Software projects outside of Google.com do require a charter and approval for staffing before they can proceed. * Google.com engineers are trained to think about failure modes and production scalability of code and systems. Without experience in Google.com, regular software engineers usually learn these lessons "the hard way". * High risk, high reward. Opportunity for business impact. Ability to develop key skills for advancement in any software engineering team at Google. * If you are talking about prestige, the ability to work on mission critical teams such as the search quality team or an infrastructure team is about as prestigious as it gets.