SARAO is Recruiting a Senior Software Engineer


The South African Radio Astronomy Observatory (SARAO) is recruiting a Senior Software Engineer on a permanent contract. The successful candidate will join the software development team at Cape Town, Western Cape facility to research, analyse and evaluate requirements for existing or new software applications. 

The senior software engineer is also expected to develop, test and maintain software solutions to meet these requirements. In addition, the candidate will mentor and work with software engineers and junior team members to accomplish their tasks.

Key Responsibilities
  • Prototyping and software development of the telescope operational software (all stages of the entire software development life-cycle may be encountered);
  • Provide hands-on technical support in the system administration of the hardware platforms, deployment environments and processing, which may include site visits to the Karoo;
  • Collaborate with departmental stakeholders to support engineering, commissioning, operations and early science activities;
  • Assist in maturing software development and quality assurance processes towards greater standardisation and improved long-term maintainability and robustness;
  • Facilitate coding standard compliance and code reviews, which include mentoring junior engineers;
  • Compile document sets;
  • Provide project management and progress reporting input as required by the Functional Manager and for team communication;
  • Participate in the development of project schedules and activities;
  • Participate in developing budgets and cost/benefit analysis for compliance with project procurement policies;
  • Make technical decisions independently without direction from the technical lead;
  • Has a deep understanding of version control to the point of being able to help out junior and software engineers; and
  • Innovate independently towards improving the software.
Key Requirements
  • B.Tech/ B.Sc (Comp Sci) with 10+ years; OR
  • B.Eng / B.Sc Hons (Comp Sci) with 9+ years; OR
  • M.Eng / M.Sc (Comp Sci) with 7+ years; OR
  • PhD / D.Eng with 5+ years; OR
  • Engineering (with a software focus) or related field.
  • Experience in a software engineering environment, preferably in an engineering development project environment with a strong software focus;
  • Python or C/C++ programming language and experience in development, testing, development, commissioning, release and support of large-scale projects in Python or C/C++;
  • Technical knowledge of development in Linux operating systems (experience in system administration will be beneficial);
  • Technical experience in architecture design and development of large software projects (experience with control and monitoring will be beneficial;
  • Quality assurance processes and software development processes;
  • Programming in the Python programming language;
  • Development, testing, deployment, commissioning, release and support of large-scale projects;
  • Developing applications for the Linux operating system;
  • Implementation of project management and system engineering principles; and
  • Test-driven development and integration testing techniques, methodologies and frameworks; and supporting systems.
  • Modern software collaboration tools include Github, Containers, Google Drive, JIRA; and
  • Python programming language.
Additional Notes:

The applicant should have the following skills, abilities, and competencies:

  • Communicate effectively (written and verbal);
  • Participate and thrive in a collaborative environment;
  • Work independently and be a good team player;
  • Troubleshoot issues methodically;
  • Understanding and experience in the 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 and software development processes and willingness to participate in improving software development processes and quality procedures;
  • Willingness to play a leading role in mentoring juniors;
  • Ability both to work independently and be a good team player;
  • Ability to participate and thrive in a collaborative environment;
  • Self-motivated and the ability and willingness to self-train and up-skill independently;
  • Keen attention to detail; and
  • Strong oral and written communication skills.
How to Apply

Applicants should submit a comprehensive CV here before 30 June 2023. Furthermore, applicants should include a letter of motivation indicating their suitability for the position in their applications. In addition, the applicants must provide at least three referees’ names and contact details.

South Africa’s National Research Foundation (NRF) offers a challenging career and a competitive remuneration package commensurate with qualifications and experience. Also, the NRF is committed to employment equity and redress, and appointments to the position will align with the NRF Employment Equity Plan. In addition, the NRF reserves the right not to make an appointment and will send correspondence to short-listed candidates only.

For more information regarding the opening, click here.

Click here to get real time data and information on every Segments and players in the African space and satellite industry.