We are looking for an experienced Software Engineer to support the development of an ATM system. The successful candidate does not need to be familiar with ATM; on-the-job training will be provided as required. The software engineer will work in a rapidly changing environment, delivering software of a high quality to wide range of difficult problems. They will work as part of a team performing all software development activities throughout the development life cycle. The position will require understanding and application of the software engineering standards, principles and best practices. Candidates must be a competent developer with sound technical knowledge, which will enhance the delivery of technical solutions to our customer. You will have excellent communication skills coupled with a combination of the following:
Typical Duties
- Design software using functional and/or object-oriented methodologies
- Implement software solutions and/or tools that contain logical and mathematical solutions
- Conduct functional, unit testing and/or early system integration testing
- Investigate problems identified during test, including problem diagnosis and resolution
- Prepare operating instructions for the software application and/or tool
- Document and present research findings to relevant stakeholders
- Apply the appropriate standards, processes and principles in his/her daily activities
- Experience of developing software in C and C++
- Experience of developing software in Ada 95
- Knowledge of using APIs
- Experience of developing on Real Time Operating System (RTOS) like Linux.
- Enthusiastic self-starter with good verbal communication
- Excellent written communication through the use of e-mail, presentations and reports
- Comprehensive understanding of various software development methodologies
- Knowledge of configuration management within a software engineering environment (e.g. Subversion, Git)
- Experience of developing software in Java
- Knowledge of infrastructure as code and container technologies (e.g. Puppet, Docker)
- Experience of Atlassian tools (e.g. Jira, Confluence)
- Experience with public cloud platforms (e.g. AWS)
- Experience of scripting languages (e.g. Python)
- Experience of systems / software design tools (e.g. Enterprise Architect, Cameo Systems Modeller)
- Ensuring delivery of clean, quality code within a software development environment
Be the first to know aboutnew jobs every week
Get 8 new jobs with salaries, once per week! Sign up here so you don't miss a single newsletter.