About this role
Location: Remote/Hybrid/United States
Apium Swarm Robotics (ASR) is revolutionizing swarm autonomy software for air, surface, undersea, and ground vehicles operating across dual-use commercial and defense environments. Our systems are deployed on real platforms, tested in the field, and delivered to customers operating in complex, uncertain, and safety-critical conditions.
We do not build research prototypes or slideware. Our software is integrated into real vehicles, tested in the field, and delivered to customers who depend on operational reliability, speed of execution, and mission relevance. We prioritize performance over hype.
ASR systems represent the next phase in autonomy: collaborative swarming. These are not like pre-programmed drones for light shows. We are creating real-time cooperative management that lets one operator control dozens to hundreds of vehicles in real-time with the ease of controlling a single vehicle. As such, this role requires comfort with responsibility, ambiguity, and operational accountability.
About the Job
- ASR seeks a software engineer to join our software development team. This role targets a developer capable of maintaining the existing code base while developing new features within our primary code base. Development targets include C++ based core swarm processes running on our ground station and onboard drones as well as the ground station Python web services.
- Unlike almost any other robotics company, ASRs advanced SITL suite allows developers to work from home, making ours one of the only robotics companies to allow remote work. Travel opportunities for testing and demonstrations will allow you to witness firsthand your contributions as dozens of drones take flight.
- Position will include the development of new swarming behaviors and communication methodologies as well as the general functionality of the system.
- This senior role will include participation in the improvement / redefinition of the software architecture, helping to define a more rigorous software development process.
Key Responsibilities
- Maintain and extend ASR C++ code base for ground station and drone operations
- Development of new swarming algorithms
- Modifications and extension of our swarm communications protocol
- Software architecture and engineering process development
Required Qualifications
- Must be a US Person
- Strong development experience with C++
- Front end web development using HTML CSS, Java Script
- Backend wed development using Python
- Android development using Java or Kotlin
- Strong grasp and preference for object-oriented development methodologies
- Strong mathematical and/or physics background including comfort with vector operations
- Expert in coding in C and C++ including the standard template library
- Advanced low-level knowledge such as compiler operation and memory management
- Experience developing in a Linux environment including use of POSIX and similar libraries
- Comfort working independently with limited oversight
- Ability to remain calm and effective under operational pressure
Preferred Qualifications
- Strong in background in Linux
- Experience using AI coding assistance tools
- Experience in video game development
- Experience in Autonomy systems
- Experience developing under standard architectural patters such as MVC, MVP, MVVM
- Experience with cross platform frameworks such as Flutter, React Native, Xamarin or similar
- Previous experience with microcontroller development for targets such as the STM32
- Real Time Operating Systems
- Embedded Linux including YACTO
- Experience using the Pub/Sub architectural pattern
- Previous development experience with autonomous systems
- Strong mechanical, electrical, or systems troubleshooting skills
- U.S. security clearance or ability to obtain one
Operational Requirements
- Experience with software development processes such as Agile
- Experience with aerospace software development processes
Compensation
- Competitive Salary: $113,965 - $178,135 with opportunities for performance-based bonuses and equity