The Flutter Engine is a high performance 2D graphics engine written in C++ that drives the Flutter tech stack. It orchestrates lower-level dependencies such as the Dart VM, Skia, the OS, and platform-specific APIs to provide a unified, platform-agnostic API to the Flutter framework and applications.
The Flutter team is looking to improve the performance, size, stability and graphics beauty provided by the Flutter Engine. To that end, we’re seeking software engineers to join our team and contribute to this effort.
In the “Engine Engineer” role, you’ll be part of a team that is tasked with the following mandates:
- Give app developers the ability to create smooth, jank-free animations while keeping CPU and GPU utilization low.
- Coordinate communication between many different hardware and software components while keeping memory footprint low.
- Triage and address crash reports to make Flutter apps stable and delightful.
- Render Flutter apps beautifully.
- Nurture a thriving community of contributions from open-source developers by reviewing GitHub pull requests (PRs).
- Build new features and optimizations in the Flutter Engine.
- Expand the Flutter Engine's capabilities to new platforms, form factors, and resource constraints.
- Work directly with Flutter's high-priority customers to solve Engine issues.
- Participate in shared team responsibilities like issue triage, code review, design review, and bug fixing.
You must meet these minimum qualifications to apply for this job
- Software development experience in one or more general-purpose programming languages
- Proficient in written and verbal English
- Enjoys working in a team environment
- Self-motivated and possesses a good work ethic
Having these qualifications is a plus, but transferable skills/experiences may be equally valuable
- Experience with two or more of the following: performance debugging and optimization, low-level crash debugging, mobile application development, concurrent/multithreaded programming, graphics rendering pipelines, and/or developing large software systems.
- C++ and/or Dart experience
- Possesses a good sense of API design
- Enjoys learning new technologies
- Systems thinking and analysis: an ability to see how things might fail in unexpected ways
- Can efficiently navigate ambiguity by evaluating potential solutions and weighing pros and cons
Please send the following to firstname.lastname@example.org:
- A resume outlining your relevant experience
- A short introduction describing why you think you’d be a good fit for this position
- The preferred method by which you’d like Google to contact you