2 days ago
Toronto, CanadaSenior
Responsibilities
- Own the Ready1 Android application end to end, including technical design, feature implementation, testing, Play releases, production health, and post-release triage.
- Design and ship native Android features in Kotlin using Jetpack Compose while maintaining legacy XML where needed.
- Drive maintainable architecture with Hilt, ViewModels, repositories, use cases, coroutines, Flow, and clear feature packages.
- Integrate and harden Retrofit and OkHttp networking, authentication, token refresh, retries, offline or degraded modes, and multi-region routing.
- Contribute to real-time chat and video experiences using SignalR, WebSockets, and Azure Communication Services.
- Own production quality through unit and UI testing, code reviews, Crashlytics and log triage, staged rollout decisions, and hotfixes.
- Improve release processes involving Gradle flavors, signing, Play Console, internal testing, and staged rollouts.
- Apply secure mobile practices for tokens, secrets, permissions, local data, logging, and privacy.
- Partner with iOS, backend, product, design, QA, and security teams to maintain platform parity and deliver supportable releases.
- Mentor by example and raise engineering quality without managing Android direct reports.
Requirements
- 7+ years of professional Android development experience with a record of shipping and maintaining production applications.
- Demonstrated end-to-end ownership of a product surface or application, including features, quality, releases, and production issues.
- Strong Kotlin and Android SDK fundamentals plus production experience with Jetpack Compose.
- Deep knowledge of coroutines, Flow, lifecycle-aware architecture, ViewModel, Navigation, Gradle, and Android Studio.
- Experience integrating REST and JSON APIs and handling authentication, token refresh, concurrent session failures, and unreliable networks.
- Hands-on experience with Play releases, flavors or environments, signing, internal testing, staged rollouts, and crash triage.
- Experience with automated testing, including required unit tests and preferably UI tests, plus disciplined Git, pull request, and CI practices.
- Practical mobile security experience involving secure token and secret storage, logging, permissions, and local data.
- Clear communication and the ability to turn ambiguous requirements into supportable releases while partnering with iOS.
- Motivation for a hands-on senior individual-contributor role as the sole Android owner rather than building or managing an Android organization.
- Bonus qualifications include MSAL, Azure AD B2C, OAuth, OIDC, passkeys, WebAuthn, Hilt or Dagger, SignalR, WebSockets, VoIP or video, Azure Communication Services, WebRTC, cybersecurity, incident response, Crashlytics, structured logging, feature flags, accessibility, internationalization, design systems, and NDK or C++.
Benefits
- Full-time hybrid role based in Toronto, Canada, with up to three days per week in the office and the remaining days remote.
- Opportunity to work on cybersecurity, identity access management, and enterprise crisis-response products.
- Semperis emphasizes purpose, growth, balance, curiosity, integrity, initiative, and a healthy work-life balance.
- Equal-opportunity employer with reasonable accommodation support for applicants with disabilities.
About Semperis
Semperis builds identity security software for enterprises running hybrid directory services, delivering identity threat detection and response and rapid Active Directory forest recovery across AD, Entra ID, and Okta. The company sells subscriptions and incident-response tooling that help prevent breaches and speed ransomware recovery. It is privately held, headquartered in Hoboken, New Jersey, and reports protecting over 100 million identities.
