Embedded Electronics & Firmware Engineer - Remote/Work from home
Dobu Technology LLC
$ 1,200 • Published Date: • Remote
Description
About the Role
Dobu builds electronics and automation products, including home automation systems. We are looking for an engineer who works close to the hardware: someone who can read a schematic, bring up a new board, and write reliable firmware for small 8-bit 8051 microcontrollers as well as FreeRTOS applications on 32-bit microcontrollers. The engineer will own firmware from first prototype to production release and work closely with our PCB and software teams.
Main Responsibilities
- Write bare-metal C firmware for 8051-family microcontrollers (e.g. Silicon Labs EFM8/C8051, Nuvoton N76E003, STC, TI CC2530).
- Develop FreeRTOS-based applications in C and C++ on 32-bit microcontrollers (e.g. STM32, ESP32).
- Write drivers for UART, SPI, I²C, ADC, timers/PWM, GPIO and communication modules.
- Bring up and debug new circuit boards together with the hardware team.
- Test firmware, write documentation and manage releases for production.
Must-Have Requirements
- Degree in Electronics, Electrical or Computer Engineering (or equivalent experience).
- 4+ years of professional embedded firmware development in C.
- At least one shipped product on an 8051-family microcontroller, written bare-metal (not Arduino-style).
- At least 2 years with FreeRTOS (or a similar RTOS) in a real product.
- Good C++ skills for embedded systems.
- Can read schematics and datasheets independently.
- Hands-on use of oscilloscope, logic analyser and hardware debugger.
- Experience with Keil C51, SDCC or IAR for 8051.
- Uses Git daily.
- Good English communication.
Nice-to-Have
- Wireless experience: Zigbee, BLE, Wi-Fi.
- Home or building automation protocols: Modbus, RS-485, KNX, Matter/Thread.
- Bootloader and over-the-air (OTA) firmware update experience.
- Python for test tools and scripts.
- PCB design experience in KiCad or Altium.
Who Is a Good Fit
- Takes ownership and works independently.
- Debugs problems systematically, by measuring rather than guessing.
- Communicates clearly and gives regular progress updates, especially when working remotely.
- Enjoys working in a small, collaborative team.
Responsibilities
- Develop, test, and maintain embedded firmware for microcontroller-based systems using Embedded C and C++.
- Implement and optimize real-time operating system applications, primarily FreeRTOS, ensuring reliable task scheduling and inter-process communication.
- Perform bare-metal programming on 8051 microcontrollers and support firmware for STM32 and ESP32 platforms.
- Interpret and analyze circuit schematics and datasheets to design and debug embedded hardware and firmware;
- Utilize hardware debugging tools such as oscilloscopes, logic analyzers, and hardware debuggers to troubleshoot and resolve firmware and hardware issues.
- Work with communication protocols and peripherals including UART, SPI, I2C, ADC, GPIO, timers, and PWM to ensure correct interfacing and functionality.
- Use development environments and tools such as Keil C51, SDCC, IAR, and version control systems like Git for source code management and collaboration.
- Collaborate remotely with cross-functional teams to define firmware requirements, timelines, and deliverables.
- Analyze firmware performance and implement optimizations to ensure efficient resource utilization and power management.
- Document software designs, test results, and procedures to maintain product quality and support future development.
- Maintain strong problem-solving skills to independently identify issues and propose solutions during all phases of firmware development.
- Stay current with emerging technologies and best practices in embedded systems and firmware engineering.
Experience
4 Years
Apply By
Required Skills
- i2C
- hardware debugging tools
- Circuit Schematics Reading
- PWM
- Timers
- GPIO
- ADC
- Embedded C/C++ Development
- SPI
- UART
- ESP32
- STM32
- Embedded Systems
- Electronics & Microcontrollers
- 8051 microcontroller
- FreeRTOS
- Real-Time Operating Systems (RTOS)
Nice to Have Skills
- Keil C51
- SDCC
- IAR
- Git