Postion Summary:
The SAEON uLwazi Node, based in Cape Town, Western Cape, requires the services of a systems engineer to be responsible for the re-development, integration and maintenance of a legacy ocean data archive as a modern, Python-based web application with a backing PostgreSQL database.
Key Responsibilities:
- Consult with data curation and data science teams, and internal and external stakeholders, as needed, to understand and capture system requirements
- Analyse and understand the functioning of existing production and legacy systems
- Conduct research into available tools, technologies and best practices in formulating an approach to system design and development
- Create and maintain system design diagrams (UML, ERD, etc) using online diagramming tools
- Create and maintain system documentation using GitHub and/or the uLwazi wiki
- Develop system features and enhancements
- Create unit tests for services and APIs
- Fix bugs
- Participate in code reviews
- Maintain source code using git and GitHub
- Work with the systems development lead to establish scope and timelines for deliverables
- Keep track of progress and status of tasks using the Jira project management tool
- Provide progress updates during weekly development team meetings
- Engage with teammates to discuss and evaluate system designs, technology choices, etc
- Give presentations and demonstrations of work, at intervals, for review and feedback by team leads and stakeholders
- Liaise with the infrastructure team to coordinate server provisioning and system deployment
- Configure runtime environments, databases, web servers and proxy servers, as needed, in respect of system deployments
- Apply library updates and security patches to deployed systems
- Monitor production systems operations and performance
Minimum Qualification:
- Bachelors Degree / Advanced Diploma / NQF 7
Minimum Experience:
- 5-7 years
- Bachelor’s degree in computer science, mathematics, engineering or the physical sciences
- 5+ years of experience, professionally, in systems development
Experience:
- Experience working with geospatial dataFamiliarity with JSON and JSON SchemaExperience in the use of authorization protocols such as OAuth2Familiarity with the Linux command line and Linux server administrationExperience in the use of version control software
Knowledge:
- Proficiency in the design, development, testing and deployment of production-grade services, APIs and web applicationsProficiency in relational database design and SQLProficiency in PythonUnderstanding of object-oriented design principles and patternsProficiency in additional server-side programming languages such as Java, C#
Additional Notes:
Excellent communication skillsAn aptitude for solving complex problemsAttention to detail and a passion for systems developmentThe NRF website provides more details on the initiatives and activities
Applicants should submit a comprehensive CV by registering and apply online through the NRF Recruitment and Selection Portal.
Applications should be accompanied by a letter of motivation indicating the applicantĀ·s suitability for the position.
The names and contact details of at least three referees should be provided.
Desired Skills:
- Skilled in applied field of position
- Knowledge to be relevant
- Responsible in performing duties
About The Employer:
The South African Environmental Observation Network (SAEON) is a research platform funded by the Department of Science and Innovation (DSI) and managed by the National Research Foundation (NRF).
SAEON is mandated to establish and manage long-term environmental observatories; maintain reliable long-term environmental data sets; promote access to data for research and/or informed decision-making, and contribute to capacity building. The mandate is executed through seven geographically distributed nodes coordinated by the SAEON National Office in Pretoria.