Soma Capital Portfolio Jobs

Senior Software Engineer - RQL*



Software Engineering
San Francisco, CA, USA
Posted on Saturday, July 1, 2023
About Rippling
Rippling gives businesses one place to run HR, IT, and Finance. It brings together all of the workforce systems that are normally scattered across a company, like payroll, expenses, benefits, and computers. For the first time ever, you can manage and automate every part of the employee lifecycle in a single system.
Take onboarding, for example. With Rippling, you can hire a new employee anywhere in the world and set up their payroll, corporate card, computer, benefits, and even third-party apps like Slack and Microsoft 365—all within 90 seconds.
Based in San Francisco, CA, Rippling has raised $1.2B from the world’s top investors—including Kleiner Perkins, Founders Fund, Sequoia, Greenoaks, and Bedrock—and was named one of America's best startup employers by Forbes (#12 out of 500).
About the role
The Hub platform team is responsible for developing core services and cross-cutting products that form the building blocks at Rippling. Other engineering teams at Rippling leverage these fundamental Lego blocks to create complex products on top of them.

The team owns the analytics, customizable workflows, data platform, reporting, permissions, and custom fields products. All these projects have customer-facing product components and core platform components supporting 10+ product teams. This is a unique opportunity to work on both product and platform layers at the same time.

At Rippling, we want users to configure and customize our features/products without complexity. Therefore, we’ve created a new language called Rippling Query Language (RQL) which allows our customers to write queries and scripts to create Formula Fields inside of our analytics suite and extend functionality elsewhere across Rippling.

RQL internally has its own grammar, parser, query translator, distributed query processing engine, and a distributed datastore. You will work on challenging technical challenges like distributed systems and big data technologies.
Interesting problems this team will work on:
  • Architect the next-gen platform to track changes in the employee graph to select the queries and formulas to re-evaluate
  • Scale the system to 100x the existing load for future growth
What you will do:
  • Work on distributed processing engines and distributed databases
  • Develop high-quality software with attention to detail using tech stacks like Python, MongoDB, CDC, and Kafka
  • Leverage big data technologies like Apache Presto, Apache Pinot, Flink, and Airflow
  • Build custom programming languages within the Rippling Platform
  • Create data platforms, data lakes, and data ingestion systems that work at scale
  • Design, develop, code, and test software systems, improvements, products, and user-facing experiences
  • Work alongside software architects and senior developers doing state-of-the-art development work
  • Contribute to product design and implementation discussions
  • Find and build unique solutions to implement projects from the idea phase to production
What you will need:
  • 5+ years experience in backend engineering roles
  • Experience writing testable and performant backend code
  • Experience working in a fast-paced, dynamic environment
  • Experience mentoring less-experienced developers
  • Ability to thrive in an environment that grants you a lot of autonomy to explore creative solutions

Additional Information

Rippling highly values having employees working in-office to foster a collaborative work environment and company culture. For office-based employees (employees who live within a 40 mile radius of a Rippling office), Rippling considers working in the office, at least three days a week under current policy, to be an essential function of the employee's role.

This role will receive a competitive salary + benefits + equity. The salary for US-based employees will be aligned with one of the ranges below based on location; see which tier applies to your location here.

A variety of factors are considered when determining someone’s compensation–including a candidate’s professional background, experience, and location. Final offer amounts may vary from the amounts listed below.