Job Description
About us
One team. Global challenges. Infinite opportunities. At Viasat, we’re on a mission to deliver connections with the capacity to change the world. For more than 35 years, Viasat has helped shape how consumers, businesses, governments and militaries around the globe communicate. We’re looking for people who think big, act fearlessly, and create an inclusive environment that drives positive impact to join our team.
What you'll do
Viasat UK enables this vision by providing assured Data at Rest solutions that protect UK / Allied government and defence information. Viasat UK protects critical, sensitive data in servers, laptops, tablets, and tailored systems in a way that gives users greater mobility and operational flexibility without compromise.
Viasat has transformed the market for delivery of Data at Rest solutions, and we are growing our team with a Lead Software Engineer to lead our software engineers and work the development of Cyber and Information Assurance projects.
Would you like to have the opportunity to work on the development of groundbreaking products and applications within the security, Cyber and potentially the Satellite communications industry? Join our team to redefine the industry!
The day-to-day
The Software Lead Engineer must be an experienced software engineer who can operate as a key player in the design, development and test of software systems, as well as lead a team of software developers. Approximately 20% of the role will be related to line management duties.
You will be responsible for:
- Analysing software requirements, high level architecture design, low level detailed design, implementation, test and integration.
- Generation of estimates and assisting with the planning process.
- Line management of a team of engineers, including career development and mentoring.
- Lead the team to deliver, assisting with design issues and supervising progress
- Ensuring software developed within the team is of high quality and follows the defined development processes.
- Update and refinement of software development methodologies and tools.
What you'll need
- Full life-cycle software development experience
- Recent experience using C, or C++ in embedded applications, experience targeting PC environments an advantage.
- Must have sole British Nationality (due to UK eyes-only projects), and have, or be capable of obtaining, UK security clearance (SC).
- Sound understanding of operating system concepts such as multi-threading, process scheduling, inter-process communication, memory management and I/O
- Scripting expertise with bash, python or similar
- Proven experience with Object-Oriented Design (OOD) and programming skills
- Configuration management and version control e.g. GitHub
- Previous experience of leading within a software development program, including the mentoring or leading of other software developers.
What will help you on the job
- Design for Security.
- An understanding of:
- Digital security technology.
- Continuous integration, unit test and static analysis.
- x86 architecture, hardware programming and device driver models.
- Implementation of Graphical User Interfaces.
- NVMe.
- Experience of developing for microcontrollers, ideally RISC-V.
- Experience of developing encryption or security products.
- Networking technologies, network security and network programming.
- Requirements analysis, capture and management using IBM Rational DOORS.
- Proven C++ programming experience (including the Standard Template Library) on Linux and/or Windows platforms.
- RUST knowledge.
- Familiarity with cross compilation toolchains and on target debugging.
- Willingness to apply for DV clearance if required.