SlipstreamJobs tracks this role from the company's public career site. Apply directly on the employer's site.
Bitwarden is the leading open-source password management solution used by individuals, teams, and enterprises worldwide. The Onboarding & Activation team owns the user journey from first run to paying customer, including guided setup, trial initiation, upgrade paywalls, plan selection, and subscription/payment/invoice experiences.
As Senior Software Engineer on this team, you will own the back-end logic that powers these surfaces: trial state and eligibility, activation/onboarding progress tracking, and paywall/entitlement gating. This is revenue-critical, externally coupled work where correctness is paramount—a mistake can let an unauthorized user through a paywall or lock out a legitimate one. You will work on a globally distributed, asynchronous team that values written clarity and bias to action.
Key Responsibilities:
- Build and maintain back-end logic for trial initiation, lifecycle (start, expiration, conversion, extension), and eligibility rules.
- Build and maintain entitlement/gating logic behind upgrade paywalls, ensuring user display and permissions stay in sync with plan and trial state.
- Design and maintain back-end services and data models tracking onboarding and activation progress, coordinated with client-side guided setup.
- Coordinate closely with the Billing team on API contracts for subscription, plan, and licensing data, flagging changes that could affect correctness.
- Design clean, testable services with explicit success/error/conflict/unhandled outcomes, avoiding silent failures in access-control or payment logic.
- Author safe, backwards-compatible data access and schema changes as the team's data model evolves.
- Uphold payment-security and privacy standards: no raw card data, secrets, or PII in systems or logs.
- Review pull requests, raise back-end quality, and partner with front-end, Product, and AppSec teams.
Requirements:
- 6–10 years of back-end software engineering experience, with ability to own services and event/state-transition logic with minimal guidance.
- C#/.NET (ASP.NET Core) strongly preferred; strong experience in Java, Kotlin, Go, or similar statically-typed stack with willingness to ramp onto .NET is acceptable.
- Experience with correctness-critical state and event handling (idempotent processing, explicit success/error/conflict handling, no silent failures) in systems where mistakes affect user access or payment.
- Sound judgment around not exposing payment data, secrets, or PII.
- Strong SQL skill and judgment to make safe, additive, backwards-compatible schema changes.
- Self-directed work with minimal oversight; effective collaboration across time zones on distributed, asynchronous teams with default to written clarity.
- Experience with subscription, trial, entitlement, or feature-gating systems; comfort integrating with or consuming APIs owned by other teams.
- Familiarity with feature-flagged rollouts (LaunchDarkly or similar) and large, high-traffic monorepos with shared ownership.