Job Title: Software Engineer
Type: Permanent
Location: Farnborough, UK
Clearance: SC Cleared
Role Overview:
Are you passionate about building scalable software solutions and working with modern technologies in a collaborative environment?
Our client is looking for a talented Software Engineer to join a dynamic development team, contributing to the design, development, and continuous improvement of high-quality software systems. This role offers the opportunity to work across both front-end and back-end technologies while embracing modern DevOps practices and cloud-based solutions.
Key Responsibilities:
* Collaborate closely with cross-functional teams to design, develop, and maintain innovative software solutions
* Use appropriate tools and methodologies to support all stages of the Software Development Life Cycle (SDLC), including design, development, and static analysis
* Manage code effectively using industry-standard version control systems (e.g. Git)
* Develop responsive and engaging user interfaces using JavaScript/TypeScript and React
* Design and build robust, scalable backend systems using languages such as Java, Python, or Go
* Leverage containerisation technologies (e.g. Docker) to ensure consistent environments and efficient deployment
* Build, maintain, and optimise CI/CD pipelines to automate software delivery
* Write clean, maintainable, and well-documented code aligned with best practices and engineering principles
* Participate in code reviews, providing and receiving constructive feedback to improve code quality
* Stay up to date with emerging technologies, tools, and industry trends
Essential Skills and Experience:
* Bachelor’s degree in Computer Science, Engineering, or a related field
* Proficiency with Git for version control and collaborative development
* Strong front-end development skills using JavaScript/TypeScript and React
* Experience or familiarity with backend languages such as Java, Python, or Go
* Solid understanding of software engineering fundamentals, including algorithms and data structures
* Experience using Docker for containerisation
* Good understanding of DevOps practices, including CI/CD pipelines and automated testing
* Strong communication skills with the ability to work effectively in a collaborative team environment
* Ability to evaluate and compare technologies to support technical decision-making
* Adaptability and willingness to learn in a fast-paced, evolving environment
Desirable and developing skills:
* Experience with cloud platforms such as AWS or Azure
* Familiarity with container orchestration tools like Kubernetes
* Understanding of Agile methodologies and DevSecOps practices
* Knowledge of web security principles and best practices
* Exposure to or interest in Rust programming language