Software Engineer


  • Contact: Human Resources
  • Reference: R0022523

Software Engineer

Thales teams deliver cutting-edge solutions to armed forces the world over. We are Europe’s number one supplier of defence electronics and a leading provider of integrated air defence systems. But our people don’t just work with incredibly advanced technology. The armoured vehicles we build can resist the full force of improvised explosive devices, while our avionics solutions control some of the world’s most iconic military aircraft. Together, our people make the world safer.

Primary Purpose of Job
You’ll be developing software for embedded, safety-related applications such as thermal imagers, laser range finding, digital cameras, image processing and distributed systems.

Our wide variety of software projects from embedded microprocessors to multi-core systems employing distributed communications means we have a range of different projects and technical areas depending on your interests.

As a software engineer, you can expect to be working across the complete lifecycle of software engineering including:

- Understanding customer needs and translating them into requirements.
- Specifying, architecting and designing software components to meet these requirements and those of the greater system.
- Developing software using industry best-practices including OO, design patterns, open-source components, agile development techniques such as unit testing, TDD, pair-programming, peer reviews, continuous integration and automated test.
- Working in a multi-disciplinary team developing software that meets performance and safety constraints and integrates with hardware, FPGAs, sensors and network applications using DDS, Lean Services and other distributed technologies.
- Applying your knowledge and experience of best-practices to ensure our software is maintainable, testable, extensible and reusable.
- Our technology stacks include C and C++, C#, Rhapsody for C++, Linux, VxWorks, Windows Embedded, Qt, DDS and Python.
- Working within the Software Team in researching and applying state of the art processes to deliver our software faster and better.

Technical and Professional Skills
- Demonstrable experience of embedded Software Engineering (C and C++ preferred)
- Experience of OO software development and the use of design patterns
- Experience of a range of RTOSs, platforms and of the hardware/software interface
- Experience of a range of development environments

- Working knowledge of requirements management and associated tools (DOORS)
- Experience of scripting languages (eg. Shell, Python, Perl or Ruby)
- Experience of hardware/software interface and debug
- Experience of developing communications protocols (RS232, RS485, Ethernet, TCP/IP)
- Familiarity with agile development and CI/CD practices
- Testing software to high levels of integrity and coverage, using both static and dynamic testing

This is a fantastic opportunity with a global, innovative company. Join Us.

Together We believe that embracing flexibility is a smarter way of working. If you have a need for flexibility then please discuss with your Resourcing Business partner.

We can't find any similar jobs at the moment.

See all the latest jobs