Snr Control Software Engineer
Engineering/Technical
Cape Town – Western Cape
ENVIRONMENT:
A radio astronomy company is seeking a Senior Control Software Engineer to plan, implement, modify, administer, and evaluate Control and Data Acquisition (SCADA) software and systems for a cutting-edge telescope. The ideal candidate should have extensive experience and deep understanding of Agile methodologies and DevOps processes. Proficiency in Python, Git, Test-Driven Development, Test Automation, and Continuous Integration is required. Qualifications include a BTech with 13 years of full-time experience in a software engineering environment, preferably in an engineering development project with a strong focus on control systems software development, or BEng/MTech with 9 years of full-time experience in a software engineering environment, preferably in an engineering development project with a strong focus on control systems software development, or MEng with 7 years of full-time experience in a software engineering environment.
DUTIES:
- Development and maintenance of the telescope operational software
- Assist in systems engineering documentation refinement
- Support users, operators, as well as the implementation of releases, system changes and fixes.
- Establish and maintain working relationships with members of other teams within the organization.
- Work with other Software Team members to respond to inter-team issues.
- 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.
- Mentor and educate more junior engineers as and when required
REQUIREMENTS:
Qualifications:
- MEng with 7 years of full-time experience in a software engineering environment, preferably in an engineering development project environment with a strong control systems software development focus, or
- PhD with 5 years of full-time experience in a software engineering environment, preferably in an engineering development project environment with a strong control systems software development focus
- Experience in Python or C/C++ programming, including development, testing, deployment, commissioning, release, and support of projects
- Specialization or leadership in one or more required job knowledge areas
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, behavior-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
Skills/Competencies/Abilities:
- Extreme Importance/Essential:
- 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
- Understanding of DevOps processes
- Data curation, transfer, management, archival, and governance
- IT services, operations, and support management
- Risk management
ATTRIBUTES:
- Passion for Excellence
- World-class service
- People-centered
- Respect
- Integrity and Ethics
- Accountability