Operational Cyber Software Engineer
- BAE Systems
- Part Time
- Gloucester
Job Description
Location(s): Gloucester and London
BAE Systems Digital Intelligence is home to 4,500 digital, cyber and intelligence experts. We work collaboratively across 10 countries to collect, connect and understand complex data, so that governments, nation states, armed forces and commercial businesses can unlock digital advantage in the most demanding environments.
Operational Cyber Developer
Location: Gloucester, Manchester or London
Our world class team of Software Engineers and Reverse Engineers tackle some of the most interesting problems with a meaningful and tangible impact on the national security of the UK. We are growing our Cyber Developer team significantly and are looking for a diverse range of talent from experienced Software Engineers with a proven track record to those with a keen interest and aptitude looking to develop their skills in this exciting space!
We have a community of technical specialists with a friendly and inclusive culture with great opportunities to learn from experts and make use of a carefully curated training plan with some of the best trainers and conferences available.
Our focus is on a wide variety devices, platforms and technologies. Development or reverse engineering experience with mobile (Android, IOS), firmware, Linux, IoT and Windows is useful but most important is a willingness to learn as all of our projects bring new and interesting challenges.
What you'll be doing
- Understand various development methodologies, and how they fit in with different delivery approaches.
- Factor operational security requirements into system design, development and testing.
- Conduct, support and encourage constructive code reviews for peers.
- Adopt a pragmatic approach to changing customer requirements and priorities, reporting on the impact and suggesting appropriate aspects to de-scope.
- Embrace emerging technology and language trends, evaluating beneficial emerging tools and championing their adoption and rollout.
- Conduct software development in line with the business and industry best practices.
- Identify risks associated with software development tasks and mitigate and/or escalate as necessary.
- Plan appropriate testing approaches (eg physical/virtual/real-world) and justify them according to the different risk profiles.
- Model and perform analysis on problems and solutions
- Design, code and document software from a logical design.
- Overcome development obstacles to deliver quality code within time and budget constraints.
- Collaborate with team members to integrate developed code seamlessly into the solution.
- Implement continuous integration where appropriate.
- Define and write test scripts and unit, integration and system tests for developed software.
...