Embedded Software Engineer

Cura Label Technologies 

📍 United States, United States 🇺🇸

full-time
mid-level
remote
Posted —

Key Skills

CC++ARMCortex-MRTOS

Industry

Consumer ElectronicsMedical Devices

Job Description

Job Type: Full-Time, Contract

Location: 100% Remote


About Cura Label


Curalabel is seeking an experienced Embedded Software Engineer to join our engineering team on a one-year full-time contract. In this role, you will design, develop, test, and maintain embedded software for hardware-based products, collaborating with cross-functional teams to deliver reliable, high-performance solutions.

This is an excellent opportunity for engineers who enjoy working close to the hardware while developing robust, production-quality firmware.

Responsibilities


  • Design, develop, and maintain embedded software for microcontroller- and processor-based systems.
  • Develop firmware in C and C++ for real-time embedded applications.
  • Implement and optimize communication protocols such as UART, SPI, I2C, CAN, USB, Ethernet, and Bluetooth.
  • Debug software and hardware integration issues using oscilloscopes, logic analyzers, and other diagnostic tools.
  • Collaborate with hardware engineers during board bring-up and product development.
  • Develop device drivers, bootloaders, and low-level firmware components.
  • Optimize code for performance, memory usage, reliability, and power efficiency.
  • Participate in architecture discussions, code reviews, and technical design sessions.
  • Create technical documentation and maintain software design documentation.
  • Support product validation, testing, and troubleshooting throughout the development lifecycle.


Required Qualifications


  • Bachelor's degree in Computer Engineering, Electrical Engineering, Computer Science, or a related technical field.
  • Strong experience developing embedded software using C and C++.
  • Experience working with ARM Cortex-M, STM32, NXP, Nordic, TI, ESP32, or similar embedded platforms.
  • Solid understanding of embedded systems architecture and real-time programming concepts.
  • Experience with RTOS environments such as FreeRTOS, Zephyr, ThreadX, or similar.
  • Knowledge of hardware interfaces including UART, SPI, I2C, GPIO, CAN, USB, and Ethernet.
  • Experience using Git for version control.
  • Strong debugging and troubleshooting skills for embedded hardware and software.
  • Ability to write clean, maintainable, and well-documented code.
  • Excellent problem-solving and communication skills.
  • Ability to work effectively in a fully remote, collaborative environment.



Preferred Qualifications

  • Experience with embedded Linux development.
  • Familiarity with wireless technologies including BLE, Wi-Fi, Zigbee, or LoRa.
  • Experience with secure boot, OTA firmware updates, and embedded security.
  • Knowledge of CI/CD pipelines for embedded software development.
  • Experience with scripting languages such as Python for testing or automation.
  • Understanding of software development best practices including unit testing and static code analysis.
  • Experience working within Agile software development teams.



What We Offer

  • 100% remote work environment.
  • Full-time contract for 12 months.
  • Opportunity to work on innovative embedded systems and connected devices.
  • Collaborative engineering culture with experienced multidisciplinary teams.
  • Exposure to challenging projects utilizing modern embedded technologies.



If you're passionate about embedded software development and enjoy building reliable, high-performance systems, we'd love to hear from you.