South Africa

Clinical Software Engineer - C/C++/Python, Unix, Heidelberg

Clinical Software Engineer - C/C++/Python, Unix, Heidelberg
Description
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 is 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.

Clinical Software Developer 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 from 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

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.

#J-18808-Ljbffr
Highlights
Safety Tips
Be careful with jobs that explicitly state ’no experience needed’.
1 / 10
More info about this ad

Clinical Software Engineer - C/C++/Python, Unix has been posted in the Swellendam Engineering category on Locanto.

For Swellendam, there are no other ads posted in this category.

There are more ads within a 15 km radius for this category. If you want to view those ads, click here.