freehire launches on Product Hunt on 26 August.

Follow →

Communication Systems Software Engineer

Summary

Develops and maintains real-time communication protocols and low-level data transfer systems for ground segment links, using C++/Go and networking stacks.

Communication Systems Software Engineer

Full-time

Ankara, Turkey

We are looking for a software engineer specialized in real-time communication protocols, networking, and low-level data transfer for ground segment communication systems. You will develop and maintain the software that enables reliable link establishment, data transfer, and modem control between assets.

Key Responsibilities

  • Implement communication protocols: Work with link-layer and transport-layer protocols, including device-specific ICDs for ground receiver modems.
  • Build real-time data pipelines: Develop C++ or Go microservices for telemetry ingestion, file transfer (FTP, generic store-and-forward), and general communication.
  • Low-level hardware communication: Interface with modems and RF hardware using UART, I2C, SPI, TCP/UDP, and serial protocols (RS-232/422/485).
  • Store-and-forward networking: Implement and optimize delay-tolerant networking (BP, LTP, UDP, DTPC) for challenged environments.
  • Service orchestration & automation: Deploy and manage communication services in a containerized environment (Docker, docker-compose) with CI/CD.
  • Network infrastructure: Handle routing, reverse proxying (Nginx/Caddy), load balancing, and basic socket-level programming for reliable data flow.
  • Testing & validation: Write automated unit and integration tests for protocol stacks and communication pipelines. Conduct hardware-in-the-loop testing.
  • Documentation: Maintain clear ICDs, API docs, and operational procedures for ground communication systems.

Minimum Qualifications

  • Bachelor’s degree in Computer Engineering, Electrical Engineering, Computer Science, or related field.
  • 3+ years of experience developing software for communication systems, embedded systems, or RF ground equipment.
  • Practical experience with Python for fast prototyping, testing, scripting, and data analysis.
  • Familiarity with Python REST servers like FastAPI.
  • Deep expertise in C++ (or Go) for performance-critical, real-time applications.

Hands-on Experience With

  • UART, I2C, SPI, and serial communication
  • TCP/UDP socket programming
  • RF data links and wireless communication protocols (e.g., point-to-point, mesh, or TDM)
  • Linux system programming: Experience with POSIX, sockets, threads, and process management on embedded or general-purpose Linux.
  • Understanding of store-and-forward networking (Bundle Protocol, LTP) or similar challenged-network protocols.
  • Experience with containerization (Docker) and CI/CD pipelines.
  • Knowledge of Git, unit tests, and automated testing.
  • Pratical experience with Agentic AIs.

Preferred Qualifications

  • Knowledge of Go language.
  • Prior work on mission-critical command and telemetry systems.
  • Familiarity with RF concepts (modulation, FEC, link budget, SDRs).
  • Experience with GDAL, PostGIS, or geospatial data processing.
  • Prior work on frontend applications to develop simple utility UIs.

Benefits

  • Competitive salary and a comprehensive benefits package, including health insurance and fuel support.
  • Continued support for candidates currently enrolled in a master's or doctoral program in a related field.
  • Opportunities for continuous professional growth and skill development.
  • Engage in a collaborative and innovative work environment.
  • Enjoy a positive and enriching work environment, situated in a desirable location.

See also

Tailor your CV for this role?

We couldn't check your fit for this role — add a CV to your profile to see it next time.

A new version of freehire is available