Qureos

FIND_THE_RIGHTJOB.

Sr. Engineer I - Software Testing

JOB_REQUIREMENTS

Hires in

Not specified

Employment Type

Not specified

Company Location

Not specified

Salary

Not specified

Key Responsibilities

1. Manual & Functional Testing
Own and execute end-to-end functional testing of all FW stack features.

Develop, review, and maintain detailed test cases and test plans.

Perform functional, regression, and integration testing in:

SITL (Software-in-the-Loop)

Flight Test (FT) environments

Conduct pre-flight and post-flight validation processes.

Log, track, and manage defects through structured defect triage.

2. Simulation Testing
Lead testing on the PTT (Unity Simulation) platform.

Create reusable simulation scenarios and validation environments.

Compare simulation outcomes with expected real-world flight behavior.

3. Automation & CI/CD Pipeline Development
Design, build, and maintain automated test pipelines for:

FT builds

SITL regression suites

Simulation validation flows

Write and maintain automation scripts using Python and Bash.

Integrate automated testing with CI/CD tools such as GitLab CI, Jenkins, etc.

Develop dashboards and reporting tools for automated test results.

4. Hardware Initialization & Bench Testing
Create and maintain pipelines for verifying build initialization on target hardware.

Perform and automate validation of:

Boot sequences

Sensor initialization

Hardware-software compatibility

Conduct bench tests for firmware validation before flight deployment.

5. Performance & Resource Utilization Analysis
Profile and analyze:

CPU & memory usage

Timing, latency, and cycle performance

System stability during SITL and hardware execution

Provide actionable optimization insights for engineering teams.

Technical Requirements,
1. Testing Frameworks
Strong expertise in GTest (C++ unit testing).

Strong expertise in Pytest (Python unit/system testing).

Experience developing automated test frameworks and regression suites.

2. Linux & Embedded Systems
Solid Linux knowledge (shell, permissions, processes, networking tools).

Hands-on experience with embedded platforms:

Raspberry Pi

NVIDIA Jetson

Other ARM-based boards

Ability to flash, debug, and validate builds on embedded hardware.

3. Networking & Distributed Systems
Deep understanding of networking protocols:

UDP, TCP, WebSockets

Ability to test communication latency, reliability, and packet flow.

Understanding of distributed data pipelines in robotics/avionics systems.

4. Version Control & DevOps
Strong proficiency with Git (branching strategies, code reviews).

Experience integrating tests into CI/CD environments.

Ability to build test automation into multi-stage pipelines.

Leadership Skills

1. Technical Leadership & Architecture
Own the technical direction for test architecture, automation frameworks, and validation tools.
Design and maintain a scalable automated testing ecosystem supporting multiple hardware targets.
Perform architecture reviews of system modules, focusing on testability, performance, and reliability.
Collaborate with system architects to ensure software designs enable robust test coverage.

2. Mentoring & Team Development
Mentor junior and mid-level engineers in:
Coding best practices
Automation strategies
Linux/embedded debugging
CI/CD usage and workflow discipline
Conduct technical training sessions on GTest, pytest, embedded testing, and networking analysis.
Provide code review leadership, ensuring high-quality and maintainable code.

3. Ownership of Embedded Test Infrastructure
Lead development of test environments for Raspberry Pi, Jetson, and ARM-based platforms.
Oversee creation and maintenance of:
Hardware-in-the-loop (HIL) setups
Automated test rigs
Distributed test nodes for real-time data validation
Define and enforce processes around flashing, provisioning, and debugging embedded boards.

4. CI/CD Pipeline Leadership
Architect multi-stage pipelines for:
Unit tests
System tests
Hardware-based regression suites
Ensure consistent integration of automated tests into build pipelines across all branches.
Drive adoption of:
Code quality gates
Static/dynamic analysis
Automated reporting and dashboards
Collaborate with DevOps to reduce build/test cycle time and increase pipeline reliability.

5. Quality Governance & Release Readiness
Establish and maintain test policies, guidelines, and standards for the engineering organization.
Define Definition of Done (DoD) and Acceptance Criteria across different modules.
Ensure software meets reliability benchmarks (latency, packet robustness, CPU/GPU utilization).
Lead root cause analysis for critical failures in production or flight environments.
6. Cross-Team Collaboration
Work closely with:
Firmware team
Flight control team
Onboard software team
DevOps team
QA/Testing team
Serve as the bridge between development and testing, ensuring smooth handovers.
Represent the team in architecture meetings, sprint ceremonies, and technical strategy sessions.
7. Advanced Debugging & Issue Resolution
Lead debugging for complex issues involving:
Multi-threaded systems
Inter-process communication
Networking anomalies (UDP/TCP/WebSockets)
Real-time embedded behavior
Guide the team in using advanced tools:
perf, strace, gdb, valgrind
tcpdump, Wireshark
systemd logs, kernel logs
Drive systematic approaches to failure reproduction on embedded hardware.
8. Performance & Reliability Engineering
Define and execute performance test strategies:
Network throughput
Latency profiling
Resource monitoring (CPU, memory, I/O)
Optimize distributed data pipelines for heavy workloads (e.g., telemetry, camera feeds, sensor fusion).
Provide guidance on improving embedded system stability and resilience.
9. Process Leadership & Documentation
Ensure engineering processes are followed consistently (branching, reviews, documentation).
Maintain high-quality documentation for:
Test frameworks
Embedded debug procedures
CI/CD workflows
Release qualification steps
Contribute to long-term test strategy and roadmap planning.
10. Stakeholder Management
Collaborate with Product Owners and Project Managers on test timelines and risk assessment.
Communicate test coverage, progress status, and release risks to management and cross-functional teams.
Represent the testing/automation function during customer reviews or audits.

© 2025 Qureos. All rights reserved.