At a Glance
- Tasks: Lead software development, mentor team members, and design scalable architectures.
- Company: Join a dynamic tech company focused on impactful client projects.
- Benefits: Enjoy competitive salary, health benefits, and opportunities for professional growth.
- Other info: Work in a collaborative environment with excellent career advancement potential.
- Why this job: Make a real difference in fascinating industries like aviation and transport.
- Qualifications: 7+ years in C#/.NET, with strong mentoring and leadership skills.
The predicted salary is between 63000 - 77000 £ per year.
We are looking for a highly capable Senior C# / .NET Engineer to work directly with the company's founders on high-impact client projects across multiple industries. In this hands-on, individual contributor role, you will design scalable architectures, build clean APIs and cloud infrastructure, and take complete ownership of production systems. As a senior technical voice, you will also elevate engineering standards and mentor growing team members. You will be joining a growing business, building technology that makes operational businesses more effective. Current work spans workforce management in aviation and engineering maintenance in transport. These are fascinating and complex domains where software meets physical operations. The primary platform is on Microsoft Azure, but working across a range of enterprise technologies depending on client needs.
Responsibilities:
- Mentor and coach other developers: set the bar for code quality and engineering practice, help them grow into harder problems, and take the technical lead where it makes sense.
- Own technical direction and architecture across client projects: domain modelling, service boundaries, data flow design.
- Design, build, and maintain REST APIs and backend services in C# on .NET (this is still a hands-on role).
- Build integrations with external systems: HR platforms, asset management tools, data warehouses, messaging systems.
- Write and optimise SQL queries, design database schemas, and maintain data integrity.
- Establish and uphold engineering standards: code review, testing, CI/CD, conventions.
- Work with Azure services day-to-day: Functions, App Service, Service Bus, Blob Storage, Key Vault.
- Contribute to hiring, onboarding, and the technical growth of the team.
- Support production systems and own their reliability.
Tech Stack Skills:
- Language: C# on .NET (primary, and what you'll write every day).
- Frameworks: ASP.NET Core (Web API), Azure Functions (isolated worker).
- Database: SQL Server, accessed via Entity Framework Core and/or Dapper (you'll write queries, design schemas, and optimise performance).
- Cloud: Microsoft Azure (Functions, App Service, Service Bus, Blob Storage, Key Vault, AKS).
- Data platform: Microsoft Dataverse (you'll integrate with it, not build on it).
- Auth: Entra ID (Azure AD), OAuth 2.0.
- DevOps: Azure DevOps (CI/CD pipelines), Docker, Azure Container Registry.
You don't need experience with everything here. Strong C# and SQL are the foundation. The Azure-specific skills can be learned on the job.
Requirements:
You Must Have:
- 7+ years professional software development experience, primarily in C#/.NET, including time leading, mentoring, or coaching other engineers.
- People leadership: you've coached, mentored, or line-managed developers, and you get satisfaction from making the people around you better, as well as from writing good code yourself.
- Software design maturity: you think in terms of domain models, clean architecture, and separation of concerns. We build with strongly typed C#, dependency injection, repository patterns, and domain-driven design. You build scalable, maintainable systems, and you set that standard for the team.
- API development: you've designed and built REST APIs with ASP.NET Core, understand HTTP, status codes, authentication patterns.
- SQL: comfortable writing queries, designing tables, understanding execution plans. You've worked with a relational database (SQL Server, PostgreSQL, MySQL) as a core part of your job.
- Cloud experience: you've deployed and maintained services in production on a cloud platform (Azure, AWS, or GCP). You understand how things like storage, messaging, and secrets management work.
- Testing discipline: you write tests for your code (xUnit, NUnit, or similar), care about reliability, and instil the same habits in the team.
- Judgement and ownership: you can take a problem, set the approach, build it, and ship it, and you know where to invest effort and where not to.
Nice to Have:
- Experience with Microsoft Azure specifically (Functions, App Service, Service Bus).
- Async C# (async/await, Task-based patterns).
- Hands-on experience with Entity Framework Core and/or Dapper.
- Docker and container deployment.
- Experience with Dataverse, Dynamics 365, or Power Platform.
- Experience building integrations with third-party APIs and file-based data exchanges.
- Familiarity with infrastructure-as-code (Bicep, ARM templates, Terraform).
- Experience establishing engineering practice (code review culture, CI/CD, standards) in a small or growing team.
- Exposure to Python (some of our existing services are written in it).
- A computer science, engineering, or mathematics degree: the grounding in fundamentals it gives tends to show in how people approach hard problems.
Not Required:
- Frontend development skills (we have separate frontend capability).
- Specific domain experience in aviation or transport (we'll teach you).
- Experience with every framework listed: if you know C# and .NET well, you can pick up the rest quickly.
What We're Looking For:
- Builders. You want to write code that solves real problems. You get satisfaction from seeing something you built running in production and used.
- Multipliers. You make the people around you better. You review thoughtfully, explain your reasoning, and help others take on work they couldn't before.
- Pragmatism. You know when to engineer something properly and when a simpler approach will do. You don't over-engineer.
- Curiosity. When something breaks, you keep going until you understand the cause. When you encounter a new system or API, you read the docs and experiment. You're comfortable working in systems you don't yet know.
- Ownership. Your code, your responsibility. When something breaks in production, you want to be the one who can put it right.
Days of work are Monday to Friday - office based, near Gatwick with onsite parking. If this excites you, we are keen to hear from you! Apply now and we'll be in touch!
We are an equal opportunities employer and welcome applications from all suitably qualified persons regardless of their race, sex, disability, religion/belief, sexual orientation, or age.
Lead Software Engineer in Surrey employer: Masson Appointments
Join a dynamic and innovative team as a Lead Software Engineer, where you'll have the opportunity to work closely with the founders on impactful projects in aviation and transport. Our collaborative work culture fosters mentorship and personal growth, ensuring that you not only elevate your technical skills but also contribute to the development of others. Located near Gatwick, we offer a supportive environment with onsite parking and a commitment to equal opportunities, making it an excellent place for those seeking meaningful and rewarding employment.
StudySmarter Expert Advice🤫
We think this is how you could land Lead Software Engineer in Surrey
✨Join Local Tech Meetups
Get out there and mingle with fellow developers by joining local tech meetups. It’s a fantastic way to meet people who might be working at Masson Appointments or know someone who does. Plus, you can pick up some trendy tech skills and trends while you're at it!
✨Contribute to Open Source Projects
Show off your coding chops by jumping into open-source projects. Not only does this give you practical experience, but it also gets you noticed in the dev community. You'll create a killer portfolio that speaks volumes about your skills to Masson Appointments.
✨Tap into Online Developer Communities
Don’t underestimate the power of online developer communities like GitHub, Stack Overflow, and even Reddit. Participate in discussions, share your projects, and build your visibility. We can often find opportunities through these channels that can lead to a full-time gig at companies like Masson Appointments.
✨Explore Job Boards Specifically for Tech Roles
Keep your eyes peeled on job boards that focus on tech roles. Sites like TechCareers or Stack Overflow Jobs can often have listings for companies like Masson Appointments that might not show up on broader job sites. Make it a habit to check these regularly, and don’t hesitate to apply directly through our website!
We think you need these skills to ace Lead Software Engineer in Surrey
Some tips for your application 🫡
Show off your coding skills:When applying for a software engineering role, it's super important to showcase your coding skills. Make sure your CV includes your tech stack, any relevant programming languages you’re comfortable with, and examples of projects you've worked on. If you have a GitHub profile, link it up! We love to see code in action.
Tailor your portfolio:For a full-time role, we’d expect to see some solid examples of your work in your portfolio. Make sure to include at least two or three projects that highlight your problem-solving skills and your ability to work with different technologies. Focus on the projects that are most relevant to the position at Masson Appointments.
Craft a killer cover letter:Your cover letter is your chance to stand out—make it personal! Explain why you want to work at Masson Appointments and how your skills align with the role. Show us your passion for software development. We dig enthusiastic candidates who understand the value of collaboration and continuous learning!
Be clear and concise:When it comes to writing your CV and cover letter, clarity is key. Avoid jargon that could confuse us and stick to simple, direct language. Highlight your achievements with quantifiable results where possible, and keep everything easy to read. A well-organised application goes a long way!
How to prepare for a job interview at Masson Appointments
✨Brush Up on Your Coding Skills
For a full-time software engineering role, it's crucial that we stay sharp with our coding abilities. Expect technical questions that might involve solving problems on the spot or discussing algorithms. Practise on platforms like LeetCode or HackerRank to get comfortable with the types of questions that often come up.
✨Know Your Tools and Frameworks
Make sure we’re well-acquainted with the tools and technologies listed in the job description. Familiarise ourselves with any specific frameworks or programming languages mentioned. If Masson Appointments uses React or Node.js, for instance, be ready to discuss how we’ve used them in previous projects or coursework.
✨Showcase Your Projects
Bring along a portfolio that highlights our best work. This could be code samples, GitHub repositories, or any side projects we’ve built. Make sure we can talk through our thought process for each project, especially the challenges we faced and how we solved them—this shows our problem-solving skills in action.
✨Prepare for Behavioural Questions
While technical skills are key, full-time positions also require cultural fit. Be ready to discuss our previous experiences and how we handle teamwork, conflict, and deadlines. Brush up on the STAR method—Situation, Task, Action, Result—to clearly articulate our past experiences when discussing how we've contributed to a team.