Senior Backend Engineer - Distributed Systems

Synthesia
Apply Now

Job Description

About the position

The Avatars & Voices team is responsible for developing and maintaining our avatar inference, production and customisation as well as text-to-speech and voice cloning. In this role, you will have the opportunity to build a distributed system for user specific voices plus work on scaling the current product and shaping future projects in our pipeline.

We're looking for very Senior / Principal / Staff Engineer-level engineers to take ownership of workstreams and eventually build out teams.

Requirements

  • You have a minimum of 5+ years of experience working in software development
  • You have strong computer science fundamentals
  • You have experience building APIs and integrating with third-party APIs and service providers
  • You have experience building complex, resilient workflows involving asynchronous jobs on multiple services
  • You have experience scaling a multi-tenant SaaS backend to handle a large number of concurrent requests
  • You have a solid understanding of distributed systems and the challenges in scaling a distributed system
  • Ideally have a high-level understanding of the latest developments in AI and deep learning, especially around generative models for synthesising audio and/or video
  • Ideally have experience in building a SaaS product that involves handling a large amount of user-submitted audio or video data
  • Ideally have experience building a SaaS service around a machine learning model
  • Ideally have experience building a machine learning product with a large number of user-specific models
  • You are product focused
  • You have the experience that ranges from early-stage start-ups to bigger, well-established organizations
  • You like to take ownership of features and execute from planning to production
  • You are very pragmatic in your approach and you don't over-engineer
  • You are very good at profiling and debugging performance issues

How we work

We have a fast yet non-hacky development style. We work strictly with product managers who have a technical background. As a result, we do not overwhelm engineers with unrealistic expectations/requirements, and we can therefore move forward much faster. Well, we don’t have unrealistic expectations/requirements in the first place, since we see our roadmap as a set of high-level goals and we have no fixed timelines on deploying features - we want to get things to production as fast as possible. We do that by pushing features behind a feature flag - so not all users see all features, but our production is always updated. This brings zero-downtime deployments, backward compatible features, and similar challenges since our users should never be impacted. Our engineers have one sync meeting per week, async text Slack dailies, we have no dedicated QA people, we work in super small & independent teams, we have no Jira and in our team, we only have engineers, no code monkeys.

For us, it's simple: give people time to do deep work. And help specify features that are limited in scope while discouraging hacky workarounds.

It's early for us and we don't know how right we are yet. But after two years of building our product team and core engineering principles, we can see that we are on the right track. Progress over perfection.

Our stack & some context

We started to work on our main product - Synthesia STUDIO - two years ago with a very small team of engineers (BE and FS). We now have a functional product, that we develop, push forward and improve constantly. While we know, we have a long way to go, to bring our product to where we want it to be, we also have to be mindful of our existing userbase, which is also really involved with us and provides great feedback for each update and new feature we roll out. We have a lot of custom components and multiple layers of complexity, our product is constantly changing but if we try to sum up our stack:

  • Frontend is TypeScript/HTML/CSS using React.js + Redux;
  • Backend is a mix of Python, Flask, Node.js (for real-time collaboration), and C++ components (we have our own Chromium fork for headless video rendering) that are mostly containerized with Docker, and hosted on a number of AWS services (Lambda, Fargate, EC2, EKS)
  • We have a dedicated DevOps Engineering team.

The good stuff...

You will be compensated well (salary + stock options + bonus)

 You will work in a remote-first environment with offices in 5 locations

You get 25 days of annual leave + public holidays in the country where you are based

 You will join an established company culture with regular socials and company retreats

You get 4 weeks paid sabbatical after 4 years at the company + $10,000!!

 You get a paid parental leave

 You can participate in a generous referral scheme

 You get a brand new computer of your choice (if that still counts as a benefit in 2023 )

 You will have huge opportunities for your career growth

Company Info.

Synthesia

Synthesia has been ranked as the top AI video creation platform, utilized by numerous companies to produce videos in 120 different languages. By utilizing Synthesia, businesses can save up to 80% of their time and budget.

  • Industry
    Artificial intelligence,Computer software
  • No. of Employees
    200
  • Location
    London, UK
  • Website
  • Jobs Posted

Get Similar Jobs In Your Inbox

Synthesia is currently hiring Distributed Systems Engineer Jobs in Copenhagen, Denmark with average base salary of Kr.50,000 - Kr.70,000 / Month.

Similar Jobs View More