Senior Software Engineer, Customer Identity - dbt Labs
Houston, TX 77246
About the Job
Since 2016, dbt Labs has been on a mission to help analysts create and disseminate organizational knowledge. dbt Labs pioneered the practice of analytics engineering, built the primary tool in the analytics engineering toolbox, and has been fortunate enough to see a fantastic community coalesce to help push the boundaries of the analytics engineering workflow. Today there are 30,000 companies using dbt every week, 100,000 dbt Community members, and over 4,100 dbt Cloud customers.
About the Customer Identity Team:
The customer identity & product security team has an exciting roadmap for the coming year - spanning end-user authentication and SSO, role-based access control, and the dbt Cloud security admin experience. These security and enterprise experiences are among the top priorities for the company as we continue to build momentum and growth in selling dbt Cloud to the largest organizations.
This person will work with stakeholders like security, product management, QA, and customer support as our team takes on these big cross-functional projects. They will have an opportunity to flex into a security mindset while bringing their software architecture and programming skills to build reliable, secure systems for our dbt cloud SaaS product. They will be primarily working on the Django monolith and a couple of Go micro-services. There will also be an opportunity to mentor and guide other junior engineers across engineering and espousing for platform-focused security.
In this role, you can expect to:
• Work on enhancing the enterprise-grade authentication and authorization platform that enables Single Sign-On, Role Based Access Control and User and Token management.
• Building new products that bring dbt Cloud closer to security admins and unlock new revenue streams for our business.
• Design and develop reliable, secure, highly available and delightful experiences for both customer personas: the dbt Cloud admin and the end user.
• Collaborate with Product Management, UX designers, Security, and Customer Support.
• Work with a variety of programming languages, systems, and technologies, including: Python, Go, Typescript, Postgres, Kubernetes, AWS, Terraform and Datadog.
Qualifications:
• Have 5+ years experience as a software engineer
• Minimum requirement of Bachelors degree in related field (computer science, computer engineering, etc.) OR
• Completed enrollment in engineering related bootcamp
You are a good fit if you:
• Have strong fundamentals in object-oriented programming.
• Have designed and built API-driven applications using REST and/or gRPC and OAuth for API endpoints.
• Are able to balance speed of delivery with designing scalable, reusable components.
• Are passionate about design and code reviews that help grow the team.
• Are highly motivated and able to work autonomously.
• Are ready to go outside of the team’s realm when there are infrastructure-related dependencies and collaborate with other teams to aid the delivery of team features.
• Ensure high programming standards by writing unit, functional, and integration tests.
• Have a systematic problem-solving approach coupled with strong communication skills and a sense of ownership and drive.
Youll have an edge if you:
• Have worked with authentication protocols like SAML and OIDC and authorization protocols like OAuth and authorization products like Zanzibar, OpenFGA etc.
• Have an interest in application-level product security.
• Have built reliable, mission-critical software for external customers.
• Have designed and implemented scalable architecture patterns.
• Have experience with Datadog or other log monitoring services and working with it to debug production issues.
• Have experience working on a distributed team.
Compensation and Benefits:
• Salary: $154,000-$208,000
• Equity Stake*
• Benefits - dbt Labs offers:
o Unlimited vacation (and yes we use it!)
o 401k w/3% guaranteed contribution
o Excellent healthcare
o Paid Parental Leave
o Wellness stipend
o Home office stipend, and more!
What to expect in the hiring process
(all video interviews unless accommodations are needed):
• Interview with a Talent Acquisition Partner
• Technical Interview with Hiring Manager
• Team Interviews
• Final interview with leadership team member