Overview
An established Automation company is seeking a talented and passionate Software Engineer / Developer to join their dynamic Application Software Team. In this role, you will be part of a team developing software for user applications, with a focus on highly reliable, safety-critical, and mission-critical systems. The ideal candidate will hold a Bachelors Degree in Computer Science or Engineering (BSc / BEng) and demonstrate proficiency in one or more general-purpose programming languages (e.g., C++, Java) as well as scripting languages (e.g., Python, Bash, PowerShell).
Responsibilities
- Take a senior role in the development of application software, mainly for operator-facing, mission-critical software used in C2 and ISR systems.
- Take ownership of features from requirements through design, implementation, and testing for front-end and back-end development.
- Research and understand new domains and technologies sufficiently to understand user requirements and implement features.
- Assist with the companys production efforts related to application software.
- Play a major role in the generation of outputs for projects, including design, testing, documentation, production and verification artefacts.
- Implement the companys engineering processes, plans and policies as applicable to a specific project; and
- Perform minor support roles within the company, if required.
Qualifications
- Bachelors Degree in Computer Science (BSc) or Engineering (BSc Eng. / BEng).
Required Skills and Experience
- Proficiency with one or more general-purpose programming languages: C++, Java, etc.
- Proficiency with one or more scripting languages: Python, Bash, PowerShell, etc.
- Understanding of object-oriented design and common software patterns.
- Experience with collaboration using version control software such as Git, Subversion, or Perforce.
- 3 - 7 years of relevant industry or postgraduate experience advantageous; working in a team using Agile methods and/or issue tracking software such as Jira.
- Modern C++ experience, especially C++11 and onwards.
- Markup languages and associated technologies including XML, XSLT, XML Schema, JSON, YAML.
- Masters Degree in Computer Science (MSc) or Engineering (MSc Eng. / MEng) is a plus.
Attributes
- Ability to learn fast and absorb new information quickly.
- Ability to work as part of a team and collaborate on large projects.
- Ability to work independently.
- Strong problem-solving skills.
- High standard of communication skills in English (both verbal and written).