Senior Software Engineer
17 days ago
Farnborough
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