Embedded Software Engineer
XTEND · Tampa, FL · 1 mo ago
On-siteEngineeringFull-time
About the role
XTEND Tampa is seeking an Embedded Software Engineer to support the development, integration, and production of autonomous drone systems. This role focuses on hands-on embedded software and firmware development for tactical UAS platforms, including low-level driver development, hardware/software integration, communication interfaces, and embedded system debugging. The engineer will work closely with electrical, mechanical, software, and production teams to ensure reliable, manufacturable, and field-ready drone systems.
Responsibilities
- Embedded Software & Firmware Development: Develop, maintain, and improve embedded software and firmware for autonomous drone systems using C, with occasional support using C++ and Python.
- Hardware / Software Integration: Work directly with hardware components, embedded processors, co-processors, sensors, payload interfaces, and peripheral devices to ensure reliable system-level integration.
- Low-Level Driver Development: Develop and support low-level drivers and communication interfaces, including I2C, UART, SPI, GPIO, and other embedded hardware protocols.
- Microcontroller Development: Support embedded development on STM ARM microcontroller-based platforms, including firmware implementation, debugging, and hardware bring-up.
- System Integration Support: Collaborate with electrical, mechanical, software, and production teams during prototype development, system integration, and production troubleshooting.
- Debugging & Troubleshooting: Troubleshoot firmware, hardware, PCB, and interface-level issues using engineering tools such as oscilloscopes, logic analyzers, debuggers, and schematics.
- Core Operating System Support: Contribute to the development and refinement of XTEND’s embedded software architecture and core operating environment for drone and payload systems.
- Testing & Validation: Support bench testing, hardware-in-the-loop testing, system integration testing, and field validation of embedded systems.
- Documentation: Develop and maintain embedded software documentation, interface descriptions, test procedures, troubleshooting guides, and integration notes.
Requirements
- Education: B.Sc. in Electrical Engineering, Computer Engineering, Computer Science, Software Engineering, or related technical discipline.
- Experience: 5+ years of hands-on experience in embedded software or firmware development.
- Embedded Programming: Strong experience developing embedded software in C.
- Hardware Integration: Experience debugging and integrating software directly on hardware platforms.
- Communication Protocols: Experience implementing or troubleshooting embedded communication protocols such as I2C, UART, SPI, GPIO, or similar interfaces.
- Microcontrollers: Experience working with STM ARM microcontrollers or similar embedded processor platforms.
- Debugging Tools: Proficiency using oscilloscopes and other bench-level debugging tools to troubleshoot embedded systems, PCBs, and hardware interfaces.
- Schematics & Board-Level Understanding: Ability to read schematics, understand board-level design intent, and support hardware/software troubleshooting.
- Hands-On Engineering: Comfortable working directly with hardware, prototypes, production systems, and fielded equipment.
- Team Collaboration: Strong communication skills with the ability to work across embedded software, electrical engineering, mechanical engineering, production, and field support teams.
Preferred Qualifications
- Experience with C and/or Python.
- Experience with Linux kernel development or embedded Linux environments.
- Familiarity with ROS2.
- Experience using Git or similar software configuration management tools.
- Experience with drone systems, robotics, autonomous systems, aerospace systems, or defense-related products.
- Experience supporting prototype builds, production environments, or fielded hardware systems.
- Familiarity with real-time systems, sensor integration, payload control, or communication modules.