Lead Software Engineer

AdviserPlus
UK
1 day ago
Apply on www.adzuna.co.uk
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
7 years minimum
Working hours
Regular working hours

Tech stack

Clean Code Principles .NET Framework Agile Methodology Artificial Intelligence Software Applications ASP.NET MVC Framework HTML5 Automation of Tests Microsoft Azure C Sharp (Programming Language) Cascading Style Sheets (CSS) Cloud Computing
+32 more
Continuous Integration Database Design Software Design Patterns DevOps Entity Framework Microsoft SQL Server Object-Oriented Software Development Open Web Application Security Performance Tuning Systems Development Life Cycle Secure Coding Software Deployment Software Engineering Software Systems SQL Databases Transact-SQL TypeScript YAML ReactJS Backend Git Deployment Automation Performance Monitor Front End Software Development Virtual Agents Api Design Software Coding Restful APIs Terraform Software Version Control Serverless Computing Web Api

Job description

As a Lead Software Engineer, you will play a critical role in driving the technical direction of software solutions as well as supporting the career and personal progression needs of a team of engineers.This position requires strong leadership skills to guide a team of engineers, foster collaboration, providing technical mentorship, with a focus on the practical use of AI technologies to improve how we deliver software. The Lead Software Engineer will work closely with cross-functional teams to align technical strategies with business objectives and deliver robust solutions that meet client needs.

Key accountabilities and responsibilities:

Technical Leadership:

  • Champion the use of AI tools and technologies across our development practices.* Provide leadership in the design, development, and deployment of software applications.* Lead system design and architecture discussions to build scalable and robust systems.* Drive best practices across the software engineering team, ensuring adherence to coding standards, design patterns, and performance optimization.* Mentor and guide team members, promoting technical excellence and continuous improvement.* Identify and evaluate opportunities to improve existing code, technical standards and ways of working. Take accountability for the accuracy of estimates, on-time project delivery and average cycle time for the team.

Software Development:

  • Define and evolve an AI-first approach to software development* Develop cloud-native AI solutions using industry-leading platforms and services to extend our existing products* Develop high-quality software solutions using C#, .NET technologies, and frontend frameworks such as React.js.* Write efficient, scalable, and maintainable code with a focus on high-quality standards and minimal defect leakage.* Implement frontend solutions using Typescript, ASP.Net MVC, HTML5, CSS.* Design and develop RESTful APIs and Web APIs, ensuring best practices in API design.* Utilize SQL, Entity Framework, T-SQL and SQL Server for database management and optimization.* Apply design patterns (e.g. OOP, SOLID, Clean Code) to create robust and reusable code components.* Challenge, define and promote the use of AI agent capabilities to improve software engineering processes and delivery.

Understand the OWASP Secure Coding Practices and establish security focussed development practices.

Cloud Computing & DevOps:

  • Develop and deploy applications on Azure using services such as Azure Apps, Blob Storage, Service Bus, and Azure Functions.* Utilize version control systems (Git) and participate in DevOps practices including CI/CD pipelines (e.g., YAML), Infrastructure as Code (e.g. Terraform).* Leverage Azure DevOps for task management and deployment processes

Collaboration & Communication:* Lead collaboration efforts within the team, as well as with System Architects, Platform Engineering, and Product Owners, to align technical solutions with business goals.* Act as the primary technical liaison with clients to understand their business objectives and translate them into technical requirements.* Communicate technical concepts and project progress clearly to both technical and non-technical stakeholders.* Proactively provide feedback and foster a collaborative environment where team members can thrive.

Delivery

  • Oversee the delivery of software projects from small to large scale, ensuring that timelines and quality expectations are met.* Monitor project progress and identify potential risks or deviations, implementing corrective actions as needed.* Facilitate Agile ceremonies, ensuring the team follows Agile best practices.* Ensure timely and efficient delivery of software that meets client and business requirements.* Provide High-Level Sizing and Detailed estimates that accurately reflect project scope and complexity leading to minimal variance between estimated and actual effort.* Work with the delivery lead to create a well-defined project plan with clear timelines and resource allocation.* Take accountability for tasks progressing through each stage of the SDLC.* Own and continuously improve the software release process, driving greater automation, reliability and deployment frequency while maintaining appropriate quality, security and governance controls.

People Management (20% of your time):

  • Conduct one-to-one meetings, appraisals, and performance monitoring for team members, providing constructive feedback and identifying growth opportunities.* Manage career progression within the team, including identifying training needs and supporting professional development.* Handle conflict resolution and disciplinary matters with a fair and objective approach.* Set and monitor objectives for team members, aligning their goals with overall project and company objectives.* Participate in interviews and technical assessments to recruit top talent and ensure a high-performing team.

Knowledge Sharing & Mentorship:

  • Lead knowledge exchange sessions within the team and across the organization, fostering a culture of continuous learning and innovation.* Organize and lead sessions to share insights and drive process improvements.* Contribute to shaping policies, processes, and technical decisions within the team and organization.

Requirements

Required:

  • 7+ years of experience in software engineering, with a focus on backend and frontend technologies.* Proven experience in leading software engineering teams and driving technical projects to successful completion.[JC2.1][JC2.2]* In-depth experience with C#,.NET 8.x+, React.js, and associated technologies.* Expertise in SQL, Entity Framework, and SQL Server, with a strong understanding of database design and optimization.* Hands-on experience with cloud platforms, particularly Azure, and its associated services.* Experience working with automated software delivery processes, including CI/CD pipelines, automated testing and deployment automation. * Experience working within “you build it, you run it” engineering models, with teams owning software through development, deployment and production, and applying modern engineering practices that enable frequent, safe and reliable releases.

Preferred:

  • Experience in mentoring and managing a team of software engineers.* Strong background in Agile methodologies and CI/CD pipeline management.* Previous experience in client-facing roles, with the ability to translate business needs into technical requirements.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.adzuna.co.uk
Prepare application

Good distractions

Loading talks and stories from around this role…