Backend Software Engineer, Interface Definition Language Team

Full Time
San Francisco, CA, USA
10 months ago

At Lyft, our mission is to improve people’s lives with the world’s best transportation. To do this, we start with our own community by creating an open, inclusive, and diverse organization.

The Interface Definition Language Team (IDL) is responsible for empowering product engineers to focus on delivering business value by enabling simple communication with backend services and datastores. We make it easy for developers to define and implement backend service APIs and database schemas using Protocol Buffers. We also provide simple clients to call those APIs and datastores.

As an engineer on the IDL Team, you will be responsible for building the next generation experience for backend developers that will save them time. You will partner with hundreds of engineers across the company to improve the current state of the world. You will contribute to industry leading tooling to build a seamless developer experience for Lyft engineers.

Responsibilities:
  • Improve and maintain the code generation pipeline that generates millions of lines of code from Protocol Buffer definitions
  • Build tooling to integrate database and service API schemas into one powerful developer workflow
  • Improve our in-house Go and Python clients for DynamoDB by adding new features and capabilities
  • Build the next generation framework for how services implement their APIs
  • Keep our systems up to date with the latest best practices and tool versions
  • Partner with product teams to help move them to the latest and greatest infrastructure we provide
  • Own projects and features from design to successful execution to deliver value to Lyft engineers
Experience:
  • 3+ years of software engineering industry experience with proven track record of impactful work
  • Experience defining API schemas and developing backend services in a microservices environment
  • Strong experience with a backend language; extra points for Python or Go
  • Familiarity with RPC schemas such as Protocol Buffers, gRPC, Avro or Thrift
  • Familiarity with developing in container-based environment such as Docker and Kubernetes
  • Take pride in reducing technical debt; your attention to small details and keeping code/configuration clean and maintainable is something you value
  • History of going out of your way to help out your fellow engineer to make them more productive
Benefits:
  • Great medical, dental, and vision insurance options
  • Mental health benefits
  • Family building benefits
  • In addition to 12 observed holidays, salaried team members have unlimited paid time off, hourly team members have 15 days paid time off
  • 401(k) plan to help save for your future
  • 18 weeks of paid parental leave. Biological, adoptive, and foster parents are all eligible
  • Pre-tax commuter benefits
  • Lyft Pink - Lyft team members get an exclusive opportunity to test new benefits of our Ridership Program

Lyft is an equal opportunity/affirmative action employer committed to an inclusive and diverse workplace. All qualified applicants will receive consideration for employment without regards to race, color, religion, sex, sexual orientation, gender identity, national origin, disability status, protected veteran status or any other basis prohibited by law. We also consider qualified applicants with criminal histories consistent with applicable federal, state and local law.  

Starting in September 2023, this role will be in-office on a hybrid schedule — Team Members will be expected to work in the office 3 days per week on Mondays, Thursdays and a team-specific third day. Additionally, hybrid roles have the flexibility to work from anywhere for up to 4 weeks per year.

The expected range of pay for this position in the San Francisco Bay Area is $139,500 - $155,000. Salary ranges are dependent on a variety of factors, including qualifications, experience and geographic location. Range is not inclusive of potential equity offering, bonus or benefits. Your recruiter can share more information about the salary range specific to your working location and other factors during the hiring process.