Job Overview
- Create software/firmware test plans, addressing requirements traceability matrix and test coverage, with respect to feature requirements
- Design, develop, execute and maintain automated software/firmware test suites for the purpose of verifying quality and compliance of Qualcomm products at functional, integration and system levels
- Manually test, where appropriate, the customer experience of installation and deployment of Qualcomm hardware and software in a mobile, compute and automotive environment.
- Assist in the creation of a Quality Engineering/Release engineering process with emphasis on continuous integration and continuous deployment
- Assist in achieving production-level software readiness, implement customer use-cases, workload analysis models, workload creation, and collaborating with other teams on bring-up/debug/diags
- Focus on ensuring that existing Operating Systems and customer usage environments run well, while identifying strong opportunity for enhancements, from a power and performance perspective.
Minimum Qualifications:
Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 6+ years of Software Engineering or related work experience.
OR Master's degree in Engineering, Information Systems, Computer Science, or related field and 5+ years of Software Engineering or related work experience. OR PhD in Engineering, Information Systems, Computer Science, or related field and 4+ years of Software Engineering or related work experience. 3+ years of work experience with Programming Language such as C, C++, Java, Python, etc.
Bachelor's degree in Engineering, Information Systems, Computer Science, or related field and 4+ years of Software Engineering or related work experience.
OR
Master's degree in Engineering, Information Systems, Computer Science, or related field and 3+ years of Software Engineering or related work experience.
OR
PhD in Engineering, Information Systems, Computer Science, or related field and 2+ years of Software Engineering or related work experience.
2+ years of work experience with Programming Language such as C, C++, Java, Python, etc.
Preferred Qualifications:
- 8+ years of experience in Software/Firmware Validation
- Demonstrated software test engineering in SW/FW engineering with focus on Data Center Servers (minimum 5 years).
- Strong understanding and experience in software/firmware test automation techniques
- Extensive experience working with operating systems like Ubuntu Server, RHEL, SUSE, similar or Windows server
- Work with multiple SW/HW Engineering teams to ensure that all requirements and features of reference platform requirements have been validated at a component, integration, functional and system level
- Strong programming skills with experience in C and/or Python programming languages
- Experience developing automated software/firmware test cases for server platforms, supporting bring-up and production SW releases
Nice to have:
- Prior Experience with SW/FW integration at BIOS/UEFI, BMC firmware, Operating System for x86/ARM64/RISC-V 64bit for server platforms.
- Strong understanding of Server firmware Standards, opensource Implementation and specifications for ARM64-based servers
Principal Duties and Responsibilities:
- Leverages advanced Software knowledge and experience to design, develop, create, modify, and validate embedded and cloud edge software, applications, and/or specialized utility programs.
- Analyzes user needs, software requirements, and time and cost constraints to design and customize software for optimal operational efficiency.
- Designs and implements software modules for large-scale products and systems.
- Participates in and leads design, coding, unit testing, debugging, and integration efforts to ensure projects are completed to specifications and schedules.
- Performs complex code reviews and regression tests as well as triages and fixes issues to ensure the quality of code.
- Collaborates with individuals outside the software function (e.g., Hardware, Systems, and Test engineers) to ensure solutions work with other components of a specific project.
- Writes detailed technical documentation for complex Software projects.
Level of Responsibility:
- Works independently with minimal supervision.
- Provides supervision/guidance to other team members.
- Decision-making is significant in nature and affects work beyond immediate work group.
- Requires verbal and written communication skills to convey information. May require basic negotiation, influence, tact, etc.
- Has a moderate amount of influence over key organizational decisions (e.g., is consulted by senior leadership to make key decisions).
- Tasks often require multiple steps which can be performed in various orders; extensive planning, problem-solving, and prioritization must occur to complete the tasks effectively.