Embedded Software Engineer
Job Description
Asylon’s Philadelphia team is hiring an Embedded Software Engineer to help maintain, improve, and strengthen the reliability of deployed robotics systems and the infrastructure that supports them. The role centers on embedded and mechatronics software work, from low-level code through hardware integration and structured update testing for real-world deployments.
What you’ll do
- Maintain and improve the embedded software and infrastructure for the quadrotor, robotic battery swap station, and robotic dog systems, with emphasis on mechatronics, the operating system, microcontrollers, and other low-level code.
- Integrate and configure hardware peripherals including cellular modems, CAN bus, serial interfaces, Wi-Fi, and Ethernet.
- Troubleshoot, diagnose, and resolve hardware issues to maximize uptime and reliability.
- Coordinate, develop, and test system updates, including Software in the Loop (SIL) and Hardware in the Loop (HIL) validation.
- Improve robustness and stability across Asylon’s deployed robotics infrastructure.
- Collaborate with engineering and operations teams to understand field requirements and implement improvements to existing systems.
Requirements
- 3+ years of professional experience in software development for robotic or electro-mechanical systems, including shipping code to production hardware.
- Proficiency with Python and Bash for application development, scripting, and test automation.
- Proficiency with C/C++, particularly for microcontrollers or device drivers.
- Proficiency with Linux as both a development and deployment environment.
- Experience with communication protocols such as CAN bus, serial/UART, SPI, or I2C for interfacing with sensors, actuators, and other embedded devices.
Technology stack
- Python, Bash, C/C++, Linux
- CAN bus, serial, UART, SPI, I2C
- cellular modems, Wi-Fi, Ethernet
- Software in the Loop (SIL), Hardware in the Loop (HIL)
Bonus points
- Familiar with Kubernetes for deploying and managing containerized services on edge devices.
- Experience working with drone platforms, ArduPilot, or MAVLink.
- Experience with cellular modem integration (LTE/5G), including configuring and managing connectivity on embedded Linux devices.
- Experience developing edge or cloud services in a high-level language such as Python, Go, or Java.
- Familiarity with CI/CD and unattended deployment pipelines for field updates.
- Knowledge of Yocto or Buildroot for building custom embedded Linux images.
- Experience with robotic sensors such as IMUs, GNSS units, LiDAR, or cameras, including calibration, data fusion, or integration into control loops.
- Exposure to containerized workflows for packaging and deploying services on resource-constrained hardware.
- Has dees.bugged cross-domain issues spanning hardware, firmware, and application software on deployed systems.
- Experience with Rust for safe, performance-critical embedded or systems-level code.
- Familiarity with Bazel or similar build systems for managing complex, multi-language codebases.
Compensation and location
- Location: Norristown, PA (onsite)
- Salary: USD 120,000 - 160,000 per year
- Experience: 3+ years
Benefits
- medical, dental, and vision plans
- Traditional and Roth 401(k)
- life and disability insurance
- competitive flexible PTO plans
- Relocation Assistance (available subject to role eligibility)
- 401(k), Health insurance, Health savings account, Paid time off
- Dental insurance, Vision insurance
Eligibility for U.S. persons only: Due to the nature of the projects worked on in this position, applicants must be a U.S. person as defined by 22 C.F.R. §120.62., including U.S. Citizens, lawful permanent residents, refugees, or asylees.