About the position
The Senior developer must have 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 and be able to work constructively with agile teams around the world towards a shared vision for company processing. Senior engineers will be expected to guide and work with more junior team members to accomplish their tasks. Senior engineers are expected to be accountable for their deliverables. As part of the company-Mid Operations team, they are expected to provide a senior level of Data Processing support, able to investigate, diagnose and resolve complex issues with minimum guidance
JOB DESCRIPTION
- 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 company-Mid Computing and Software team, as a senior technical specialist that supports the establishment of company-Mid 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
JOB 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 Master’s 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 optimisation 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.
Desired Skills:
- GitHub
- Containers
- Google Drive
- JIRA
- System engineering principles
- • Teamwork and Collaboration