We are seeking a skilled Embedded Software Engineer with expertise in Rust, C/C++, and Python to develop high-performance firmware and embedded systems. You will work on cutting-edge projects involving real-time systems, low-level hardware interactions, and secure embedded applications. If you are passionate about writing efficient and safe code for resource-constrained environments, we’d love to hear from you!

Responsibilities

  • Develop, test, and optimize embedded software in Rust, C, and C++ for microcontrollers, real-time systems, and SoCs.
  • Write Python scripts for automation, testing, and hardware communication.
  • Work with RTOS, bare-metal firmware, and device drivers to develop robust and efficient embedded solutions.
  • Collaborate with hardware engineers to design software-hardware interfaces.
  • Implement low-level peripheral drivers (SPI, I2C, UART, CAN, USB, etc.) and optimize system performance.
  • Ensure memory safety and performance in embedded systems using Rust’s strong safety features.
  • Develop and maintain unit tests, integration tests, and debugging tools.
  • Work with version control systems (Git) and CI/CD pipelines to streamline development.

Required Qualifications

  • Proficiency in Rust, C, and C++ for embedded development.
  • Experience with Python for scripting, automation, and hardware testing.
  • Strong understanding of embedded system architectures, real-time constraints, and low-level hardware interactions.
  • Experience with microcontrollers (ARM Cortex-M, RISC-V, AVR, etc.) and embedded development tools.
  • Familiarity with RTOS (e.g., FreeRTOS, Zephyr) or bare-metal programming.
  • Experience working with debugging tools (GDB, JTAG, SWD) and logic analyzers.
  • Solid knowledge of memory management, concurrency, and embedded security principles.
  • Proficiency with Git, CI/CD pipelines, and software development best practices.

Preferred Qualifications

  • Experience with Rust-based embedded frameworks like Embassy, RTIC, or TockOS.
  • Knowledge of Linux kernel development, device drivers, or Yocto/Buildroot.
  • Exposure to machine learning on edge devices or low-power IoT development.
  • Familiarity with functional safety standards (ISO 26262, IEC 61508) and cybersecurity in embedded systems.
  • Experience with wireless protocols (BLE, Zigbee, LoRa, Wi-Fi).