Controls Software Engineer

Cape Town, Western Cape, South Africa

Job Description


The Controls Software Engineer plans, implements, modifies, administers and evaluates Control and Data Acquisition (SCADA)
software and systems for the telescope. While being part of the Computing and Software team, they work with the Observation Monitoring and Control Agile Release Train in coordination with the Control System Architect and other Control
System Engineers to develop the control system, using the TANGO framework. They must have an understanding of Agile
methodologies and DevOps processes. They must have experience in Python, Git, Test-Driven Development, Test Automation & Continuous Integration They should have or be willing to acquire experience in the TANGO toolkit including TANGO device development and client-side tools, understanding of Interferometry techniques, C++, Docker, Kubernetes, Gherkin, Behaviour Driven Development & practical experience configuring instrumentation and commissioning control systems and parts of scientific instruments.Key Responsibilities:

  • Development and maintenance of the telescope control system software
  • Assist in systems engineering Documentation refinement
  • Support users, and operators, as well as the implementation of releases, system changes and fixes.
  • Establish and maintain working relationships with members of other teams within the organisation.
  • Work with other Software Team members to respond to inter-team issues.
  • Manage relationships with mentors and senior engineers such that there is a learning relationship from their experience or expertise
  • Participate in project management and activity management activities.
  • Attend relevant training/courses to gain experience and improved knowledge.
  • Research new technologies, methods or approaches, with the purpose of utilizing them within the organization.
  • Participate in innovation and technology development initiatives.
Key Requirements:Qualification:
  • BTech/BEng/ MTech/ MEng/PHD in Mechatronics, Electronic Engineering, Control Systems, Computer Science, or such relevant qualifications.
Experience:
  • BTech in Mechatronics, Electronic Engineering, Control Systems, Computer Science, or such relevant qualification coupled with 6 years relevant working experience within a software engineering environment, preferably in an engineering development project environment with a strong control systems
  • BEng/ MTech in Mechatronics, Electronic Engineering, Control Systems, Computer Science, or such relevant qualification coupled with 4 years relevant working experience within a software engineering environment, preferably in an engineering development project environment with a strong control systems
  • MEng in Mechatronics, Electronic Engineering, Control Systems, Computer Science, or such relevant qualification coupled with 3 years relevant working experience within a software engineering environment, preferably in an engineering development project environment with a strong control systems
  • PHD in Mechatronics, Electronic Engineering, Control Systems, Computer Science, or such relevant qualification coupled with 1 year relevant working experience within a software engineering environment, preferably in an engineering development project environment with a strong control systems
  • Python or C/C++ programming language and experience in development, testing, deployment, commissioning, release and support of projects in Python or C/C++.
Knowledge:
  • Experience in programming in Python.
  • Experience in developing SCADA, Control systems and plc development
  • Experience with control systems frameworks, e.g. TANGO toolkit including TANGO device development and client-side tools, or comparable toolkits
  • Software development, including database development, real-time sensor messaging management, Behaviour Driven Development
  • Computer and environment setup and configuration, including the use of containers, Kubernetes, Gherkin, etc.
  • Practical experience configuring instrumentation, integrating and commissioning control systems, and operator training.
  • Willingness to transition between system development and system support and operations team
Additional Notes:
Skills/Ability/CompetenciesEssential:
  • Control systems software engineering and development
  • IT and Information systems analysis, design, implementation, integration, delivery and operations
  • Agile approaches to systems development
  • IT systems architecture concepts
  • An understanding of DevOps processes
  • Data curation, transfer, management, archival and governance
  • IT Services, Operations and Support management
  • Risk management
Desirable :
  • Knowledge of control systems frameworks, preferably TANGO
  • Knowledge of Radio Astronomy techniques, instrumentation and observatory practices
  • Ability to communicate effectively to a wide audience and a wide range of stakeholders, gathering information and distilling information and tailoring it appropriately for the target audience.
  • Ability to develop and convey a technical solution as part of a team
  • Ability to reliably estimate and plan work as part of a team.
Skills:
  • Modern software collaboration tools such as Github, Containers, Google Drive, JIRA etc.
  • 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.
  • Teamwork and Collaboration: Cooperates with others to achieve organisational objectives and may share team resources in order to do this. Collaborates with other teams as well as industry colleagues.
  • Judgement and Problem Solving: Anticipates and manages problems in ambiguous situations. Develops and selects an appropriate course of action and provides for contingencies. Evaluates, interprets and integrates complex bodies of information and draws logical conclusions, synthesises proposals and defends options with reasoned arguments.
  • Adaptability: Demonstrates flexibility in thinking and adapts to and manages the increasing rate of organisational change by adjusting strategies, goals and priorities.
  • Willingness to participate in formal and informal learning and mentorship programs

TaSiSo Consulting

Beware of fraud agents! do not pay money to get a job

MNCJobs.co.za will not be responsible for any payment made to a third-party. All Terms of Use are applicable.


Job Detail

  • Job Id
    JD1310213
  • Industry
    Not mentioned
  • Total Positions
    1
  • Job Type:
    Full Time
  • Salary:
    Not mentioned
  • Employment Status
    Permanent
  • Job Location
    Cape Town, Western Cape, South Africa
  • Education
    Not mentioned