We Are Hiring: Passionate C++ Developers.
We are looking for passionate C++ developers to join our team and work on advanced UAV control and communication systems.
About the Company
AlgoBotix serves in the B2B and B2G space, offering software solutions for the growing global drone industry. As a provider of drone software, the company cater to enterprises involved in drone platform manufacturing and service provisioning. The venture offers software solutions to UAV platform manufacturers, service providers and several governmental organizations. These solutions cater to a wide range of applications, including aerial transportation, surveillance, agriculture, medical, law enforcement, emergency relief missions, academia, and more.
About the Role
Open Positions:
- C++ Application Developer (Ground Control Station)
- Embedded C/C++ Engineer (STM32 Firmware)
Technology Stack: C++, MAVLink, MAVSDK, TCP/IP & UDP/IP, Serial Communication (UART/USB), Multithreading, STM32, Python
Responsibilities
Role 1: C++ Application Developer (GCS)
- Develop high-performance Ground Control Station software using modern C++
- Implement MAVLink and MAVSDK based communication systems
- Work extensively with TCP/IP networking and Serial (USB/UART) protocols
- Design and manage multithreaded systems for real-time telemetry and control
- Build mission control, telemetry visualization, and system monitoring features
Required Technical Skills
- Strong proficiency in C++ (C++11 or newer) & OOPS concepts
- Solid understanding of TCP/IP & UDP/IP networking
- Hands-on experience with Serial communication protocols
- Strong knowledge of Multithreading and concurrency
- Preferred to have experience working with Boost.Asio for networking
- Experience with MAVLink / MAVSDK is highly preferred
Role 2: Embedded C++ Engineer (STM32)
- Develop firmware for STM32 microcontrollers using C and C++
- Implement MAVLink communication on embedded platforms
- Work with low-level interfaces such as UART, SPI, I2C, and CAN
- Design real-time systems using RTOS or bare-metal approaches
- Debug and test firmware using SWD, JTAG, and hardware tools
- Use Python for testing, scripting, automation, and tooling
- Perform hands-on hardware interaction, including reading schematics, basic circuit design understanding, and prototyping
- Participate in electrical circuit assembly, including soldering and basic hardware verification
Required Technical Skills
- Strong Embedded C and C++ programming skills
- Experience with Arduino & STM32 microcontroller architecture
- Deep understanding of serial communication protocols
- Knowledge of RTOS, interrupts, timers, and multithreading concepts
- Proficiency in Python for tooling, testing, and automation
- Good understanding of electrical circuits, schematic reading, and basic analog/digital signal concepts
- Practical hardware skills such as soldering, prototyping, and basic board-level troubleshooting
- Experience with MAVLink is a strong advantage