· Design, develop, test, and deploy high-reliability, mission-critical software for our satellite and ground systems.
· Take full ownership of the software lifecycle, from initial requirements and architecture to implementation, testing, and operational support.
· Embrace and champion strong object-oriented (OO) design principles.
· Develop and test prototypes to validate new design concepts and architectural decisions.
· Develop and maintain robust CI/CD pipelines for automated build, package, deployment, and testing.
· Develop sophisticated simulation, emulation, and hardware-in-the-loop (HITL) test environments to ensure system-wide integrity.
· Participate in operations, including data analysis, system monitoring, and visualization.
· Collaborate in architecture, design, and code reviews.
· Bachelor’s degree in Computer Science, Computer Engineering, Electrical Engineering, or a related technical field (or equivalent practical experience).
· 2+ years of professional experience in software development.
· Strong proficiency in an object-oriented language (e.g., C++, Python, Java, C#) and a deep understanding of OO design principles.
· Experience building and debugging software (professional, internship, or complex academic projects).
· Solid foundation in data structures, algorithms, and software design.
· Excellent communication (written and verbal) and documentation skills, with the ability to articulate complex technical ideas clearly.
· A highly collaborative, team-oriented, and positive approach to your work.
· Professional experience with C++ and Python.
· Experience building or operating highly available, distributed, and fault-tolerant systems.
· Familiarity with networking concepts (like TCP/IP and UDP) and the principles of distributed systems.
· Familiarity with CI/CD, test automation, simulation, or hardware-in-the-loop (HITL) testing.
· Experience with modern monitoring, data analysis, and visualization tools.
· Experience with Linux-based development environments.
· A creative and analytical approach to problem-solving, built on strong engineering fundamentals.
· Ability to thrive in a fast-paced, dynamic environment where requirements can evolve.
· A passion for tackling complex problems and taking ownership from concept to completion.
· Interest in or experience with networking, wireless protocols, or telecommunications (e.g., 2G/GSM, 4G/LTE) is a plus, but not required.