JOB OFFERS
Position Title: SOFTWARE ENGINEER
ALTEC is involved in several Science and Technological Programs in the aerospace domain where ground segment is a relevant part to perform mission operations of orbiting infrastructure, planetary exploration systems and orbiting systems with reentry capability. ALTEC has the know-how and provides the competences to design, implement and operate either the whole ground segment or part of it consisting of ground stations, communication network, mission control centers, mission control systems and P/L control systems.
The Mission Control System and Simulation group host the computer engineers, software engineers and aerospace engineers who oversee the ground segment from definition to end of operations; it develops and integrates the mission control systems and P/L control systems, implements ground communication networks, interfaces ground stations and prepare mission control centers to execute mission operations. Moreover, it is involved in the definition, implementation and test of operational simulator needed to support ground segment validation, operations team training and mission operations preparation.
Duties
You will be part of the team that is in charge of all engineering aspects of the definition, implementation, integration, test and maintenance of software data systems related to the Mission Control Center nominal activities under the ALTEC responsibility.
You will work in close collaboration with other software engineers and infrastructure engineers during project phases.
You will be expected to endeavor for innovation and excellence in software engineering within the aerospace domain with focus on mission planning functions.
Among the main duties, you will be involved in:
Analysis, revision and definition of software requirements.
Analysis, revision and definition of software design.
Coding and implementation of mission planning software systems, including unit and software system testing definition and execution.
Prepare system related documentation (Specifications, Design, Technical Notes, User Manuals, Test Procedures and Reports).
Use of debugging tools, perform troubleshooting and profiling an application running in a distributed environment
Participate to periodic technical meetings
Refine, extend and improve current company applications.
Participate to periodic technical meetings
REQUIRED EXPERIENCE & TECHNICAL SKILLS
A MSc or equivalent degree in software or computer engineering with high score.Knowledge and experience in object-oriented and functional programming, in particular with Java programming language. Knowledge and experience with the Linux operating system and scripting languages.
- Knowledge and experience with MAVEN software project management tool. Knowledge of message queue mechanism to manage data flow and data streaming (e.g. Apache Kafka, ZMQ, ActiveMQ). Knowledge and minimum experience with relational database (e.g. PostgreSQL) and non-relational databases (e.g. MongoDB, InfluxDB). Experience in scheduling problems and optimization dealing with resource constraints. Knowledge of container technologies (e.g. Docker, Podman) Basic Knowledge of UML for the software engineering process. Knowledge and familiarity with Extensible Markup Language (XML) and schemas.
SOFT SKILLS
- Problem Solving
- Result oriented
- Operational efficiency
- Fostering Cooperation
- Relationship Management
- Continuous Improvement
ADDITIONAL ASSETS
They are not mandatory but candidates knowing them will be better evaluated:
- Knowledge of OptaPlanner solver.
- Knowledge of SonarQube as software quality tools
- Knowledge of Nexus as software artifact management tools
- Knowledge of C++ and NodeJS programming language.
- Experience in Agile methodologies would be a further asset