logo

View all jobs

Software Engineer - Distributed Systems

Remote, Canada or US · Computer/Software

About the Role

We are looking for a distributed systems engineer to work on the systems that power the syncing engine our customers and other engineering teams rely on. This presents an exciting challenge where you can apply your expertise in distributed systems, performance optimization, and troubleshooting to push the boundaries of what is possible and meaningfully improve our ability to move massive amounts of customer data. This role also provides a unique opportunity to work on a multi-cloud and multi-region infrastructure that supports a global customer base.

We believe in enabling our engineers to do their best work for our customers by giving them extremely high levels of ownership and autonomy. This comes in different forms: you will own and deliver projects from start to finish, you will work directly with customers to solve their hardest scaling problems, and you will have a lot of influence over what we work on as a team and company.

Some of the problems we’ll be working on include:

  • Sync Speed: Customers want to sync a lot of data to important destinations like Facebook and Snapchat, which requires us to analyze every part of our syncing process and find where we can optimize to sync data more quickly
  • Streaming Syncing: We currently sync data from sources in batch only, but envision a world where we also do syncs in real-time and support streaming sources like webhooks and queues
  • Scalability and Reliability: As part of our rapid growth, we’re always evaluating current future bottlenecks in scaling and reliability, and architecting for the next order of magnitude of growth
  • Personalization API: Our APII product provides a low latency caching layer on top of data warehouses that enable customers to use their data warehouse for real-time personalization use cases with <30ms p90 response times with QPS in the millions
  • Multi-Region and Multi-Cloud: Supporting our multi-region and multi-cloud backend, including extending it to launch in new regions to support data residency requirements of our global customer base

We are looking for talented, intellectually curious, and motivated individuals who are interested in tackling the problems above.

About You

You are an engineer with a passion for solving hard technical problems that generate real value for customers. You’re motivated by high ownership and are comfortable in a fast-paced, startup environment.

You have experience and comfort with distributed systems and high-scale systems or the ability and desire to build this experience quickly. This experience can take different forms:

  • You’ve built syncing engines that process and move terabytes of data per day in a scalable way
  • You’ve created event collection or data streaming services that power company critical systems
  • You’ve owned systems that have undergone orders of magnitude of growth and helped them scale accordingly
  • You have relevant skills and are a fast learner who is excited to take on the challenges we face

Share This Job

Powered by