Job Title

Software and Firmware Engineer Trainee

Share This Job
Apply Job

Job Description

DEIMOS is selecting a Junior engineer to be involved in Firmware and Software development, in the Embedded Systems Competence Centre of the Flight Systems Business Unit, to support new growth areas in development of components for space systems. The work of the ES Competence Centre is oriented to the design, development, specification and validation of Embedded Software and Hardware systems, for space vehicles. As a matter of reference, DEIMOS activities cover:

  • Development of embedded and critical software and firmware, for GNC/AOCS, Image Processing, signal processing and GNSS, data handling, etc.
  • Development System in Chip (SoC) solutions, for the same areas
  • Integration of the developments in space representative HW platforms
  • Development of test-benches for verification of the GNC/AOCS components
  • Verification and Validation activities

Main Duties:

The following main tasks shall be performed:

  • Contribute to design and implementation of system prototypes based on FPGA
  • Development of the FW (VHDL) and SW (C/C++) required to interface and manage the HW peripherals (SPI, memories, etc.), platform monitoring, etc.
  • Development of verification test-benches, integration and validation of the developed FPGA modules. Develop scripts (Python) for test automatization.
  • Work with laboratory instrumentation.
  • Preparation of relevant documentation.


Required: A recognized engineering degree (Computer Sciences, Electrical, Electronic, Telecommunications) or a related degree (e.g. Aerospace) with demonstrable experience in firmware programming.

Technical requirements:

The following capabilities are required for the post:

  • Solid theoretical background in any of following areas: FPGA digital design, SoC architecture, microprocessor and computer architectures, software engineering
  • Practical experience in FPGA development (VHDL, High-Level Synthesis tools) and verification
  • C / C++ Programming language, Xilinx FPGA design tools (Vivado)

Additionally, experience in any of the following would be viewed very positively:

  • Knowledge of Xilinx FPGAs or SoC devices (Zynq-7000 or Zynq UltraScale+). Experience with embedded processors (ARM, LEON) and interfaces
  • Experience with Xilinx development tools (Vivado, Vivado HLS, SDK, etc…)
  • Good programming skills (C, C++). Scripting languages (Python, Matlab) for test automatization.
  • Communication buses, drivers and protocols (Serial line, SPI, etc…)

Language Skills: Spanish. Good level of English, spoken and written

Personal Skills:

  • Capability to integrate in and work within a multidisciplinary team, in an collaborative environment with fixed schedule and inter-dependent relations
  • Initiative, autonomy and self-development. Rigor, commitment and reliability in the execution of the assigned tasks.
  • Proactive attitude to solving problems, identify priority actions and to handle high workload.
  • Responsibility towards the customer and colleagues
Apply Job
Madrid, Spain
View on Maps

Have a Question?

We are here to help. Email us or call +61 4 0895 5833
Contact Us