> Markdown version of [/jobs/ext/3617678-embedded-engineer-ii](https://www.wearedevelopers.com/jobs/ext/3617678-embedded-engineer-ii). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Embedded Engineer II - **Company:** Coresource Energy LLC - **Location:** Atlanta, GA, United States - **Salary:** $100,000.0 - $110,000.0 - **Contract:** Permanent contract - **Skills:** Board Bringup, Java (Programming Language), LTE (Telecommunication), Adobe InDesign, Android NDK, ARM Architecture, Automation of Tests, Bluetooth, UClibc (C Standard Library), C++ (Programming Language), Code Review, Computer Programming, Continuous Integration, Software Debugging, Device Drivers, Memory Management, Linux on Embedded Systems, Embedded Software, Ethernet, Firmware, FreeRTOS, Java Virtual Machine (JVM), Joint Test Action (IEEE Standards), Python (Programming Language), Message Queuing Telemetry Transport (MQTT), Scrum Methodology, Real-Time Operating Systems, Cloud Services, Reduced Instruction Set Computing, Systems Integration, Universal Asynchronous Receiver/Transmitter, Video Capture, Wi-Fi Technology, Data Logging, Scripting, Real Time Systems, Concurrency, Hardware Testing, Peripherals, Yocto, Git Flow, Integration Tests, Bare Metal, U-Boot, Grpc - **Published:** October 8, 2026 - **Apply:** https://www.indeed.com/viewjob?jk=63efbf80f4399b38 ## About the Role * Professional experience developing embedded firmware for production or near-production hardware platforms. * Solid proficiency in C/C++ for embedded systems, including practical understanding of memory management, concurrency, and real-time constraints. * Experience developing and debugging device drivers for common embedded interfaces (GPIO, I²C, SPI, UART, USB). * Hands-on experience with at least one microcontroller family (ARM Cortex-M, RISC-V, etc.) and familiarity with bare-metal development patterns. * Exposure to an RTOS (FreeRTOS, Zephyr, ThreadX) or embedded Linux distribution (Yocto, Buildroot). * Practical experience with low-level debugging tools - oscilloscopes, logic analyzers,JTAG/SWD debuggers. * Ability to read and interpret electrical schematics and understand hardware behavior relevant to firmware development. * Understanding of real-time systems concepts including interrupt handling, priority inversion, and timing constraints. * Experience with Git-based workflows, code review practices, and CI/CD tooling for firmware builds. * Experience working in an agile/Scrum environment as part of a cross-functional team. * Good written and verbal communication skills for design discussions, documentation, and code reviews., * Experience with wireless communication stacks (Wi-Fi, Bluetooth/BLE, LTE, proprietary RF) in an embedded context. * Experience with Nordic Semiconductor BLE devices and SDK, or similar BLE chipset development environments. * Familiarity with Android debugging tools (ADB, logcat) for cross-device BLE communication debugging; exposure to Android NDK for native- layer integration. * Exposure to secure boot, cryptographic libraries, or secure firmware update mechanisms. * Experience developing firmware for battery-powered or low-power devices, including basic power state management. * Familiarity with manufacturing test, factory programming, or calibration processes. * Experience with scripting (Python) for test automation, tooling, or build orchestration. * Exposure to embedded audio/video capture or camera subsystems. * Experience integrating embedded devices with cloud services via MQTT, HTTP, or gRPC. * Experience with rugged, field-deployed hardware or public-safety devices. * Familiarity with Java or JVM-based languages for companion services, device management applications, or test automation tooling. ## Description * Design, implement, and deliver firmware features end-to-end in C/C++ for bare-metal and embedded Linux platforms with limited supervision. * Own small firmware subsystems or components - including their testing, documentation, and maintenance. * Develop, integrate, and debug device drivers for peripherals such as sensors, radios, storage, and communication interfaces (I²C, SPI, UART, USB, CAN, Ethernet). * Perform board bring-up tasks independently - including bootloader configuration, peripheral initialization, and hardware validation for known platform variants. * Implement and tune interrupt handlers, timers, and low-level scheduling mechanisms to achieve reliable, deterministic behavior. Use debugging and measurement tools - oscilloscopes, logic analyzers, JTAG/SWD, protocol analyzers - to diagnose and resolve hardware/firmware interaction issues independently. Collaborate with hardware engineers to review schematics and identify firmware-relevant design considerations. * Contribute to board support packages (BSPs), bootloader configuration, and OS integration for embedded Linux and RTOS-based systems. * Implement error handling, logging, and diagnostic capabilities for field debugging. * Write and maintain unit and integration tests for owned components, using test harnesses and hardware-in-the-loop setups where appropriate. * Participate actively in design discussions - proposing approaches, identifying tradeoffs, and asking clarifying questions. * Conduct peer code reviews with attention to correctness, performance, maintainability, and adherence to team standards. * Break down requirements into technical tasks and estimate work for sprint planning. * Participate fully in Scrum ceremonies and contribute to continuous improvement of team processes.