About the job:
Google Cloud's software engineers develop the next-generation technologies that change how billions of users connect, explore, and interact with information and one another. We're looking for engineers who bring fresh ideas from all areas, including information retrieval, distributed computing, large-scale system design, networking and data storage, security, artificial intelligence, natural language processing, UI design and mobile; the list goes on and is growing every day. As a software engineer, you will work on a specific project critical to Google Cloud's needs with opportunities to switch teams and projects as you and our fast-paced business grow and evolve. You will anticipate our customer needs and be empowered to act like an owner, take action and innovate. We need our engineers to be versatile, display leadership qualities and be enthusiastic to take on new problems across the full-stack as we continue to push technology forward.
Responsibilities:
Be an subject-matter expert (SME) on networking features, own end to end from design definition, collaborate on standardization across vendors, implementation to verification.
Analyze and solve technical problems within our software systems, with guidance from senior engineers as needed. Be an equal partner in framing problems and solutions. Being open-minded, and considering the problem from many perspectives.
Write high-quality, well-tested, maintainable, and well-documented code. Participate in code reviews to ensure software quality and share knowledge.
Work effectively with team members and partner teams to understand requirements, contribute to technical solutions, and deliver features.
Develop an understanding of the networking domain and technologies relevant to the team's goals.
Minimum qualifications:
Bachelor's degree or equivalent practical experience.
5 years of experience in software development using one or more general-purpose programming languages (e.g., Go, C++, Python, Java).
3 years of experience testing, maintaining, or launching software products, and 1 year of experience with software design and architecture.
Experience with development in a Linux/Unix environment.
Preferred qualifications:
Master's degree or PhD in Computer Science or a related technical field.
Experience with large scale software systems (scalability, reliability, distributed systems).
Understanding of computer networking concepts (e.g., TCP/IP).
Familiarity with Google remote procedure call (gRPC) and Protocol Buffers.
Passion to learn and collaborate with other geographically distributed teams.
Ready to apply?
Sign up first — takes a minute — and you get Hiro’s take on this role, a resume tailored to it, and (if available) a referral from a real employee at Google. All free with your Pro gift.
Sign up to apply