About The Position

Google's software engineers develop the next-generation technologies that change how billions of users connect, explore, and interact with information and one another. Our products need to handle information at massive scale, and extend well beyond web search. 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’s needs with opportunities to switch teams and projects as you and our fast-paced business grow and evolve. 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. As a Senior Software Engineer, you will move seamlessly from high-level software logic down to pipeline-level micro-architecture analysis. You should be comfortable with fast-paced, high-stakes engineering environments where "constantly learning" is a requirement, not a buzzword. You will use your experience on compiler-assisted performance engineering such as JIT compilation, symbolization, compiler-assisted profiling or analysis, code generation analysis, interaction between compiler optimization and micro-architectural innovation. Our work also allows for deep-diving into Android system software stack. Google's mission is to organize the world's information and make it universally accessible and useful. Our team combines the best of Google AI, Software, and Hardware to create radically helpful experiences. We research, design, and develop new technologies and hardware to make computing faster, seamless, and more powerful. We aim to make people's lives better through technology.

Requirements

  • Bachelor’s degree or equivalent practical experience.
  • 5 years of experience with software development in one or more programming languages.
  • 3 years of experience testing, maintaining, or launching software products, and 1 year of experience with software design and architecture.
  • 2 years of experience conducting full-stack performance analysis on software systems.
  • Experience with compilers (e.g., LLVM, Clang) or Android toolchains.

Nice To Haves

  • Master's degree or PhD in Computer Science, or a related technical field.
  • Experience in compiler construction for C/C++, Java or JavaScript.
  • Experience in Android toolchains, runtime and symbolization.
  • Experience conducting full-stack performance analysis and optimization on complicated software systems.

Responsibilities

  • Develop tools and perform in-depth analysis on complex workloads to identify performance bottlenecks or correlate bottlenecks with user source code (C++/Java/JavaScript).
  • Partner with Android workload owners, toolchain experts, and device teams to implement full-system optimization solutions.
  • Plan and evaluate architectural features, providing data-driven insights that shape future SoC designs.
  • Act as a technical pillar for the team, mentoring junior engineers and driving strategic deliverables.

Benefits

  • bonus
  • equity
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service