Role Overview
We are looking for a skilled engineer who combines development capability with a quality mindset to drive the validation of our system architecture. In this role, you won't just run tests, you will utilize your C++ and scripting skills to debug system-level issues, build automation tools, and analyze performance data to ensure seamless compatibility on future devices.
Key Responsibilities
- System Compatibility & Validation:
- Validate app compatibility and solutions on devices and emulators.
- Execute continuous validation tests across various software build channels (Weekly, Quarterly, Main Dessert, GKI, and Dogfood builds).
- Automation Development:
- Develop and maintain automation scripts and tools to streamline bug analysis and test execution.
- Create automated workflows to maximize test coverage and reduce manual effort.
- Defect Management (Triage & Debugging):
- Analyze native crashes and logs (C++/System level) to identify root causes.
- Triage test failures, distinguishing between specific issues and general system regressions.
- Monitor failure rates to differentiate between bugs and environment flakiness.
- Performance Analysis:
- Conduct benchmarks (Standard, Micro, ACT, Boot-time) and monitor for memory regressions.
- Reporting:
- Maintain the Test Tracker with daily updates and generate comprehensive bug/status reports.
Requirements (Must Haves)
- C++ Development Experience:Strong proficiency in C++ is required. You must be able to read and analyze native code to debug crashes and understand system behaviors.
- Scripting & Automation: Proven ability to write efficient scripts (e.g., Python, Shell/Bash) for data processing, log analysis, or test automation.
- System Validation Experience: Experience in software testing, QA, or system validation with a strong grasp of the bug lifecycle.
- Android System Knowledge: Familiarity with the Android ecosystem, including ADB commands, flashing builds, and working with emulators.
- Troubleshooting & Debugging: Strong analytical skills to read complex logs, perform triage, and isolate the root cause of failures (e.g., App crash vs. System hang).
- Communication & Documentation: Diligent in documenting findings and updating status reports accurately.
Nice to Have (Bonus)
- Linux Kernel / OS Fundamentals: Knowledge of Page Size (4KB vs 16KB), Memory Management, or Kernel internals.
- Performance Profiling: Experience with performance benchmarking tools and data interpretation.
- Test Frameworks: Experience with Android automation frameworks (e.g., Tradefed, UIAutomator).
- Google Ecosystem: Familiarity with GKI, CTS/VTS, or internal Google testing tools.