Software Engineer
Role details
Job location
Tech stack
Job description
Joining our team as a Software Engineer, you will be working alongside product managers, designers, data analysts and senior engineers to deliver high-quality software across the full stack. You will contribute to all stages of the development lifecycle - from picking up well-defined feature work to helping scope and break down more ambiguous problems. As a product team a lot of our time is spent on the front end, but you'll be contributing across the full stack from infrastructure, databases, pipelines, servers, CDNs, to web UIs and monitoring. This includes building responsive accessible React components aligned with our design system, working with APIs, using real-time metrics and alerting, interacting with databases, and keeping our applications secure. As you become more familiar with our systems, you'll be encouraged to flag opportunities for improvement and take the initiative to enhance our architecture and codebase. We're leaning in to the current AI revolution, having incorporated AI into several of our workflows and actively working on projects with AI at the core. You'll be working with AI not just as a development tool but as a business enabler. We use Claude Code every day to reduce time spent on toil so that we can focus our effort more than ever on meeting the business's needs. Our technology stack is centred around Typescript, React and Node/Bun, running on Kubernetes in AWS.
Requirements
Do you have experience in Typing?, We're looking for a capable, curious engineer who cares about their craft and wants to grow. You'll be someone who takes pride in creating clean, elegant code, is honest about what they know and don't know, and is genuinely excited by the problems we're solving.
You'll have solid hands-on experience with Typescript and React, and a good working understanding of how modern web applications are built and deployed. You won't need to have all the answers, but you should be comfortable reasoning through problems, asking good questions, and iterating towards solutions.
You'll be a collaborative team member: receptive to feedback, willing to share your own perspective, and keen to learn from the engineers around you. You'll understand that building great software is a team effort, and you'll be engaging with the people and processes around you as well as the code itself.
Other skills required for the role include:
- Solid Typescript skills and an appreciation for the benefits of static typing
- Working knowledge of the Node/Bun ecosystem, including package management and common tooling
- Good understanding of the React paradigm, including component design, state management and common patterns and pitfalls
- Familiarity with REST APIs and building or consuming them in real applications
- Experience writing automated tests and an understanding of why they matter
- Awareness of common web security concerns (e.g. XSS, CORS, authentication)
- A practical understanding of version control and collaborative development workflows using Git
Experience with the following is a plus:
- Kubernetes, GitHub Actions, PostgreSQL, BigQuery, Elasticsearch/Opensearch, Storybook, component libraries and design systems
Benefits & conditions
Pulled from the full job description
- Employee assistance programme
- Company pension
- Cycle to work scheme
- Work from home
- Company events
- Car scheme