All open positions
EmbeddedRemote / Hybrid 3 min read

Senior Embedded C++ Low-Level Engineer

Low-level C++ engineering: firmware, drivers, RTOS and hardware communication for high-reliability systems.

Employment
Full-time
Location
Remote (EU) / Onsite when needed
Work mode
Remote-first / occasional onsite depending on project needs

Job Overview

We develop low-level software for complex embedded systems. Precision, stability, predictability and code quality matter here. We need someone who understands C++, embedded development, hardware communication and the reality of working close to the hardware.

This is not a role for someone who wants to write only application-level logic. Here, you will deal with drivers, RTOS, hardware communication, testing, requirements analysis, safety and production-grade quality.

What You Will Build

  • Low-level embedded components in C++.
  • Drivers and integration layers for hardware platforms.
  • Communication modules using I2C, SPI, CAN, LIN, Ethernet or similar interfaces.
  • Components running in RTOS or embedded Linux environments.
  • Unit tests, integration tests and validation automation.
  • Solutions for multi-core and high-reliability systems.
  • Code aligned with security, quality and static analysis practices.

Responsibilities

  • Design and implement low-level C++ components.
  • Develop and integrate drivers delivered by internal teams or suppliers.
  • Analyze requirements, architecture and hardware platform constraints.
  • Create unit and integration tests.
  • Debug issues at the hardware/software boundary.
  • Review code, documentation, tests and technical requirements.
  • Collaborate with hardware, QA, safety, security and system engineering teams.
  • Ensure alignment with quality practices and static analysis standards.
  • Improve development, testing and diagnostics processes.

Technology Stack

  • Languages

    modern C++, C, Python is a plus

  • Embedded

    RTOS, embedded OS, firmware, drivers, BSP/HAL concepts

  • Communication

    I2C, SPI, MDIO, CAN, LIN, Ethernet

  • Testing

    gtest, gmock, PyTest, hardware-in-the-loop is a plus

  • Platforms

    ARM, TriCore, POSIX environments

  • Quality

    MISRA, CERT, static analysis, code review

  • Tools

    Git, CMake, debuggers, logic analyzers, CI/CD for embedded

Requirements

  • At least 5 years of embedded software development experience.
  • Strong modern C++ skills.
  • Experience creating firmware, drivers or low-level components.
  • Understanding of RTOS and embedded OS concepts.
  • Knowledge of communication buses: I2C, SPI, CAN, LIN, Ethernet or similar.
  • Experience with multi-core systems.
  • Practice with C++ testing: gtest, gmock or similar.
  • Ability to debug low-level issues.
  • English suitable for work in an international team.

Nice to Have

  • AUTOSAR or similar embedded standards.
  • ARM, TriCore, POSIX.
  • MISRA, CERT, static analysis.
  • Python and PyTest.
  • Hardware-in-the-loop experience.
  • Knowledge of safety/security standards for embedded systems.
  • Experience with high-reliability systems.

What We Offer

  • Remote-first setup with onsite presence when it makes technical sense.
  • Work on real low-level engineering, not just library integration.
  • Participation in decisions about firmware architecture and quality standards.
  • Access to tools, test environments and hardware.
  • Budget for technical training, certifications and conferences.
  • Private medical care and benefits package.
  • Focused recruitment process based on technical discussion.

Who We're Looking For

We are looking for someone who understands that embedded engineering is about constraints: time, memory, hardware, safety and reliability.

If you enjoy solving problems that cannot be fixed by restarting a container, we should talk.

Valora

Recruitment Process

A short, focused process designed for senior practitioners.

  1. 1

    Application

    You submit your CV and consent. That's it.

  2. 2

    CV Review

    We review your background within a few business days.

  3. 3

    Technical Interview

    A focused conversation about real engineering problems.

  4. 4

    Client Interview

    Only when the role requires it, never a repeat of step 3.

  5. 5

    Offer

    Clear terms, transparent conditions, quick decision.