About The Role
Pheratech Systems is seeking a Robotics Software Engineer to develop autonomous UAV systems across embedded Linux platforms, distributed C++ applications, networking, ground control software, and hardware integration. This role spans the robotics software stack from simulation and autonomy development to deployment, flight testing, and field operations.
You’ll work closely with robotics, autonomy, AI, and flight systems engineers to build software that enables autonomous aerial systems to operate reliably in complex, real-world environments. Successful candidates are curious, proactive, and excited to learn new technologies. Our work spans software, embedded systems, networking, robotics, and hardware integration, so engineers should enjoy solving problems across traditional discipline boundaries.
Responsibilities
- Design, develop, and maintain robotics software primarily in modern C++
- Develop software for embedded Linux UAV platforms
- Build distributed software components for autonomous robotic systems
- Integrate software with UAV hardware, sensors, radios, and onboard computers
- Develop networking and communications capabilities between autonomous systems
- Create tooling and automation in Python and Bash
- Debug and optimize software running on embedded hardware
- Support simulation, hardware-in-the-loop testing, and flight testing
- Collaborate across software, electrical, mechanical, and autonomy engineering teams
- Contribute to software architecture, testing, documentation, and code reviews
Required Qualifications
- B.S. or M.S. in Computer Engineering, Computer Science, Electrical Engineering, Robotics, or a related field
- Strong proficiency in modern C++
- Proficiency in Python for scripting, tooling, testing, and automation
- Familiarity with Bash and Linux command-line development workflows
- Experience working in Linux development environments
- Experience using Git in collaborative software development
- Strong debugging, analytical, and problem-solving skills
- Ability to work across both software and hardware during system integration
- Self-motivated with the ability to quickly learn unfamiliar technologies
Preferred Qualifications
- Experience developing software for Embedded Linux platforms
- Understanding of computer networking fundamentals (TCP/UDP, sockets, IP networking)
- Experience with robotics or autonomous systems
- Experience with embedded systems or microcontrollers
- Experience with NVIDIA Jetson, Raspberry Pi, or similar embedded Linux platforms
Bonus Qualifications
- Experience with PX4, MAVLink, MAVSDK, or ROS 2
- Experience with computer vision or AI inference
- Experience with distributed systems or multi-agent robotic systems