Full Stack Engineer (Typescript)

Pristina
Engineering – Marketplace /
Full-time /
On-site
About Fresha

Fresha is the leading marketplace platform for beauty & wellness trusted by millions of consumers and businesses worldwide.

Fresha is used by 110,000+ businesses and 450,000+ stylists and professionals worldwide, processing over 1 billion appointments to date

The company is headquartered in London, United Kingdom, with global offices located in New York City, Vancouver, Sydney, Dubai, Riyadh, Amsterdam, Warsaw and Pristina.

Fresha allows consumers to discover, book and pay for beauty and wellness appointments with local businesses via its marketplace, while beauty and wellness businesses and professionals use an all-in-one platform to manage their entire operations with an intuitive subscription-free business software and financial technology solutions.

Fresha’s ecosystem gives merchants everything they need to run their business seamlessly by facilitating appointment bookings, point-of-sale, customer records management, marketing automation, loyalty, beauty products inventory and team management.

The consumer marketplace unlocks revenue potential for partner businesses by leveraging the power of online bookings and automated marketing through mobile apps and advanced integrations with major tech brands including Instagram, Facebook and Google.

Role Overview

Given our exciting and progressive growth plans, we are looking for an exceptional Full Stack Engineer to come join our global business.

Reporting to an Engineering Manager, and working with our apps team within a tribe, you will be accountable for designing and developing APIs that support our Marketplace Native Apps and coordinating feature/API development with the rest of the tribe & other tribes.

This is a great opportunity for someone looking to work in a fast-paced and changing environment, who likes to work autonomously, enjoys a challenge and wants to make an impact!

What you will be doing

    • Implement new functionality & UIs within our web frontend, which is written in React/NextJS
    • Design & document APIs in GraphQL & gRPC, which can be used by multiple consumers (within the team & by other teams)
    • Build & maintain efficient and developer-friendly APIs
    • Own the uptime & monitoring of our team-owned services
    • Identify bottlenecks and bugs, and devise solutions to these problems
    • Be involved in all stages of building products from inception, through delivery, to upkeep & operation
    • Contribute to a healthy engineering culture of feedback and growth

    • This list is not exhaustive and there may be other activities you are required to deliver.

      To foster a collaborative environment that thrives on face-to-face interactions and teamwork, all Fresha employees work from the office four days per week, with the flexibility to work remotely one day each week.

Tech stack

    • Web UI In React/NextJS
    • GraphQL API Gateway written in Typescript using Yoga
    • Clients in Swift, Kotlin, and JS
    • gRPC APIs for cross-service comms
    • Kafka as an event bus
    • Redis as a distributed cache
    • Postgres as our database
    • Elixir/Ruby/Typescript for all of our services
    • Kubernetes on AWS for deployment
    • Github Actions & Argo for CI/CD

Skills and experience required

    • Commercial experience in writing SPAs, especially using React
    • Experience implementing UIs with CSS, including GPU-only animations. Experience with RTL is a plus
    • Experience using and developing GraphQL APIs
    • Experience working with and configuring typical javascript build tooling, such as webpack, esbuild, typescript, etc
    • Ability to write easy-to-understand high-standard documentation
    • Strong communication skills, ability to self-organise and work well within teams
    • Comfortable working in a fast-paced and changing environment

    • 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. We believe in fostering growth and providing the support needed for you to excel in your role. 

Interview Process

    • Screen call - with a member from the Talent Team - 30 - 60 MINUTES
    • 1st stage - Video-call/in-person interview with Hiring Manager - 45-60 MINUTES
    • Tech stage - Video-call/in-person interview with Hiring Team - up to 2.5 HOURS
    • Final stage - Meet with our CTO - up to 30 MINUTES

    • We aim to complete the entire interview process and deliver feedback within 4 weeks. 

      Every job application received is reviewed manually by our talent team. While we strive to assess applications within 7 days, the sheer volume of talented individuals expressing interest may occasionally extend this timeframe


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.