Software Engineer (Python/C++)

IT – Software Development
Somerset West – Western Cape – South Africa

ENVIRONMENT:
A well-established technology and automation solutions provider is looking for a skilled and passionate Software Engineer/Developer to join their dynamic Application Software Team. The successful candidate will contribute to the development of software for user applications as part of a collaborative and innovative team. A Bachelor’s degree in Computer Science or Engineering (BSc/BEng) is required, along with proficiency in one or more general-purpose programming languages such as Python, C++, or Java.
 
DUTIES:
  • Design, develop, and maintain mission-system-related software including software for payload control, payloads emulators, relay applications, mission logic, etc.
  • Manage and optimise Docker environments for mission system appliances.
  • Enhance software productivity by maintaining CI pipelines, integrated development platforms (IDPs), and build systems.
  • Develop and support other general software productivity tools.
  • Play a major role in the generation of outputs for projects, including design, testing, documentation, production and verification artefacts.
  • Implement the company’s engineering processes, plans and policies as applicable to a specific project; and
  • Perform minor support roles within the company, if required.
 
REQUIREMENTS:
Minimum Qualifications
  • Bachelor’s Degree in Computer Science (BSc) or Engineering (BSc Eng. / BEng).
 
Required Skills and Experience:
  • Proficiency with one or more general-purpose programming languages: Python, C++, Java etc.
 
Recommended Skills and Experience:
  • Practical experience with modern Python, particularly versions 3.10 and beyond.
  • Strong knowledge of the Python Standard Library and common third-party libraries such as lxml, numpy, and argparse.
  • Familiarity with markup languages and related technologies, including XML, XSLT, XML Schema, JSON, and YAML.
  • Proficiency with containerisation technologies such as Docker.
  • Solid understanding of the Linux operating system, particularly distributions like Debian and Ubuntu.
  • Competence in one or more scripting languages, such as Bash, Batch, or PowerShell.
  • Hands-on experience with version control systems, including Git, Subversion, or Perforce
  • Experience working within Agile teams and/or using issue tracking tools like Jira; and
  • 2–3 years of relevant industry or postgraduate experience would be advantageous.
 
ATTRIBUTES:
  • Ability to learn fast and absorb new information quickly.
  • Ability to work as part of a team and collaborate on large projects.
  • Ability to work independently.
  • Strong problem-solving skills; and
  • High standard of communication skills in English (both verbal and written).

+ 27 (0) 21 741 0400