System Engineer - Android AVD Builds
Role details
Job location
Tech stack
Job description
The Virtual Android team is a new core team in our Virtual Device Infrastructure product line. It is responsible for ensuring that our infrastructure can scale to the ever increasing customer demand, automating operations and leading innovation through research and development around emulation and virtualization.
As a core team member, your role will evolve around system design, development, product maturity, and scalability. This dynamic, nascent space means varied daily tasks, from debugging and coding to automating system image production, offering significant learning. You'll also collaborate with Product on features, roadmap planning, and cross-functional teams.
As a System automation engineer you will:
- Optimize our Android Emulator release pipeline.
- Help improve the infrastructure stability and reliability.
- Optimize resource allocation around Android emulators.
- Implement testing scripts and monitor critical product metrics for regressions.
- Resolve production issues swiftly.
- Own backend services and help modernizing them.
- Automate manual tasks and help the team accelerate., * Solve infrastructure scalability issues
- Build, optimize and maintain our X86 and ARM Android emulator offering
- Automate our AVD release cycle while improving confidence through testing
- Apply monitoring tools and methodologies for high observability standards to reduce MTTR.
- Expose and maintain metrics to ensure data driven decision making.
- Build, maintain and distribute Cuttlefish emulators from AOSP source.
- Own the solution end to end, from planning, designing, testing, implementing to monitoring.
Requirements
Do you have experience in Virtualization?, * 5+ years of Software Development experience
- Experience with the Android OS and tools (adb, AOSP, build-tools, make)
- Experience with Android emulators (Goldfish, Cuttlefish)
- Expertise in KVM, QEMU or other virtualization platforms
- Kubernetes, docker and LXC experience
- Experience coding in Python or any other scripting language
- SysAdmin experience, analyzing system-wide functional and performance regressions, tracing and profiling applications
Nice to Have Skills:
- Experience setting up CI systems (Jenkins, TravisCI, CircleCI, etc)
- Being comfortable with Android app development
- Familiarity with OS and file system-level tools; profilers (perf, pprof), debuggers (gdb, lldb), tracers (ptrace, linux bpf, dtrace) and build tools (repo, make, gradle)
- Experience with cloud infrastructure (AWS, GCE or Azure)
- Skills in automating build processes and system provisioning using Bash, Ansible, Terraform, Packer or similar technologies