We are developing a real-time control and monitoring platform for satellite systems.
As one of the founding engineers of the Mission Control Software team, you will design and build the backend core -- a distributed service that streams, stores, and routes data from a network of satellites. The system will start as a single-unit deployment and evolve into a multi-node, high-reliability architecture.
Your work will form the backbone of how missions are operated, scaled, and automated.
Responsibilities:
Design, implement, and maintain backend services in Java for data ingestion, processing, and control workflows.
Build and extend gRPC and REST APIs for internal and external clients.
Develop modular plugins and middleware components for data routing, persistence, and automation.
Work with PostgreSQL (and possibly other data stores) for structured and time-series data management.
Collaborate with frontend developers to support real-time dashboards and control interfaces via WebSockets / event streams.
Ensure reliability, scalability, and observability of backend components through testing, logging, and metrics collection.
Contribute to containerized deployments and CI/CD pipelines using Docker and related tooling.
Write clean, maintainable, and well-documented code with comprehensive test coverage.
Required Skills:
4-6 years of hands-on experience developing backend or distributed systems.
Strong proficiency in Java (11+), with a good understanding of concurrency, networking, and modular architectures.
Experience with backend frameworks such as Spring Boot, Vert.x, or similar.
Familiarity with gRPC or RESTful API design and integration.
Solid knowledge of SQL databases (preferably PostgreSQL) and schema design.
Comfort working in Linux environments with Git and Docker.
Experience with messaging / event streaming (Kafka, RabbitMQ, MQTT, or equivalent) or other asynchronous data pipelines.
Proven ability to design maintainable codebases and write automated tests.
Nice to Have:
Experience in real-time data systems, satellites, IoT, or telemetry backends.
Exposure to distributed systems, high-availability deployments, or microservice architectures.
Working knowledge of Python for scripting and integration.
Familiarity with monitoring and observability tools such as Prometheus and Grafana.
Interest in systems that integrate software, hardware, and data operations.
Qualification:
Bachelor's or Master's degree in Computer Science, Electronics, or Electronics & Communication Engineering.
Equivalent practical experience in backend or distributed systems development will also be considered.
Why Join?
Senior engineer opportunity -- high ownership, direct impact on architecture and design decisions.
Work on real-time distributed systems that connect space and terrestrial segments.
Small, technical, mission-driven team with rapid iteration and deep engineering focus.