Flight Software Development & Test Engineer

Flight Software Development & Test Engineer

Education:

  • Bachelor's degree (or higher) in Avionics Engineering, Electrical-Electronics Engineering, Computer Engineering, Mechatronics Engineering, Control/Automation Engineering, or related fields.

Language:

  • English, Urdu

Computer Skills:

  • Proficiency in C/C++ (and/or C#/Python) for embedded flight software development, including OOP, design patterns, multithreading, and asynchronous programming, MATLAB/Simulink for modeling, simulation, data analysis, and flight performance, MS Office Applications.

Experience & Abilities:

  • 1 - 3 years of hands-on experience in UAV/flight software design/development, integration and testing. 
  • Hands-on experience in software testing, automation, validation/verification (e.g., unit/integration/SITL/HITL testing), and basic aviation principles.
  • Piloting experience with flight testing of fixed wing/ multirotor UAVs.
     

Job Description / Responsibilities:

  • Flight Software Development: Design/maintain embedded flight software for UAVs, including real-time controls, sensor fusion, autonomy/mission algorithms (e.g., swarm/route/kamikaze) using C/C++, Python, and ROS.
  • Avionics Integration: Integrate subsystems (e.g., IMUs, GPS/INS, sensors, comms links) for interoperability, fault tolerance, and standards compliance (e.g., DO-178C).
  • Tools & Environments: Build sensor drivers, simulation setups, and user interfaces for tuning/analysis via .NET/WPF.
  • Testing & Validation: Plan/execute ground/flight tests, HIL/unit/integration validation, automation, data analysis, and performance optimization (stability/endurance); debug anomalies and report iterations.
  • Collaboration & Innovation: Partner with hardware/GNC teams on debugging, traceability, and changes; document plans/reports; research AI/emerging tech for prototypes and regulatory adherence (e.g., FAA/EASA) in indigenous UAV projects.