Lead Software Engineer
Role details
Job location
Tech stack
Job description
We are looking for aLead Software Engineerwho will be responsible for the design, development, and deployment of high-quality software solutions.
This role involves leading a team of engineers on high-profile projects, ensuring best practices are followed, and driving continuous improvement in software development processes.
You will collaborate closely with cross-functional teams, including product management and UX/UI, to ensure that our software solutions meet business and customer needs. You will be responsible for driving culture through your craft and be keen to take on line management responsibilities. Responsibilities
- Lead the architecture, design, and development of complex software systems, ensuring they meet high standards of quality, security, and scalability.
- Manage and mentor a team of software engineers, providing technical guidance to foster professional growth.
- Ensure that coding standards, development best practices, and operational processes are consistently applied.
- Collaborate with product managers, UX/UI teams, and other departments such as DevOps, QA, and IT to translate business requirements into technical specifications and ensure smooth delivery.
- Drive continuous improvement initiatives to optimise performance, reliability, and security in software applications.
- Conduct regular code reviews and ensure that feedback is constructive and promotes learning within the team.
- Implement and maintain CI/CD pipelines to streamline the development and deployment process.
- Troubleshoot and resolve complex technical issues that arise during the software development lifecycle.
- Stay up-to-date with the latest trends in software engineering, communicate complex technical concepts to non-technical stakeholders, and drive the adoption of new tools and methodologies where beneficial.
- Manage project timelines, ensuring that deliverables are completed on time and within scope.
- Contribute to bid questions & early-stage hiring eg cv screening or technical assessments when required
About YouProfessional knowledge and experience
- Guide and optimise team workflows and processes.
- Demonstrate proficiency in a wide range of technical systems and tools.
- Identify and evaluate appropriate technologies and methodologies, making informed decisions about when custom software development is essential.
- Contribute to the developer community
- Inquisitive about internal areas like bids and hiring
- Provide technical leadership, coaching, and mentoring to your team
- Promote knowledge sharing and adoption of good practice
- Uphold best practices in areas such as Infrastructure as Code (IAC), security, testing, and continuous delivery pipelines.
- Flexibility to transition between programming languages with a clear understanding of their suitability for different tasks
Requirements
- Extensive experience in full-stack software engineering, including design, development, testing, and deployment.
- Hands on experience withJava,Spring Boot,Pythonand Microservices, although a truepolyglotis preferred.
- Strong understanding of software development methodologies such as Agile, TDD and DevOps.
- Some proficiency in multiple programming languages such as Python, JavaScript, or similar.
- Extensive experience writing well-tested code.
- Good knowledge of cloud platforms (e.g., AWS, Azure, GCP) and infrastructure as code
- Experience with CI/CD pipelines and automated testing frameworks.
- Experience with various architecture patterns eg microservices and event-driven.
- Experience with containerization technologies (e.g. Docker, Kubernetes).
- Proven ability to manage and lead engineering teams to success.
- Expertise in designing scalable and secure software architectures.
Desirable:
- Knowledge of emerging technologies like AI
- Previous, relevant experience as a senior software engineer
- Leading a large multidisciplinary project
- Line management experience
- Experience interviewing and screening candidates
- Experience responding to bid questions
Skills
- Software Architecture: Expertise in designing scalable, secure, and efficient software architectures, ensuring alignment with business goals.
- Cloud Platforms: Strong proficiency in cloud technologies, including architecture and deployment strategies.
- Programming and Development: Advanced knowledge of multiple programming languages and frameworks (e.g., Python, Java, Node.js).
- CI/CD and Automation: Implementing and maintaining continuous integration/continuous deployment pipelines to accelerate development cycles.
- Code Quality and Testing: Experience with automated testing frameworks (e.g., Jest, JUnit) and best practices for ensuring code quality.
- DevOps Practices: Expertise in DevOps, particularly around automating deployment, monitoring, and scaling applications.
- Communication: Able to confidently communicate with internal and external stakeholders at both the technical and non-technical levels. Able to present and give feedback to relevant groups. Eg demo/TDA
Benefits & conditions
Were an inclusive employer, and we care about diversity in our teams. Let us know in your application if you have accessibility requirements during the interview. Benefits include:
- 30 days holiday + bank holidays
- 2 volunteer days for causes that you are passionate about
- maternity/paternity - 6 months Maternity Leave, 3 months Paternity Leave
- life assurance
- employer pension contribution of 5%
- health cash plan
- personal learning and development budget
- Employee Assistance Programme
- access to equity in the business through a Share Incentive Plan
- green incentive programmes including Electric Vehicle Leasing and the Cycle to Work Scheme
- health assessments