Principal Software Engineer

About Rippling 

Rippling is the first way for businesses to manage all of their HR & IT—payroll, benefits, computers, apps, and more—in one unified workforce platform.


By connecting every business system to one source of truth for employee data, businesses can automate all of the manual work they normally need to do to make employee changes. Take onboarding, for example. With Rippling, you can just click a button and set up a new employees’ payroll, health insurance, work computer, and third-party apps—like Slack, Zoom, and Office 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, Bedrock, and Greenoaks—and was named one of America's best startup employers by Forbes (#12 out of 500).  Since day one, our Bangalore site has been a critical part of our R&D org, driving the build-out of many of our critical products (ex: Payroll, Global ExPEO, EOR, Billing, etc.) In addition to Product teams across Finance, HR and IT, we have multiple infra, front end and mobile and platform teams.  We are looking to grow our 250+ R&D team in BLR with multiple highly empowered, best-in-class, Principal level engineering talent across platform and product roles. 


We prioritize candidate safety. Please be aware that official communication will only be sent from @Rippling.com addresses.

We are seeking a visionary and hands-on Principal/Senior Staff Engineers to join our Rippling Unity Platform team. The ideal candidate will have extensive experience in building internet-scale distributed systems, developing scalable services, and crafting clean, modular APIs. This role requires deep expertise in both analytical and transactional systems, and a strong understanding of  Scalability , Concurrency , SLAs, system resiliency, and observability. The candidate should be proficient in coding with languages such as Python, Golang, and Java, and experienced in handling systems with millions of users.

Key Responsibilities
  • Architect and Lead: Design, develop, and maintain internet-scale, highly distributed systems and scalable services for the Rippling Unity Platform.
  • Hands-On Coding: Actively participate in coding and code reviews, using languages such as Python, Golang, and Java.
  • Technical Leadership: Provide visionary technical leadership, setting the direction for engineering best practices and the adoption of advanced technologies.
  • Mentorship: Mentor and support engineers across the organization, fostering a culture of continuous learning, collaboration, and technical excellence.
  • System Design: Architect systems capable of handling millions of users simultaneously, ensuring high performance, reliability, and scalability.
  • API Development: Design and implement clean, modularized abstraction APIs and programmatic APIs for both end users and engineers, including Backend for Frontend (BFF) systems.
  • Storage Solutions: Design and implement Analytical  systems that encompass both analytical (e.g., Presto, S3, Snowflake) and transactional (e.g., MySQL, Aurora, MongoDB) systems. They should be able to handle petabyte scale 
  • Resiliency and SLAs: Develop and maintain systems with high availability and reliability, targeting four or five 9s (99.99% or 99.999%) uptime.
  • Observability: Implement comprehensive observability practices, including monitoring, logging, and tracing, to ensure system health and performance.
  • Streaming and Workflow Systems: Build and integrate streaming solutions (e.g., Spark Streaming, Apache Flink, Kafka Connect) and workflow systems for both transactional and analytical workflows.
  • Collaboration: Work closely with cross-functional teams, including product management, data science, and operations, to align on strategic goals and ensure successful project delivery.
  • Innovation: Stay abreast of industry trends and emerging technologies, driving innovation and continuous improvement within the Rippling Unity Platform.
  • Documentation and Standards: Develop and maintain comprehensive documentation and standards for system architecture, design, and operational processes.

Required Qualifications
  • Experience: 15+ years of experience in software engineering, with a significant focus on building large-scale distributed systems and scalable services.
  • Technical Expertise: Proficient in coding with languages such as Python, Golang, and Java. Deep understanding of distributed computing principles, data architecture, and scalable system design.
  • Leadership: Demonstrated experience in technical leadership roles, with a proven track record of mentoring and developing engineering teams.
  • Systems Expertise: Extensive experience in building systems handling millions of users in parallel and developing scalable services. Deep understanding of SLAs, system resiliency, and observability.
  • API Development: Expertise in designing and implementing clean, modularized abstraction APIs and programmatic APIs, including BFF for front-end systems.
  • Storage Systems: Expertise in both analytical (e.g., Presto, S3, Snowflake) and transactional (e.g., MySQL, Aurora, MongoDB) storage systems.
  • Cloud and Streaming: Experience with public cloud platforms (e.g., AWS, S3) and streaming technologies (e.g., Spark Streaming, Apache Flink, Kafka Connect).
  • Workflow Systems: Understanding of both transactional and analytical workflow systems.
  • Communication: Excellent verbal and written communication skills, with the ability to convey complex technical concepts to diverse audiences.

Engineering

Bangalore, India

Share on:

Terms of servicePrivacyCookiesPowered by Rippling