SENIOR SOFTWARE ENGINEER (CAM)

REPORTS TO FUNCTIONAL MANAGER – SOFTWARE

LOCATION: WESTERN CAPE

SALARY: NEGOTIABLE

JOB DESCRIPTION

The Main Purpose of this role:

  • Prototyping and software development of the telescope operational software (all stages of the full software development life-cycle may be encountered)
  • Provide hands-on technical support in the system administration of the hardware platforms, deployment environments and processing, which may include site visits to the Karoo
  • Collaborate with departmental stakeholders to support engineering, commissioning, operations and early science activities
  • Assist in maturing of software development and quality assurance processes towards greater standardization and improved long term maintainability and robustness
  • Facilitate coding standard compliance and code reviews, which include mentoring junior engineers
  • Compile document sets
  • Provide project management and progress reporting input as required by the Functional Manager and for team communication
  • Participate in development of project schedules and activities
  • Participate in the development of budgets and cost/benefit analysis for compliance with project procurement policies
  • Make technical decisions independently without direction from Technical lead
  • Has deep understanding of version control to the point of being able to help out junior and software engineers
  • Innovate independently towards improving the software

QUALIFICATIONS AND EXPERIENCE

  • Eng / B.Sc Hons (Comp Science) with 9+ years; OR
  • Eng / [URL Removed] (Comp Science) with 7+ years; OR
  • PhD / [URL Removed] with 5+ years
  • Experience in a software engineering environment, preferably in an engineering development project environment with a strong software focus
  • Python or C/C++ programming language and experience in development, testing, development, commissioning, release and support of large scale projects in Python or C/C++
  • Technical knowledge of development in Linux operating systems (experience in system administration of such will be beneficial)
  • Technical experience in architecture design and development of large software projects (experience with control and monitoring will be beneficial

Desirable Additional Educational, Work Experience, and Personal Qualities

  • Understanding and experience in implementation of project management and system engineering principles
  • Experience with test-driven development and integration testing techniques, methodologies and frameworks; and supporting systems like revision control and build systems
  • Experience with quality assurance processes and software development processes and willingness to participate in improving software development processes and software quality procedures
  • Willingness to play a leading role in mentoring juniors
  • Ability both to work independently and be a good team player
  • Ability to participate and thrive in a collaborative environment
  • Self-motivated and an ability and willingness to self-train and up-skill independently
  • Keen attention to detail
  • Strong oral and written communication skills

THE IDEAL CANDIDATE WILL HAVE THE FOLLOWING COMPETENCIES

Ability

  • Communicate effectively (written and verbal)
  • Participate and thrive in a collaborative environment
  • Both work independently and be a good team player
  • Troubleshoot issues methodically

Experience

  • Quality assurance processes and software development processes
  • Programming in the Python programming language
  • Development, testing, deployment, commissioning, release and support large scale projects
  • Developing applications targeted for the Linux operating system
  • Implementation of project management and system engineering principles
  • Test-driven development and integration testing techniques, methodologies and frameworks and supporting systems

Knowledge

  • Modern software collaboration tools such as Github, Containers, Google Drive, JIRA
  • Python programming language.

TO APPLY:

Update your CV on Career Junction in line with the Job Spec above and mark your cover letter for ATTENTION: SHASHI PREMRAJ.

Desired Skills:

  • python systems
  • Github
  • Containers
  • Google Drive
  • JIRA

Desired Work Experience:

  • More than 10 years

Desired Qualification Level:

  • Honours

Learn more/Apply for this position