Software Developer

17 hours ago

stellenbosch, South Africa Helderberg Personnel CC Full-time
Requirements:

  • South African citizenship or valid work permit.
  • B Tech / B Sc degree in Computer Science or a related field.
  • 3+ years experience in the development of PC software applications.
  • Hands-on development experience in both C# (.NET) and Python.
  • Experience designing and working with relational databases (e.g. MySQL).
Preferred Experience:

  • Development of automated test systems in a production or manufacturing environment.
  • Instrument control and automation (e.g. SCPI, VISA/PyVISA, GPIB, LAN/USB instrument interfaces).
  • Implementing tests against formal test specifications and generating test reports with requirements traceability.
  • Configuration management and product baseline control, or integration with configuration or production management systems.
  • Desktop user interface development (e.g. WPF, WinForms) with a focus on usability for production operators.
  • Managing and analysing large test datasets, e.g. for yield tracking or statistical process control.
  • Exposure to RF, electronics, aerospace or space industries and associated quality standards (e.g. ECSS, AS9100, ISO 9001).
Technical Skills:
  • Proficient in C# (.NET) and Python.
  • Strong database skills (e.g. MySQL): schema design.
  • Software Development Life Cycle (SDLC) knowledge, including version control (e.g. Git), testing and documentation.
  • Software architecture and design skills, with an emphasis on reliable, maintainable and traceable systems.
  • User interface design and development skills.
  • Ability to interpret technical specifications and translate them into robust software.
  • Ability to quickly learn new technologies and absorb information.
Excellent analysis skills
  • Strong attention to detail and a commitment to quality
  • Resourcefulness/initiative
  • Adaptability
  • Team player
  • A customer-focused approach
  • Good communication skills (oral & written)
Duties will include, but not limited:
  • Test software development: Design, develop and maintain proprietary production test software, including Python test scripts and C# PC applications that control test equipment and automate test sequences.
  • ATS implementation: Collaborate with product developers to translate Acceptance Test Specifications (ATS) into production tests, ensuring that every ATS requirement is fully implemented and traceable.
  • Test equipment integration: Work with engineers in the development of test equipment and fixtures controlled by PC-based test applications, including RF test instrumentation.
  • Test data management: Design, implement and maintain databases (e.g. MySQL) for the storage and retrieval of the large volumes of data generated by production testing, ensuring data integrity, traceability and performance.
  • Configuration verification: Interface production tests with the product configuration database to, among others, verify that the configuration of each unit is aligned with the correct product baseline.
  • Test reporting: Generate Acceptance Test Reports (ATRs) automatically from stored test data, in formats suitable for internal review and customer delivery.
  • User interfaces: Develop clear, robust operator interfaces for test stations that improve throughput and minimise the risk of operator error.
  • Integration: Integrate test software and data systems with other functions of the business, such as production, quality assurance and engineering.
  • Software quality: Apply sound engineering practices, including version control, code reviews, documentation and change control, so that test systems stay reliable as products and specifications evolve.
  • Support: Provide production, engineering and customer support, including investigating test failures and data queries.
In return a competitive salary is on offer