Hybrid Firmware Test Automation Engineer

Posted 2 weeks ago

Apply now

About the role

  • Firmware Test Automation Engineer at HALOS creating test automation for body-worn camera platform. Involved in building reliable regression systems and video validation.

Responsibilities

  • Build the automation foundation
  • Design and implement a maintainable test automation framework for embedded Linux firmware.
  • Build the end-to-end daily pipeline: fetch latest firmware → upgrade/flash devices → execute suites → collect artifacts → publish reports.
  • Make the system robust: retries, device recovery, quarantining flaky devices/tests, clear failure classification.
  • Automate core camera workflows
  • Recording start/stop behaviours, file integrity, metadata correctness, storage handling.
  • Device lifecycle behaviours: reboot, crash recovery, factory reset paths, upgrade/rollback scenarios.
  • Video validation automation (MP4, H.264/H.265)
  • Automate decode integrity and structural checks (e.g., via FFmpeg/ffprobe).
  • Validate stream properties (codec/profile, resolution, fps, bitrate), timestamp sanity, and dropped-frame indicators.
  • Produce actionable artifacts (ffprobe JSON, short clips, logs) for triage.
  • Streaming validation automation (RTSP + WebRTC)
  • Automate connect/setup/teardown, stability, reconnection behaviour, and basic performance metrics.
  • Capture and report streaming metrics (e.g., bitrate/FPS, jitter/RTT/packet loss where available) and attach useful artifacts (logs/stats, pcaps as needed).
  • Stress, soak, performance & resilience testing
  • Expand automation beyond functional tests to include repeatable, automatable stress and longevity coverage:
  • Long-duration recording (soak), repeated record/stop cycles, rapid user-action loops
  • Low storage / near-full disk behaviour, rollover, integrity after abrupt shutdown/power loss
  • Battery edge cases (low battery recording), charging transitions, thermal-related scenarios (where observable)
  • OTA/upgrade stress (repeat upgrade/downgrade, interrupted upgrade recovery)
  • Network impairments for RTSP/WebRTC (loss/jitter/delay; bandwidth constraints) and reconnection loops
  • Parallel execution across a fleet (multiple devices in CI daily)
  • Define clear pass/fail criteria and trend metrics to reduce noise and catch regressions early.
  • Lab / hardware-in-the-loop ownership
  • Build and maintain test rigs and device control: provisioning, reset/recovery, power cycling, docking workflows.
  • Scale execution across multiple devices running in parallel.
  • Quality signal and collaboration
  • Triage failures, isolate root cause, and write high-signal bug reports (repro steps, logs, clips, stats, traces).
  • Partner with firmware engineers to improve testability and reduce flaky failures.
  • Tooling & platform
  • Source control/build environment: Bitbucket (Bitbucket repos; Bitbucket Pipelines or alternatives acceptable)
  • Target platform: Embedded Linux
  • Media + streaming: MP4 (H.264/H.265), RTSP, WebRTC
  • This is a new function: you’ll have freedom to propose and introduce tools, with an expectation of maintainability and measurable outcomes.

Requirements

  • Strong experience building test automation for firmware/embedded systems (not only web/app UI).
  • Strong scripting/programming (Python preferred; Bash/Go welcome).
  • CI mindset: can build unattended daily execution with artifacts and easy triage.
  • Comfort in Linux environments (logs, SSH, tooling, system debugging).
  • Solid networking fundamentals (TCP/IP; practical debugging).
  • Video validation using FFmpeg/ffprobe (metadata, decode checks, timing/PTS sanity, regression signatures).
  • Streaming validation using GStreamer (RTSP; ideally WebRTC via webrtcbin or equivalent).
  • Wireshark/tshark experience for network trace triage.
  • WebRTC metrics understanding and automation (browser getStats() or non-browser approaches).
  • Camera/video domain experience (body-worn, CCTV, dash cams).
  • MP4 container tooling (e.g., MP4Box/GPAC) and compatibility pitfalls.
  • Frame/content validation in automation (OpenCV/PyAV) for frozen/black frames, overlay checks.
  • Network impairment testing

Benefits

  • Generous Annual Leave Allowance
  • Competitive salary and commission/bonus package
  • Learning and Development opportunities
  • Private Health Insurance
  • Cycle to work scheme
  • Home & Tech scheme
  • Regular company events and social initiatives

Job title

Firmware Test Automation Engineer

Job type

Experience level

Mid levelSenior

Salary

Not specified

Degree requirement

No Education Requirement

Location requirements

Report this job

See something inaccurate? Let us know and we'll update the listing.

Report job