- Fresha
- London, Greater London
- Full-Time
- 8 days ago
Senior Frontend Engineer - London.
Before you go
Before you leave us, sign up for our email alerts
We don't do job spam, just the best digital jobs delivered straight to your inbox.
Senior Frontend Engineer - London: our view in 3 lines...
- The Role:This role is for a senior frontend engineer building web products for beauty and wellness businesses.
- The Person:The person will own frontend features end to end, build and test UI in React and TypeScript, work across the stack, and help shape engineering practices and architecture.
- Requirements:The ideal candidate has 5+ years building and running web frontends in production with React, TypeScript, GraphQL, Jest, Cypress and Storybook.
About the role
About Fresha
Fresha is the leading AI-powered operating system for the global beauty and wellness industry, giving businesses everything they need to run smarter, grow faster and build stronger client relationships.
In May 2026, Fresha secured an $80M growth investment from KKR at a valuation of $1B, officially reaching unicorn status and bringing total funding raised to $285M. Already profitable, Fresha is using this investment to accelerate global expansion and drive the next generation of AI and product innovation.
Today, Fresha operates at global scale, with offices across Europe, North America, the Middle East and Asia Pacific. Our platform is trusted by 130,000+ beauty and wellness businesses across 120 countries, with more than 1.5 billion appointments booked to date.
Our mission is simple: help beauty and wellness businesses grow by giving them the technology they need to attract clients, manage their operations and run their business in one place.
We’re continuing to scale rapidly across markets, teams and products, making this an exciting time to join us.
Role overview
Senior Frontend Engineer | The Bower, 207-211, Old St, Tower, London EC1V 9NR | Four days in office, Wednesdays remote
You'll join a cross-functional product team and report to its Team Lead. You'll build the web side of Fresha: the calendar, point of sale and payments screens that salons run their day on, and the booking flow their clients use.
We're moving everyone towards full stack. You'd start as the frontend person on your team and widen out from there.
We work on a short feedback loop. Your change usually reaches production the same day you write it, behind a feature flag. The team that builds a service looks after it, including a shared on-call rota.
We use AI as much as we can. Every engineer gets Claude or Codex from day one, and people build their own agent workflows rather than being handed one. It isn't finished, and you'd be helping to shape it rather than inheriting it. We look for engineers who know how to break work up, how to review what comes back, and how to stand behind the result.
What You'll Do
-
Own features end to end: Design it, build it, test it, ship it, and look after it once it's live.
-
Build the UI: New features in React and TypeScript, used by millions of professionals and their clients.
-
Extend the design system: Build with it, and fix it or add to it when it gets in your way.
-
Ship most days: Your change goes out behind a feature flag, usually the same day you write it. CI/CD handles the rollout. You watch the dashboards and roll back if it looks wrong.
-
Work across the stack: Most features need a backend change too. At first you'll pair with a backend engineer on it. Over time you'll do more of it yourself.
-
Work with the rest of the team: Product, Design, Backend, Infrastructure and Mobile, from the first conversation through to release.
-
Keep things healthy: Find what's slow, fix what's broken, keep CI green.
-
Have a say in how we build: Our architecture and our engineering practices aren't fixed. We expect senior engineers to push on both.
Our frontend stack: React and TypeScript on our own design system, talking to the backend through a federated GraphQL layer with generated types. Redux and Zustand for state, Rsbuild and SWC for builds, Jest, Cypress and Testing Library for tests, Storybook and Happo for components and visual regression, Unleash for feature flags, Sentry and Datadog to see what's going on in production.
The rest of the platform: services written in Ruby, Elixir and TypeScript behind the same federated GraphQL layer, with Kafka, Postgres and Kubernetes underneath. Our B2C mobile apps are native, Swift on iOS and Kotlin on Android, and our B2B app wraps the web frontend with Capacitor. You don't need any of that on day one, but you will work across it as the work requires.
What We're Looking For
-
Experience: 5+ years building and running web frontends in production.
-
React and TypeScript: You've worked in them for years and shipped big consumer-facing apps with them.
-
UI that holds up: You care about performance, accessibility and how things look on a small screen without being asked. When a page is slow, you know how to find out why.
-
Design systems: You've worked with one, added to it, and you know when a new component is worth it and when it isn't.
-
State and data: You've dealt with loading states, caching, optimistic updates and requests that fail halfway. You've worked with GraphQL, and you work with backend engineers on API shape rather than taking what you're given.
-
Comfortable close to production: You're at ease shipping behind flags and watching a change land. You know what to instrument before a rollout and what to watch afterwards.
-
Testing: You write tests that catch real regressions, and you know which ones aren't worth writing.
-
AI in your workflow: You use AI coding tools day to day and have a clear view of where they help and where they don't. You're happy building your own workflow rather than waiting for one, and you review what comes back before it ships.
-
Pragmatic: You care about the right tool for the job more than any particular framework, and you've worked in more than one.
-
Curious: You like getting deep into a domain, and you're willing to get into the weeds.
-
Willing to broaden: Backend or native mobile experience is a bonus rather than a requirement, but we do expect engineers to pick up what a piece of work needs.
At Fresha, we value passion and potential as much as specific skills. If you're enthusiastic and eager to learn, we encourage you to apply, even if you don't meet every listed requirement.
Your Opportunity at Fresha
-
Scale: Around 1 million bookings a day across 120 countries, and the payments that go with them, running on a platform we're breaking out of its monoliths while it serves traffic.
-
Speed: We release daily, around 3,000 deploys a week, with not much standing between your branch and your users.
-
Ownership: The tooling, data and permissions to run what you build, and a say in the technical direction of your area.
Interview Process
-
Screen Stage - Video call with a member of the Talent Team (30 min)
-
1st Stage - Technical video/in-person interview (90min)
-
2nd Stage - Practical coding session plus system design and architecture (up to 2 hrs)
-
Final Stage - Video interview with Head of Engineering / VP of Engineering (60min)
Inclusive workforce
At Fresha, we are creating a culture where individuals of all backgrounds feel comfortable.
We want all Fresha people to feel included and truly empowered to contribute fully to our vision and goals. Everyone who applies will receive fair consideration for employment.
We do not discriminate based on race, colour, religion, sex, sexual orientation, age, marital status, gender identity, national origin, disability, or any other applicable legally protected characteristics in the location in which the candidate is applying.
If you have any accessibility requirements that would make you more comfortable during the interview process and/or once you join, please let us know so that we can support you.
We may use artificial intelligence (AI) tools to support parts of the hiring process, such as reviewing applications, analyzing resumes, or assessing responses. These tools assist our recruitment team but do not replace human judgment. Final hiring decisions are ultimately made by humans. If you would like more information about how your data is processed, please contact us.

