Junior Scientific Software Developer
University of the Witwatersrand
Johannesburg
On-site
ZAR 350,000 - 600,000
Full time
Job summary
A prominent South African university in Johannesburg is seeking a research programmer to optimise performance through advanced numerical and AI-based methods. The ideal candidate should have a master's degree or higher in a relevant field and strong programming skills in Python and/or C++. Responsibilities include coding, documentation, and contributing to academic publications within an international research team.
Qualifications
- Strong programming skills in Python and/or C++.
- Demonstrated ability to develop efficient, well-structured, and maintainable code.
- Proven research track record, including contributions to publications.
Responsibilities
- Write robust, efficient, and well-documented code.
- Collaborate with researchers and technical staff.
- Apply advanced numerical and AI-based methods.
Skills
Python
C++
Collaborative coding
Version control
Communication skills
Organisational skills
Education
MSc or higher in Computer Science or related
Overview
Brief Description
Responsibilities
- Write robust, efficient, and well-documented code to optimise performance
- Collaborate with researchers and technical staff to understand requirements and deliver solutions
- Apply advanced numerical and AI-based methods to accelerate simulations and data analysis
- Produce high-quality documentation and contribute to knowledge sharing
- Support the wider project research goals through coding, testing, and optimisation cycles
- Contribute to academic publications, including co-authoring papers and preparing supplementary materials such as figures, datasets, and code repositories
- Assist in the preparation of research reports, grant deliverables, and presentations for internal and external stakeholders
- Participate in regular team meetings, collaborative planning sessions, and cross-institutional discussions
- Provide technical support to other team members and assist with troubleshooting and mentoring as required
- Undertake additional tasks that support the research programme and institutional goals, as directed by the project lead
Minimum Requirements
- MSc or higher in Computer Science, Applied Mathematics, Physics, Engineering, or related
- Strong programming skills in Python and/or C++
- Demonstrated ability to develop efficient, well-structured, and maintainable code
- Experience with collaborative coding environments and version control
- Proven research track record, including contributions to publications, technical reports, or open-source projects
- Strong communication, collaboration, and organisational skills within an international research project team
Desirable Experience
- Experience building and/or training neural networks
- Background in scientific computing environments
- Knowledge of statistics and/or Monte Carlo simulation methods