The South African Radio Astronomy Observatory (SARAO) is recruiting a software engineer to its facility in Cape Town, Western Cape. The successful candidate will work alongside the development team building the MeerKAT, MeerKAT Extension, African VLBI Network (AVN) and the Square Kilometre Array (SKA) telescopes. In addition, the incumbent will be responsible for writing the software that controls and monitors the telescope and may be expected to guide and work with junior software engineers to accomplish their tasks. Also, they will research and evaluate requirements for the existing or new software applications, as well as develop, test and maintain software solutions to meet the needs.Â
Key Responsibilities
- Prototyping and software development of the telescope operational software (all stages of the full 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 science activities;
- Assist in maturing of 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; andÂ
- Participate in developing project schedules and activities.
Key requirements
Qualification
- B.Tech/ B.Sc (Comp Sci) with 5+ years; OR
- B.Eng / B.Sc Hons (Comp Sci) with 4+ years; OR
- M.Eng / M.Sc (Comp Sci) with 2+ years; OR
- PhD / D.Eng only.
Experience
- 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 developing, testing, deployment, commissioning, releasing and supporting large-scale projects in Python or C/C++;
- Technical knowledge of development in Linux operating systems (experience in system administration of such will be beneficial);
- Technical experience in architecture design and development of large software projects (experience with control and monitoring will be beneficial);
- Experience in programming in the Python programming language;
- Experience in prototyping and development, including testing, deployment, commissioning, release and support of large-scale projects;
- 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; andÂ
- Experience in the implementation of project management and system engineering principles.
Knowledge
- Modern software collaboration tools such as Github, Containers, Google Drive, and JIRA; and
- Python programming language.
Additional notes
- Participate and thrive in a collaborative environment;
- Both to work independently and be a good team player;
- Troubleshoot issues methodically;
- Ability and willingness to self-train and up-skill independently;
- Communicate effectively (written and verbal);
- 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 processes and software development processes and willingness to participate in improving software development processes and software 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 an 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 by logging in here no later than 30 June 2022. Furthermore, applicants should include a letter of motivation indicating their suitability. In addition, the applicants must provide the names and contact details of referees. Please visit here for more information.
South Africa’s National Research Foundation (NRF) offers a challenging career and competitive remuneration package commensurate with qualifications and experience. Also, the NRF is committed to employment equity and redress and will make appointments to the position in line 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.
Click here to get real time data and information on every Segments and players in the African space and satellite industry.