Senior Software Engineer / Tech Lead

Summary

This is a hands-on Senior Software Engineer and Technical Team Lead role responsible for developing complex software using Java and C++ while mentoring team members. The position involves working in an Agile Scrum environment to deliver high-quality products using cloud-native architectures and AI-assisted development tools.

Salary: £58,000 - 98,000 per year

Requirements:
  • Minimum 6 years of experience developing complex software applications.
  • Strong commercial experience with Java and C++ development.
  • Excellent understanding of software design principles, architecture patterns, and development best practices.
  • Proven experience conducting code reviews and implementing quality assurance processes.
  • Experience with source control and CI/CD tooling, including GitLab and related build pipeline technologies.
  • Strong analytical, troubleshooting, and problem-solving skills.
  • Excellent verbal and written communication skills.
  • Self-motivated and capable of working independently while contributing effectively within a team environment.
  • Demonstrated ability to quickly learn and adopt new technologies.
  • Degree in Computer Science, Software Engineering, or a related discipline.
  • Agile Scrum certification.
  • Experience working successfully with globally distributed development teams.
  • Strong awareness and practical understanding of AI technologies and modern AI-assisted development tools.
  • Knowledge of cloud-native architectures, microservices, and modern cloud platforms.
Responsibilities:
  • Collaborate within an Agile Scrum team to deliver new products, features, enhancements, and defect fixes through iterative development.
  • Work closely with Product Owners, Architects, Scrum Masters, Developers, and QA Engineers to ensure successful product delivery.
  • Provide technical guidance and input during product planning, design, and estimation activities.
  • Contribute actively to software design, development, code reviews, testing, and troubleshooting.
  • Promote engineering excellence through the application of coding standards, best practices, and quality assurance processes.
  • Communicate project risks, issues, and dependencies clearly and escalate concerns in a timely manner.
  • Lead, mentor, and support team members, including day-to-day management, coaching, and career development.
  • Maintain awareness of emerging technologies and evaluate their potential application within our organisation.
  • Collaborate effectively with geographically distributed teams across multiple regions and time zones.
  • Support continuous improvement initiatives within the development team and Agile processes.
Technologies:
  • AI
  • CI/CD
  • Cloud
  • GitLab
  • Support
  • Java
  • microservices
  • Eclipse
  • Machine Learning
  • Python
  • Swing
  • TensorFlow

More:

We are seeking an experienced Senior Software Engineer / Technical Team Lead to join our development team. This is a hands-on leadership role that combines technical delivery, software development, and people management. The successful candidate will work closely with Product Owners, Architects, Scrum Masters, Developers, and QA teams to deliver high-quality software solutions in an Agile Scrum environment. The role requires strong expertise in Java and C++ development, a passion for engineering best practices, and the ability to lead and mentor team members while contributing directly to product development. We value high-quality delivery, technical excellence, and continuous improvement, and this role offers the opportunity to contribute both strategically and hands-on to the evolution of our product and technology stack.

last updated 34 week of 2026

See also

Software Engineering jobs by country — openings, pay and top skills →

Tailor your CV for this role?

We couldn't check your fit for this role — add a CV to your profile to see it next time.

A new version of freehire is available