Sr. Staff QA Engineer - SoC (AI2125)

Engineering - QA & Tools Bengaluru, India


Description

Job Description

The QA Engineer - Firmware is responsible for validating the correctness and verifying the quality of system firmware and related projects throughout the SiMa architecture. The position requires the ability to work with engineers to understand the system requirements and intended behaviors, write comprehensive test plans to specify the verification and validation criteria, and implement the tests to perform the verification and validation. Extensive experience with firmware and chip-level testing as well as programming in C/C++, python, shell, and other languages is required. Excellent communication skills are necessary to work with the engineering team and other QA team members to design and refine the tests and test plans.

Responsibilities:

  • Lead, mentor and guide QA engineers
  • Work with engineering team members to develop test criteria based on design goals
  • Identify key points for validation, intended results, and corner-case scenarios for testing
  • Write comprehensive test plans describing the verification and validation criteria
  • Implement tests using C/C++, Python, Shell, or other language as appropriate
  • Automate testing using Jenkins scripts
  • Collect test results and create reports to summarize successful tests
  • Track down underlying causes of test failures, work with engineering team to resolve
  • Refine tests and test plan as new criteria or corner-case conditions are identified
  • Maintain code in BItbucket, tasks in Jira, and documentation in Confluence
  • Collaborate with other QA team members to review and refine their test plans, perform code reviews, and enhance team performance

Requirements:

  • Minimum 10 years experience with:
    • Writing test plans and implementing tests for firmware projects
    • Very strong coding skills in C/C++, Python, Shell, Groovy
    • Working in a collaborative team environment with other QA engineers
    • Software debugging/troubleshooting skills in Python and C++
    • Working with automated testing and reporting in an Jenkins environment
  • Linux OS experience with Centos and/or Ubuntu systems
  • Experience in Linux kernel and device driver testingĀ 
  • Authoring in Confluence, Draw.io, and similar tools
  • Project/task management using Jira
  • Code repository management using Bitbucket or Github
  • Excellent written and verbal communication skills.

Desirable:

  • Experience with build/test processes for a Linux-based firmware product.
  • Experience using AWS- or VMWare-based virtualization platforms and Docker containers.