Location: Calgary / Canada
Category: Software & hardware
Firmware / System Test Engineer
13.01.2025
SYMX.AI is looking for a Firmware / System Test Engineer to join our growing team to help build the next level of our cutting-edge IoT products.
About the role
We are seeking a proactive and detail-oriented Firmware / System Test Engineer to join our product development team. A vital aspect of this position is managing the complete firmware lifecycle—from validating requirements and establishing robust testing procedures to deploy builds across our entire fleet. You will be responsible for setting up and maintaining Continuous Integration/Continuous Deployment (CI/CD) pipelines, which can run on AWS or a local server, to seamlessly build, test, and deploy new telematics firmware.
Key Responsibilities
- Requirements Validation
- Collaborate with product managers, firmware developers, and system architects to understand requirements for new features and enhancements.
- Translate these requirements into thorough test plans that verify functionality, performance, and compliance.
- Continuously review and refine test coverage to ensure all critical requirements are validated before deployment.
- Set up, maintain, and optimize CI/CD pipelines on AWS or local servers using tools like GitHub Actions, Jenkins, or GitLab CI to automate build, test, and deployment processes.
- Ensure each commit triggers automated tests and requirement verifications, providing rapid feedback to developers.
- Evaluate cloud vs. on-premise approaches (AWS vs. local servers) to balance performance, security, and cost considerations.
- Test Case Development & Execution
- Design, write, and conduct unit, integration, system, and regression tests for the firmware.
- Identify gaps in test coverage and proactively create additional test cases as requirements evolve.
- Define benchmarks and key performance indicators (KPIs) for firmware quality.
- Test Bed & Hardware Management
- Configure and maintain hardware-in-the-loop (HIL) setups, data simulators, and staging devices.
- Integrate sensors, communication interfaces, and other components to mimic real-world conditions as closely as possible.
- Automation & Results Analysis
- Develop scripts (e.g., Python, Bash) to automate test execution, data collection, and log analysis.
- Create dashboards or automated reports to visualize test outcomes, track pass/fail metrics, and highlight deviations from requirements.
- Provide clear pass/fail criteria to determine build suitability for deployment.
- Fleet Deployment
- Manage and coordinate the deployment of new firmware releases across the entire fleet, working closely with Operations and Field Services.
- Develop and maintain Over-the-Air (OTA) update mechanisms or equivalent deployment strategies to minimize downtime and ensure reliability.
- Monitor performance post-deployment, gather feedback, and coordinate quick rollbacks or fixes if issues arise.
- Collaboration & Issue Resolution
- Collaborate with firmware developers to investigate, debug, and resolve issues surfaced during testing or deployment.
- Document and escalate defects that fail to meet requirements, overseeing them from discovery through resolution.
- Participate in daily stand-ups, sprint planning, and retrospectives (if applicable) to align testing and deployment efforts with overall project milestones.
- Documentation & Process Improvement
- Maintain comprehensive documentation of testing methodologies, test cases, and requirement coverage.
- Identify and implement improvements in testing efficiency, reliability, and maintainability.
- Stay informed about industry best practices for embedded testing, automation frameworks, and CI/CD methodologies, including the pros and cons of cloud vs. on-premise solutions.
Qualifications & Skills
- Education & Experience
- Bachelor’s (or Master’s) degree in Electrical Engineering, Computer Science, or a related field.
- [X+] years of professional experience in Firmware or Embedded Software Testing, with substantial exposure to automation, CI/CD, and large-scale deployments.
- Embedded Systems: In-depth understanding of embedded development lifecycles, microcontrollers, and communication protocols (CAN, UART, TCP/IP, etc.).
- CI/CD Tools: Proficiency with GitHub Actions, Jenkins, GitLab CI, or similar platforms for build automation—experience deploying on AWS or local servers is highly desirable.
- Scripting & Automation: Skilled in Python, Bash, or similar scripting languages to automate tasks, analyze logs, and generate detailed test reports.
- Testing Frameworks: Familiarity with embedded test frameworks (Unity, Ceedling, or custom) and robust unit testing principles.
- Hardware-in-the-Loop (HIL): Experience setting up and troubleshooting complex test benches and simulators.
- Source Control: Expertise in Git-based workflows (branching, pull requests, code reviews).
- Deployment Strategies: Knowledge of Over-the-Air (OTA) or other large-scale firmware deployment processes.
- Soft Skills
- Excellent attention to detail and analytical thinking.
- Clear communication and documentation skills for sharing test results, requirements coverage, and deployment statuses.
- Ability to handle multiple priorities and meet deadlines in a dynamic environment.
- A team player mindset with a drive to learn and contribute in a cross-functional setting.
Why Join Us?
- End-to-End Ownership: Own the entire process of validating requirements, testing firmware, and deploying across our fleet.
- Cutting-Edge Technology: Work with modern CI/CD tools and platforms, both cloud-based (AWS) and on-premise solutions.
- Professional Growth: Develop your expertise in test automation, embedded systems, and large-scale firmware deployments.
- Competitive Compensation: We provide a comprehensive benefits package, paid time off, and opportunities for performance-based rewards.
How to Apply
Interested candidates should submit the following to info@symx.ai:
- An updated resume/CV showcasing relevant experience.
- A concise cover letter detailing your interest in the role and how your background aligns with these requirements.
- (Optional) Links to projects, code samples, or other demonstrations of your testing or automation expertise.
We look forward to welcoming a Firmware / System Test Engineer who will champion our testing and deployment processes, ensuring our telematics firmware meets the highest standards and can be reliably distributed across our entire fleet.