Senior Software Engineer
Role details
Job location
Tech stack
Job description
Tes is the world's largest professional network for teachers. We power schools and enable great teaching worldwide, by creating trusted educational solutions to make the greatest difference in education. We are undergoing an exciting transformation within our Product Development and are seeking a Senior Software Engineer to join us in the next phase of our journey. You will be joining an evolving agile team that includes Scrum Masters, Product Managers, Quality Assurance, and fellow Engineers. You will work in an open, respectful, and collaborative environment that values transparency, continuous improvement, and learning, while playing a key role in designing, building, and delivering scalable, high-quality software. You will also mentor others and contribute to engineering best practices across the team.
Key Responsibilities
- Design and deliver high-quality, scalable software using modern front-end and back-end frameworks
- Lead by example in applying sound engineering principles and best practices
- Actively participate in agile ceremonies and drive continuous improvement
- Conduct and guide high-quality code reviews, including complex changes
- Take ownership of deploying code across environments and releasing to production
- Collaborate closely with QA Engineers to define and improve testing strategies (unit, integration, functional)
- Proactively monitor, troubleshoot, and resolve system issues to improve reliability and observability
- Mentor and support engineers across the team, fostering knowledge sharing
- Ensure secure coding practices and respond to security incidents when required
- Communicate effectively with both technical and non-technical stakeholders
Requirements
- Proficiency in at least two of the following: JavaScript, Java, PHP, C#, or other .NET languages
- Strong understanding of design patterns and hexagonal architecture
- Hands-on experience building and consuming REST APIs and using API documentation tools
- Solid knowledge of both relational and NoSQL databases
- Excellent communication skills with the ability to clearly explain technical concepts
- Proven experience mentoring or guiding other engineers
Desirable Skills
- Experience working with microservices, Docker, and Kubernetes
- Familiarity with CI/CD pipelines and delivery practices
- Exposure to feature toggling, A/B testing, and release strategies
- Understanding of security best practices and vulnerability identification
- Experience contributing to architectural design and system-level thinking
Benefits & conditions
Pulled from the full job description
- Annual leave
- Employee assistance programme
- Company pension
- Cycle to work scheme