Recruitment Room Team
Senior Execution Framework Engineer
Job Description
About the Role: Senior Execution Framework Engineer
This role involves designing, prototyping, implementing, and integrating systems to bring advanced algorithms into real-world scientific processing pipelines for the telescope. The execution framework and processing functions are crucial for scalability and integration of both new and existing processing code.
The aim is to:
- Push the boundaries of radio astronomy software for future extensions and regional centers.
- Support precursor telescopes and the broader astronomy community.
Key Responsibilities:
- Implement and verify Data processing system and Astronomy software packages.
- Contribute to systems engineering and Operations documentation refinement
- Support users, operators, as well as the implementation of releases, system changes and fixes.
- Be an integral member of the Computing and Software team, as a senior technical specialist that supports the establishment of data processing operations.
- Participate in project management and activity management activities.
- Attend relevant training/courses to gain experience and improved knowledge.
- Research new technologies, methods, or approaches, with the purpose of utilizing them within the organization.
- Participate in innovation and technology development initiatives.
- Mentor and educate more junior engineers as and when required.
Key Requirements:
Qualification:
- Degree/ Masters/ PHD in Computer Science, Computer Engineering, Astronomy or Astronomy techniques, Physics, or related fields
Experience:
- Degree coupled 9 years relevant working experience, or Masters Degree coupled with 7 years relevant working experience or PHD coupled with 5 years relevant working experience in software engineering, high performance algorithms development
- Experience with distributed data-intensive processing and algorithm development, ideally both from a design and application perspective.
- Expertise in hybrid software development in Python and C/C++ programming languages.
Knowledge:
- Experience with profiling and optimization techniques, especially how to build high performance pipelines overlapping I/O and processing.
- Experience with physical data modelling, both for efficient in-memory & network data exchange as well as storage (e.g. Apache Arrow, HDF5 or equivalent)
- Understanding of data processing algorithms, such as Fourier transformations, gridding and (de)convolution methods. Knowledge of radio astronomy data processing pipelines and their scaling properties would be advantageous.
- Common radio astronomy instrumentation: spectrometers, correlators, beamformers and pulsar timing machines and transient search machines. Systems Engineering processes.
SKILLS/ COMPETENCIES/ KNOWLEDGE:
Essential:
- Design, implementation and verification of high-speed digital computer and electronics hardware and systems.
- System Engineering life cycle processes, including documentation, requirement analysis, architecture design, implementation, integration, and acquisition.
- Parallel implementations of Data Processing components, pipelines, and astronomy algorithms
- Comprehension of MPI, DASK and other High Performance Computing frameworks and interfaces
- Linux operating system and standard tools.
Desirable:
- Common radio astronomy instrumentation: spectrometers, correlators, beamformers and pulsar timing machines and transient search machines.
- Knowledge of Radio Astronomy techniques, and observatory practices
- Ability to communicate effectively to a wide audience and a wide range of stakeholders, gathering information and distilling information and tailoring it appropriately for the target audience.
- Ability to develop and convey a technical solution as part of a team.
- Ability to reliably estimate and plan work as part of a team.
- Agile approaches to systems development
- Engineering systems architecture concept
- An understanding of DevOps processes
- Services, Operations and Support management
- Risk management.
Skills:
- Modern software collaboration tools such as GitHub, Containers, Google Drive, JIRA etc.
- Understanding and experience in implementation of project management and system engineering principles.
- Experience with test-driven development and integration testing techniques, methodologies, and frameworks; and supporting systems like revision control and build systems.
- Experience with quality assurance processes and software development processes and willingness to participate in improving software development processes and software quality procedures.
Applications:
Applicants should submit a comprehensive CV by logging to [email protected]
Applications should be accompanied by a comprehensive CV, ID, certificates and the names and contact details of at least three referees.
Closing Date: 31 January 2025