Senior Software Engineer - Synthetic Training Equipment
Leonardo Helicopters part of the multi-national Leonardo Group is a world leader in the design, manufacture and support of helicopters. We have a great heritage and pride ourselves both on our reputation for excellence and for providing opportunities for our people.
As a Senior Software Engineer for Synthetic Training Equipment, your main purpose is to manage a small group of software developers to design, develop and execute software solutions in order to deliver a full range of responsive, customer focused goods & services. The role will also support new business opportunities providing input to bids and proposal preparation.
Employment benefits include a competitive salary, 25 days annual leave, an on-site Occupational Health Service, flexible working, flexi -leave scheme and a generous relocation package.
The purpose of the Senior Synthetic Software Engineer is to manage a small group of software developers to design, develop and execute software solutions in order to deliver a full range of responsive, customer focused goods & services.
Key Responsibility Areas
Reporting to the Simulation Learning and Support Systems 9SL&SS) Development Manager, key Job Accountabilities will include;
- Provide a UK focus for Software Engineering within the Training team.
- Support the Governance and Control of software engineering activities including the assignment of software engineers to product development, contract delivery and support to customer proposals.
- Design, develop and execute software solutions to address business issues
- Interpret business requirements to articulate the business needs to be addressed.
- Collaborate with other professionals to determine functional and non-functional requirements for new software or applications.
- Use tools and methodologies to create representations for functions and user interface of desired product.
- Develop high-level product specifications with attention to system integration and feasibility.
- Define all aspects of development from appropriate technology and workflow to coding standards.
- Communicate successfully all concepts and guidelines to development team.
- Continue progress of development team to ensure consistency with initial design.
- Support supplier network to ensure consistency with initial design.
- Follow technical guidance and coaching provided.
- Ensure software meets all requirements of quality, security, modifiability, extensibility etc.
- Check final product before launch.
- Troubleshoot code level problems quickly and efficiently.
Skills, Qualifications & Knowledge Required
- Master's degree in Computer Science or Computer Engineering
- Extensive experience designing and building software applications.
- Experience in software development and coding in various languages (C++, C#, .NET, Java, UNITY etc.)
- Excellent knowledge of software and application design and architecture.
- Excellent knowledge of UML and other modelling methods.
- Understanding of software quality assurance principles.
- A technical mind-set with great attention to detail.
- MSc/MA in computer science, engineering or relevant fieldlifications & Knowledge Required.
- Excellent interpersonal and team working skills.
- Ability to work unsupervised with initiative and integrity.
- Ability to discuss at a technical level with the Engineering, Customer and Supplier as required.
- Fluent in the English Language.