Header

Software Engineer - Mountain View

This position is based in Mountain View, CA. There are related positions available in Irvine, CA; San Bruno, CA; San Francisco, CA; Los Angeles, CA; Boulder, CO; Chicago, IL; Cambridge, MA; New York, NY; Pittsburgh, PA; and Seattle/Kirkland, WA. Relocation assistance is available.

The area: Software Engineering

Google's software engineers develop the next-generation technologies for which we've become world-renowned. In addition to revolutionizing search technology, we use our world-class programming skills to innovate in a number of other areas as well. Our projects include working on advanced information-retrieval algorithms, massive scalability and storage solutions, and large-scale applications that enrich the user experience. We also work extensively on networking systems, advertising systems and complex transaction systems in consumer applications.

The role: Software Engineer

Software Engineers have a penchant for solving complex and interesting problems. Google is much more than search, and our mission has much greater scope. To handle information at the scale of the web requires ideas from just about every area of computer science, including information retrieval, artificial intelligence, natural language processing, distributed computing, large-scale system design, networking, security, data compression, user interface design, etc.

Engineers work on many projects that carry varying responsibilities. Below are some examples of the diverse projects with which you might be involved.

Responsibilities:

  • Write server-side code for web-based applications, create robust high-volume production applications, and develop prototypes quickly.
  • Build our platforms, systems and networking infrastructure using your strong background in distributed systems, OS/kernel, network system design, and large scale storage systems.
  • Build internal systems used by thousands of Googlers around the world with your domain expertise in HR, Staffing, Legal, and all other corporate functions.
  • Specialist domains: UI development with AJAX and similar technologies, client application development for Windows/Mac (Chrome, Toolbar, etc.), embedded systems and mobile apps (Android), developer tools (IDEs, large-scale build systems, compilers), internationalization.

Requirements:

  • BS, MS, or PhD in Computer Science or related technical discipline (or equivalent).
  • Extensive programming experience in C/C++ and/or Java (strong OO skills preferred).
  • Several years of large systems software design and development experience, with extensive knowledge of Unix/Linux.
  • A solid foundation in computer science, with strong competencies in data structures, algorithms, and software design.
  • Coding skills in Python or Javascript/AJAX, database design and SQL, and/or knowledge of TCP/IP and network programming are a plus.

Software Engineer - Mountain View