About BAE Systems Applied Intelligence
The Applied Intelligence business of BAE Systems delivers solutions which help to protect and enhance the connected world, everything we do creates a safer future! We are obsessed about solving problems for our customers; we bring together great minds and collectively we make the world a safer place!
We help nations, governments and businesses around the world defend themselves against cybercrime, reduce their risk in the connected world, comply with regulation, and transform their operations. We do this using our unique set of solutions, systems, experience and processes - often collecting and analysing huge volumes of data.
We employ over 4,000 people across 18 countries in the Americas, APAC, UK and EMEA
BAE Systems Applied Intelligence specialises in collecting, managing and exploiting information to reveal actionable intelligence. We use this capability to help government and commercial clients reveal intelligence, maintain security and strengthen resilience in today’s complex operating environment. We also use our skills to assist clients with other information-intensive problems such as achieving regulatory compliance and understanding customer behaviour.
We are seeking talented Software Engineers who are responsible for the overall design of an application, ensuring that it meets it’s Functional and Non-Functional Requirements. The individual would typically be a software developer with demonstrable experience in one or more development languages and is therefore able to set the direction of the design, development and methods used for a development team.
You may work as part of a Development or Architecture team, depending upon project size, and is capable of managing a team of System Developers/Designers or Application Architects. You will be involved in aspects of estimation, planning and risk management, ensuring delivery to agreed timescales and quality standards.
- Responsible for the design of an Application (the complete set of software components that make it) to ensure that it meets the Functional and Non-Functional Requirements set of it.
- Responsible for stakeholder management (e.g. solution architects, implementation team lead, test team lead) externally to counterparts within the client, owning the relationships for the project
- Tailors DMF to meet the projects needs and contributes back into wider AI Method work
- Responsible for the production of estimates, costs and delivery timescales at appropriate points in the development lifecycle
- Works with Functional Architects and Test Managers to ensure that requirements are suitable to be developed and tests are appropriate to verify them
- Able to define / apply and enforce the usage of modern engineering best practices and automated application lifecycle management (ALM) approaches including Configuration management (SCM, branching strategies, release strategies), Build and dependency management (Maven, Ivy), Continuous integration (CI) and deployment, Automated testing (Unit, Functional, Integration, Performance and Acceptance) and quality reporting (Code coverage, standards compliance, systems complexity / heuristics)
- Carries out / contributes to assurance and due diligence activities relating to products and suppliers.
- Understands and leverages existing AI organisational experience, IP and expertise in similar providing solutions – working with other client teams, market, product and proposition experts
- Helps define standards and patterns for the Software Development teams to use, reducing costs and increasing quality and re-uses AI and industry standards where available
- Contribute to external and internal technology related technical forums (e.g. Open Source communities, Practices and Professions, SIGs, Technical Forums) and demonstrate innovation and thought leadership
- Understands infrastructure and middleware technologies to a level that requirements can be specified to an Infrastructure Architect and decisions can be made as to the most appropriate platform for the Application
- Works with Service Architects and MS teams to ensure the designed application meets the Supportability needs and can be transitioned easily into Live Service
You will have experience and knowledge of;
- the full project lifecycle from bid, through requirements capture to development, integration, testing and delivery
- Knowledge of development methods such as Agile, Waterfall, XP, SCRUM, RUP
- Experience of estimation techniques and the ability to use them appropriately throughout the development lifecycle
- Familiarisation with DMF and ability to use it on projects
- Experience with project quality techniques including planning, risk management and decision making
- Knowledge of design “ities” such as security, scalabililty, reliability and the ability to create and review designs which incorporate them appropriately
- Knowledge of programming techniques such as test driven development, continuous integration, code coverage, static analysis
- Working understanding of infrastructure platforms and middleware
Skills will have acquired;
- System design and architecture
- Design and code reviews
- Component estimation and costing
- Issue and risk management
- Programming competency with a 3rd generation programming language
- Evangelism and communication
- Technology evaluation
- Validation / testing
- Performance analysis
- Refactoring techniques
Your technical toolbox will include experience or knowledge of;
- Middleware and containers (Tibco, WebLogic,WebSphere, Oracle, OSGi, Jetty, Tomcat, Apache)
- Languages (Java, Groovy, C#)
- Frameworks (JEE, Spring, .Net)
- Operating systems (Linux, Windows)
- Web Technologies (HMTL5, Ajax, XML, REST, JSF)
- Scripting (UNIX, PHP, Python)
- Modelling (UML, BPMN, Sparx EA)
- Integrated development environments and automation (Eclipse, VSTS)
- Integration (Spring, WS/SOAP, MoM, RMI, JMS)
- Persistence frameworks (Hibernate,JPA)
- Datastores (MySQL, Oracle, NoSQL)
- Profiling and audit (JProbe)
- COTS (e.g. Documentum)
- ALM (Maven, Ant, Hudson, JIRA)
- Mock frameworks (JMock, EasyMock, Mockito)
- Test automation (Junit, httmlunit, webdirver, Selenium, Loadrunner, Grinder (or .Net equivalents))
- Quality reporting (Sonar, Checkstyle, PMD, Findbugs, Cobertura, or .Net equivalents)
- Approaches (OOAD, TDD, BDD, xUP, EPF)
Our success is down to the skills of our people. However, we won't rest on our laurels – the changing nature of our business means that we’re constantly looking for the very best people to fulfil our ambitions. As an experienced professional joining any part of the business, we’ll entrust you with responsibility, client contact, variety and support from day one. We believe that individual differences make our team stronger; we'll encourage and support you to develop your skills and reward you as you grow. Whatever your area of expertise, you'll be much more than just a job title; you'll be an integral part of the business, making a difference every day. Great minds deserve great rewards, so we also offer a very competitive salary and benefits package!
Help us secure a connected world. Apply now and be inspired.
The Applied Intelligence business of BAE Systems delivers solutions which help to protect and enhance the connected world. Our solutions combine large scale data exploitation, ‘intelligence-grade’ security and complex services and solutions integration. We operate in four key domains of expertise: Cyber Security, Financial Crime, Communications Intelligence and Digital Transformation.
Today, we have over 2,800 staff in 26 offices serving clients across the UK and Europe, the Americas, Asia Pacific and the Middle East. Our people apply intelligence to protect and enhance national and organisational assets so that they can grow and prosper – from improving the health and efficiency of leading corporations to protecting critical infrastructures, safeguarding vulnerable people and catching criminals.
Help us secure a connected world. Apply now and be inspired.