Overview
Senior SDET role focused on embedded firmware, building and extending host-based software-in-the-loop (SIL) test automation for C/C++ firmware.
What you'll do
- Analyze firmware requirements, architecture, C/C++ source code, design principles, and existing test procedures to identify test scenarios, establish expected behavior, and develop automated tests with clear requirements traceability.
- Adapt C/C++ firmware and its operating system and hardware interfaces to support host-based SIL execution.
- Develop and maintain Python test scripts, reusable libraries, hardware simulations, and test utilities within the existing SIL framework, extending the framework to support additional subsystems and products.
- Develop positive, negative, boundary-condition, and fault-injection tests covering functional behavior, interfaces, fault handling, recovery, and state transitions, including timeouts, sequencing, and concurrency-related behavior within SIL capabilities rather than assuming target-equivalent execution timing.
- Run tests, assess results, reproduce defects, and investigate failures throughout the firmware, interface adaptations, simulations, framework, and test code to distinguish product defects from test-environment issues.
- Integrate tests with Azure DevOps (ADO), GitHub, and CI workflows.
- Collaborate with embedded software, systems, architecture, verification, and quality engineers to improve testability.
- Develop repeatable, isolated tests with reliable setup and cleanup, clear assertions, versioned firmware and test configurations, review records, and retained results to support regression testing and use in formal verification.
- Improve framework reliability, simulation fidelity, execution efficiency, and test coverage; identify differences between simulated and target behavior that could affect test validity.
What you'll need
- Bachelor's or Master's degree in Computer Engineering, Electrical Engineering, Computer Science, or related field.
- 8–10 years of relevant experience grounded in hands-on embedded software/firmware development; experience limited to general software automation or SDET work is not a substitute for this foundation.
- Strong embedded C/C++ firmware development experience and understanding of firmware architecture, design principles, microcontrollers, peripherals, hardware interfaces, platform software, and abstraction layers.
- Hands-on experience with real-time operating systems (RTOS) and OS abstraction concepts.
- Demonstrated ability to learn new programming languages and tools, and willingness to build Python proficiency for test automation, framework extensions, and hardware simulation.
- Experience developing automated tests for embedded systems and using firmware design and source-code analysis to select test scenarios and investigate failures; prior SDET job experience is not required.
- Good understanding of real-time system fundamentals, including scheduling, interrupts, concurrency, timing behavior, communication interfaces, and fault handling.
- Experience with medical device software development and IEC 62304 lifecycle practices.
- Knowledge of risk-based verification, requirements traceability, configuration management, and objective test evidence.
- Familiarity with Python, particularly for test automation or engineering tools.
- Ability to develop clean and maintainable automation code.
- Ability to work independently and collaborate with cross-functional teams.
- Strong debugging, log analysis, root-cause analysis, and problem-solving skills.
- Attention to detail, structured thinking, and strong ownership.
- Ability to translate requirements and product risks into executable and traceable automated tests.
Nice to have
- Experience with pytest, test doubles, mocking, hardware simulation, and code coverage.
- Familiarity with static analysis, CMake, or containerized test environments.
- Prior exposure to SIL or hardware-in-the-loop (HIL) testing, or specific RTOS platforms such as ThreadX or FreeRTOS.
- Experience improving an existing test automation framework.
Details
- Location: Bangalore, India.
- Work hours: 1 PM to 10 PM IST.
Read the full description and apply on the company’s own careers page.