Apply now »

Developer

Business Unit:  Discovery Health
Function:  Development (Oracle/Delphi/Magic/etc)
Date:  22 May 2026

Discovery Health – Health Intelligence

Clinical Software Developer

 

About Discovery 

Discovery’s core purpose is to make people healthier and to enhance and protect their lives. We seek out and invest in exceptional individuals who understand and support our core purpose, and whose own values align with those of Discovery. Our fast-paced and dynamic environment enables smart, self-driven people to be their best. As global thought leaders, Discovery is passionate about innovating to not only achieve financial success, but to ignite positive and meaningful change within our society.

 

About Risk Intelligence - Clinical Tool Intelligence Team 

The Risk Intelligence - Clinical Tool Intelligence team develops clinical grouper software that are used by the analysts for clinical reporting, forecasting, budgeting, strategic risk management and predictive modelling. It uses a wide range of technologies, but for performance reasons a large focus is on C/C++, while investigating migration opportunities to Python. The software developed is complicated in nature, and usually processes vast amounts of claims, authorisation and clinical data. This requirement puts a large emphasis on performance of developed software.

 

The software is developed according to requirements as defined by clinicians, actuaries, statisticians and data scientists in the team and larger Health Intelligence division. The work can be extremely challenging but also very rewarding.  The small team is a closely knit unit, with lots of team support amongst each other.

 

Key Purpose

The role has multiple facets, the first being to become completely familiar with existing software models to maintain and enhance them. Equally important is the development of new software models and functionality for the team.

A less challenging but equally important role is running the software programs on a daily and monthly basis – these are called production runs. The programs that need to be run include software developed in-house as well as third party software. For all these, the  input files need to be created, usually by means of C/C++ programs, SQL and shell scripting. Some of these input files themselves can be complex in nature, being created of data from multiple sources.

Running these production runs can involve working outside of office hours, for which time off is granted in lieu of overtime pay. Finally a requirement is to develop ad-hoc programs and front-ends for the team to be able to run various programs themselves – usually through a web page.

It is important for the candidate to be able to work on their own to solve various technical challenges that may arise. Thought must be given to the latest  and future  technologies and methodologies that may better address these challenges. Although C/C++ has traditionally been used for its superior performance, an open mind must be kept to using the correct technology to address current and future requirements.

 

Although guidance will be provided at the beginning, the candidate must work towards being able to make decisions on their own. To this end, a good understanding must be gained of the basic clinical principles, such as clinical coding, that are instrumental in all software developed and run by the team. It is also expected of the candidate to keep current with new developments in software and modelling techniques

 

Areas of responsibility include but may not be limited to 

  • Maintaining and enhancing existing software
  • Developing new software
  • Creating input files
  • Collating output from the various programs for loading into a database
  • Running or assisting with production runs
  • Developing simple front-ends (usually web-pages) to enable the team to run the programs themselves on a single record basis
  • Keeping third party software up to date by updating license keys etc.
  • Developing ad-hoc programs and scripts as required by the team
  • Investigating new technologies and methodologies to keep the software current.

 

Personal Attributes and Skills - high proficiency required 

  • High proficiency in C/C++ and Python
  • A good knowledge of SQL and relational databases
  • Proficiency in Unix/Linux shell scripting.
  • Good knowledge of Unix/Linux
  • Technical computer knowledge – e.g. using shared memory, binary files etc.
  • Must be able to work unsupervised (mentorship is provided)
  • Enthusiasm and willingness to learn 

Personal Attributes and Skills – proficiency required

  • Unix/Linux command-line experience
  • Working knowledge of Microsoft Office products; MS-Word, MS-Excel
  • Working with a source-level debugger (for C) and IDE for Python
  • ProC (Oracle’s SQL interface for C)
  • XML / XSLT
  • HTML / CSS
  • PHP
  • Java/Javascript
  • Any other web technologies such as APIs

 

Education and Experience – minimum 

  • Computer-related tertiary qualification – or minimum 5 years’ experience working in a highly technical environment
  • Minimum 5 years’ Python and C or C++ programming experience
  • Minimum 5 years’ experience software deployment in a Unix/Linux environment.
  • Minimum 3 years’ SQL experience
  • 2 years shell scripting (knowledge of awk or perl advantageous)
  • 1 year HTML programming exposure
  • 1 year XML/XSLT programming exposure
  • 6 months PHP programming
  • 2 years working with MS-Excel, MS-Word etc.

EMPLOYMENT EQUITY   
                             
The Company’s approved Employment Equity Plan and Targets will be considered as part of the recruitment process. As an Equal Opportunities employer, we actively encourage and welcome people with various disabilities to apply.

Apply now »