Purpose of Role
To work as part of the Product Development Team, with specific responsibility for PC software design. The role is responsible for developing PC based applications to support Elektron’s instrumentation products, particularly those of Elektron Eye Technology Ltd.
Software architecture design ownership through expertise and innovation of product development from architecture and concept definition through to detailed modelling, coding, debug and subsequent product qualification.
An accurate understanding of product requirements and the system architecture is essential.
Generation of detailed specifications and design of PC applications with a focus on:
- Controlling remotely connected instruments and analysing their data.
- Capture analysis and recording of data.
- Implementation of complex algorithms.
- Delivery of high quality documentation and reports.
- Meeting of challenging project deadlines while assuring high quality solutions.
- Helping to build the core knowledge, best practices and design standards for the team, department and company.
The PC Applications Software Engineer will have a high skill level in the fundamentals of software Engineering including:
- Mathematics and statistics.
- Developing applications in Windows environment.
- Interfacing PC applications to embedded controllers.
- Connecting PC applications across networks.
The PC Applications Software Engineer will be:
- Able to contribute and thrive in an exciting, dynamic, and fast moving environment.
- A team player with excellent interpersonal and cross-functional working skills.
- Innovative along with a methodical and systematic approach to work.
- Detailed and quality conscious with a sharp focus on schedule and delivery.
- An excellent verbal and written communicator.
Qualifications and Experience
- Batchelor’s degree in Computer Science/Engineering or equivalent.
- Minimum of five years developing PC applications with GUIs in a commercial environment.
- Knowledge of object orientated design and analysis.
- Knowledge and experience in C/C++.
- Experience with source control systems, e.g. GIT.
- Experience with bug tracking systems, e.g. JIRA.
- Experience with designing for automatic test/regression.
- Familiarity with Agile/Scrum development techniques.
- Experience of working with quality systems such as ISO 13485 and 21CFR820.
- Software life cycle to IEC 62304 and change management.