Senior Software Engineer - Distributed Systems

Senior Software Engineer - Distributed Systems

Full-Time 56700 - 69300 £ / year (est.) Home office (partial)
S

At a Glance

  • Tasks: Lead the design and optimisation of backend services using Python and Rust.
  • Company: Join Smarkets, a revolutionary tech company in the betting industry.
  • Benefits: Enjoy competitive salary, stock options, health insurance, and flexible working.
  • Other info: Dynamic team culture with regular socials and a focus on personal development.
  • Why this job: Shape the future of prediction markets with cutting-edge technology and a customer-first approach.
  • Qualifications: 6+ years in software engineering, experience with distributed systems, and strong communication skills.

The predicted salary is between 56700 - 69300 £ per year.

Smarkets runs one of the world’s most sophisticated prediction markets, handling over £29 billion in volume since 2010 and engaging 200,000+ traders globally. We’re a technology company that revolutionises betting - from sports to political markets, delivering the sharpest prices and the fairest odds. Our stack is designed for scale, reliability, and speed: Linux, Kafka, Postgres, Kubernetes, with Python 3, Rust, C++17, and React powering our platform. We build infrastructure that institutions trust while keeping trading accessible to everyone.

At the heart of our success are our people. We create a high-performance environment where exceptional talent can thrive, blending deep business experience with a commercial mindset to drive strategic growth. If you’re ready to help shape the future of prediction markets with cutting-edge technology and a customer-first philosophy, Smarkets is where you belong.

Responsibilities

  • Lead the design, development, and optimisation of backend services written in Python and Rust.
  • Architect and build scalable, distributed systems to meet the evolving needs of the platform.
  • Enhance system reliability through robust monitoring and alerting systems.
  • Drive and enforce best practices in code quality, testing, and continuous integration/delivery (CI/CD).
  • Collaborate with product managers and engineering teams to define and deliver complex, high-impact projects.
  • Mentor and guide engineers across the team, fostering a culture of technical excellence and growth.
  • Drive technical decision-making and contribute to the evolution of our backend architecture.
  • Ensure the performance and stability of critical services by implementing improvements with a forward-looking mindset.

Role Requirements

  • 6+ years of experience in software engineering, with a focus on backend systems.
  • Familiarity with Python or at least one compiled language (Java, C++, Rust, Go) and keen on learning Rust.
  • Proven experience designing and building distributed systems in modern cloud environments (AWS, GCP, or similar).
  • Deep knowledge of DevOps practices and tools, including GitLab and Kubernetes (K8S).
  • Strong experience with message queuing systems (e.g., Apache Kafka) and relational databases (e.g., PostgreSQL, MySQL).
  • Previous experience in Sports Betting or Finance industries is a plus.
  • Excellent communication skills, with a proven ability to collaborate effectively with cross-functional teams.
  • Demonstrated leadership in driving complex technical projects to successful completion.

Our Values

  • Push to Win: We set ambitious goals and relentlessly pursue them, always striving for excellence.
  • Make Others Better: We lift each other up, share knowledge, and celebrate team success over individual achievement.
  • Give a Shit: We care deeply about our work, our users, and the impact we make.
  • Be a Pro: We take ownership, act with integrity, and consistently deliver to a high standard.
  • Bring the Energy: We bring positivity, curiosity, and enthusiasm to everything we do, inspiring those around us.

Culture Fit: These values define how we succeed as a team. If this isn’t you, this may not be the right place. We hire people who thrive in a fast-paced, collaborative, and ambitious environment.

We offer a competitive salary and benefits package, alongside a dynamic, collaborative environment where your work truly makes an impact and your voice is heard. Our team is diverse, driven, and ambitious - united by a strong work ethic and a hunger to innovate and win. Our benefits are designed around Health, Wealth, and Development, supporting you both professionally and personally. These include:

  • Stock Options: Vest over 4 years, your success is our success.
  • Pension Scheme: Competitive plan via Aviva, with up to 6% matched contributions if you opt in.
  • Health Insurance: Comprehensive coverage to keep you and your family healthy.
  • Enhanced Parental Leave: Enhanced maternity and paternity leave to support you through life’s most important moments.
  • Stay Fuelled: Enjoy fresh, chef-made breakfast and lunch every day, plus a constant supply of fruit, snacks, tea, coffee and soft drinks.
  • Cycle-to-Work Scheme: Support for sustainable commuting and staying active.
  • Learning & Development: £1,000 annual education budget for courses, conferences, books, or training.
  • Holiday: 25 days paid leave + bank holidays, with the option to carry over 5 days.
  • Flexible Working: Hybrid model with 3 days in the office and 2 days from home to fit your lifestyle.
  • Global Working: Work from anywhere in the world for up to 20 days a year.
  • Team Energy: Regular socials, hackathons, and events — because collaboration and fun go hand-in-hand.

What Happens Next

We aim to have a simple and speedy hiring process, and we want to make sure that we are right for you as much as the other way around.

  • CV application review: We will review it as quickly as possible.
  • Let’s chat: Quick chat with our team about your experience and the role.
  • Technical Interview: Live Coding + System Design.
  • Experience and Mindset Chat: with an Engineering Manager.
  • In Office Interview: Lunch with other colleagues in the team + LT chat.

Diversity & Inclusion

We’re an equal opportunities employer and celebrate diversity in all its forms. If you need any adjustments during the recruitment process, please let us know — we’re happy to accommodate your needs.

Senior Software Engineer - Distributed Systems employer: Smarkets

Smarkets is an exceptional employer that fosters a high-performance culture where talent thrives, particularly in the dynamic environment of London. As an Accounts Assistant, you will benefit from a competitive salary, comprehensive health insurance, and a generous learning and development budget, all while working alongside a diverse and ambitious team. With flexible working arrangements and a strong emphasis on collaboration and innovation, Smarkets offers a rewarding opportunity for those looking to make a meaningful impact in the world of prediction markets.

S

Contact Details:

Smarkets Recruitment Team

StudySmarter Expert Advice🤫

We think this is how you could land Senior Software Engineer - Distributed Systems

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 Smarkets 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 Smarkets.

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 Smarkets.

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 Smarkets 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 Senior Software Engineer - Distributed Systems

Python
Rust
C++17
Distributed Systems Design
Cloud Environments (AWS, GCP)
DevOps Practices
GitLab

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 Smarkets.

Craft a killer cover letter:Your cover letter is your chance to stand out—make it personal! Explain why you want to work at Smarkets 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 Smarkets

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 Smarkets 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.