Vacancy: System and Software Engineer for Gaia SOC

This work package is intended to provide a number of specialised services to support ESA in developing Gaia's Astrometric Global Iterative Solution (AGIS) software into an operational system.

ESA's Gaia mission is designed to create an accurate and complete astrometric catalogue which will serve for decades to come: More than 1000 Million objects (mostly stars in our Milky Way) down to apparent magnitude 20 will be repeatedly observed from the second Lagrange point (L2) during the satellite's nominal lifetime of 5 years. This will yield a raw data volume of about 100 TB from which each star's position, trigonometric parallax, and proper motion (for a smaller subset also radial velocity) will be determined to micro-arcsec accuracy (typically 25 μas for parallax at 15th magnitude). The data processing and catalogue creation is carried out by the Gaia Data Processing and Analysis Consortium (DPAC) formed by around 400 individuals and six main data processing centres distributed across Europe. The Gaia SOC at ESAC is an integral part of DPAC and plays a key role in developing and operating parts of the Core Processing system to which AGIS belongs. The global solution will form the basis for the astrometric part of the catalogue, the first version of which is planned for release to the public around autumn 2015 (Launch + 22 months).

AGIS is being developed as a distributed Java-only system since 2005 jointly by the Gaia SOC and a small number of DPAC scientists. The system has matured over the years into a versatile processing system running the complex core algorithms in a distributed and multi-threaded manner on ESAC hardware or external Computing Clouds.

A small number of key scientific algorithms still need to be implemented, integrated and tested. This will usually follow available detailed mathematical descriptions and/or existing prototype codes from the scientific community. Algorithms must be tested in isolation as well as part of the overall system using available simulation data. Large-scale runs are still done using a number of simplifying assumptions which must gradually be eliminated. With a nominal start of operations around May 2014 the system's fitness to process first real flight data must be proven as soon as possible. In this process technical and scientific problems must be diagnosed and resolved in collaboration with external scientists. After a minimum of 12 months of mission data is available the system must be operated to seek a solution that will form the basis of the first astrometric catalogue scheduled for release to the public around end 2015.

Service Work Package Descriptions and Scope:

1. Development and integration of scientific algorithms

Service support must be provided for:

  • Coding scientific algorithms in Java following detailed mathematical descriptions
  • Integrating these algorithms into the AGIS framework
  • Testing and validating new implemented functionality (unit / integration tests) using simulation data
  • Optimize new code in terms of memory / CPU usage

All activities will be supported by SOC personnel and collaborating external scientists.

2. Maintenance of existing code modules

Service support must be provided for maintenance of existing code. In particular:

  • Analyse and resolve known deficiencies and inadequacies ("Issues") of existing AGIS software modules
  • Verify and validate that issues have been resolved - usually in the form of extending existing tests and/or conduction of new large-scale tests

3. System verification and scientific validation

  • Aid in the definition, conduction and analysis of large-scale testing campaigns including a first assessment of the scientific quality of results.
  • Documenting results of test campaigns in the form of validation test reports

4. Aid in the creation of the first astrometric solution (L+22m)

Service support must be provided for assisting SOC personnel in all activities needed to generate the first astrometric solution with real flight data, such as:

  • Populating the operational AGIS processing DB with IDT and all needed auxiliary data
  • Starting the AGIS run
  • Monitoring the execution of the run from a technical and scientific viewpoint
  • In case of problems, diagnose their cause and implement rectifying actions

All activities will be supported by SOC personnel and collaborating external scientists.

5. Other Activities
In addition to AGIS the Gaia SOC is responsible for operating and maintaining a number of other key systems like the Initial Data Treatment (IDT) or the central Gaia Tools Java Library. The service personnel may be asked to support maintaining these systems in phases of manpower shortage.

Specific Qualification Requirements:

The service to be provided requires that the personnel should possess a university background in a scientific or technical subject and relevant professional experience of at least 5 years in software development. In particular, experience and proficiency in the following fields is required:

  • Development and/or maintenance of complex scientific data processing systems, preferably in Java
  • Strong background in mathematics and numerical modelling of data
  • Standard Software development techniques and associated tools: Eclipse, Subversion, JUnit, ant, continuous integration, automated testing
  • Scripting with Python and SciPy (NumPy/Matplotlib)
  • UNIX, Linux, operating system
  • Product assurance processes and techniques
  • Working with ESA Standards, Frameworks and Tools (e.g. ECSS)
  • LaTeX

Other Qualification Requirements:

The service personnel must:

  • Have good communications skills
  • Be able to document their work
  • Willing to travel to meetings with the scientific community and/or working visits
  • Feel comfortable in an international working environment
  • Be fluent in written and spoken English
For more information about the position, contact the Gaia Science Operations Manager.