Embedded Software Engineer

Embedded Software Engineer

Are you ready to join our future in the sky through space travel with Fergani and explore new horizons in your career?

We are looking for team members who will take responsibility in embedded software development activities for satellite and space systems.

General Qualifications:

  • Graduated from Computer Engineering, Electrical and Electronics Engineering, Electronics and Communications Engineering, Mechatronics Engineering, or related engineering departments,
  • Experienced in embedded system development using C/C++, hardware–software integration, and debugging processes,
  • Able to prepare technical documentation and work in compliance with engineering processes,
  • Knowledgeable in designing and implementing layered software architecture (HAL / BSP / Middleware / Application),
  • Familiar with event-driven, task-based, and state-machine software architectures in real-time systems,
  • Experienced in the use, integration, and development of communication interfaces and protocols such as RS232/RS422/RS485, CAN, UART, SPI, I2C, and Ethernet (TCP/UDP),
  • Able to design modular, reusable, and maintainable software structures,
  • Knowledgeable in task scheduling, latency analysis, and CPU/memory optimization in real-time embedded systems,
  • Able to develop script-based automation for testing, integration, and development processes,
  • Familiar with work tracking tools (e.g., Jira),
  • Proficient in using GIT version control system,
  • Strong team player with a high sense of responsibility,
  • Proficient in written and spoken English,
  • Preferably knowledgeable in space system standards such as ECSS, NASA, or similar,
  • Preferably experienced in embedded software development and system integration on Linux-based high-performance embedded platforms,
  • Preferably knowledgeable in motor drivers and control algorithms of electromechanical subsystems, interfaces, and embedded software integration,
  • Preferably experienced in HIL/SIL-based validation and closed-loop testing processes,
  • Able to adapt to intensive workload and flexible working hours.

Job Description:

  • Participate in end-to-end development of embedded software components for satellite and space systems, from requirements through integration and verification,
  • Take part in software verification, integration, and system testing activities,
  • Analyze findings and carry out improvement activities,
  • Develop software in line with layered architecture principles and contribute to improving existing architectures,
  • Provide software support during environmental testing (thermal vacuum, vibration, SEE/TID, etc.) and functional testing, and analyze test results,
  • Investigate anomalies identified during satellite operations and testing; perform root cause analysis and implement corrective/preventive actions,
  • Prepare technical documentation,
  • Contribute to the development and execution of HIL/SIL-based validation environments and testing activities,
  • Work in coordination with relevant teams to ensure development activities align with technical requirements and delivery schedules.