Principal Software Engineer Department: Technology
Reports to: Head of Engineering
Location: London/Hybrid
A family that dreams big and always works together to make insurance better. We offer our employees a unique benefits package that includes personal training sessions, well-being provisions, and an additional day off for your birthday! You will assume a pivotal role, leveraging your extensive expertise to drive innovation and excellence across all facets of software development. In addition to spearheading the design, development, and maintenance of sophisticated software solutions, you will take a lead role in mentorship, software design and architecture, and championing secure software development practices throughout the software development lifecycle. Drawing from your wealth of experience with multiple programming languages, advanced software development methodologies, and industry best practices, you will serve as a beacon of knowledge and inspiration, guiding and mentoring both seasoned and junior team members to unlock their full potential. Your strategic and technical guidance will be instrumental in shaping the design decisions of our software products, ensuring scalability, reliability, and maintainability at every stage. Your influence will extend beyond individual projects as you champion software development best practices throughout the organisation.
Participate in and aid in facilitating Agile ceremonies, providing expert guidance and mentorship to ensure seamless execution of sprint planning, daily stand-ups, sprint reviews, and retrospectives.
Architect and deliver innovative solutions using a mastery of software design principles and patterns to address complex business challenges.
Lead the design and implementation of transformative software features, driving architectural discussions and providing strategic direction to ensure scalability, maintainability, and alignment with organisational objectives.
Define and implement comprehensive unit testing strategies and frameworks, emphasising code reliability, test coverage, and industry best practices, while mentoring team members in testing methodologies and quality assurance.
Serve as a subject matter expert in diagnosing and resolving intricate technical issues, leveraging advanced debugging, and troubleshooting techniques to uphold system integrity and optimise performance.
Drive excellence in version control management, overseeing branching strategies, code reviews, and repository hygiene to maintain codebase integrity and foster collaboration efficiency.
Mentor and coach team members in code artisanry and conduct rigorous code reviews, setting the highest standards for code quality, performance, and security within the organisation.
Lead the design, implementation, and optimisation of CI/CD pipelines, using advanced automation techniques and deployment strategies to streamline software delivery and drive continuous improvement.
Bachelor’s degree in computer science, Software Engineering, or related field (or equivalent experience).
Significant development experience in the required language, including OOP.
Experience working with multiple programming languages.
Advanced understanding of containerisation, serverless technologies and other cloud deployment paradigms.
Azure, AWS
Experience with Agile teams, tools and best practices.
Seek feedback, reflect on past experiences, and identify development opportunities.
Communicate clearly and concisely, both verbally and in writing, to technical and non-technical stakeholders.
Leadership: Demonstrate leadership qualities by inspiring and motivating team members, setting a positive example, and guiding the team towards achieving common goals. We value applicants from all backgrounds and foster a culture of inclusivity. We understand the need for flexibility, so work in a hybrid model.