SDK Engineer - Python
Remote • Remote, Global • FullTime
Posted 1d ago
About the job
Supabase is seeking a Python SDK Engineer to join their SDK team. This role focuses on enhancing how developers interact with Supabase through Python, ensuring the SDK is a library that Python developers genuinely enjoy using. You will work on building and evolving the Python SDK across various Supabase services, including database, auth, storage, realtime, and functions, with both synchronous and asynchronous APIs. The position involves proactive development, identifying and building missing features, and contributing to the open-source community. A key aspect of this role is owning the typing experience for the SDK, ensuring it's fully typed and checker-friendly, and maintaining compatibility across diverse Python environments and frameworks. You will also be responsible for tracking platform changes and reflecting them in the SDK, designing public APIs, and making the SDK legible to AI coding agents.
Responsibilities
- Build and evolve the Python SDK for database, auth, storage, realtime, and functions, with sync and async APIs.
- Identify, propose, and build new features for the SDK.
- Work in the open by triaging issues, reviewing contributions, maintaining CI/release automation, and managing scope.
- Ensure the SDK has a fully typed and checker-friendly experience for static analysis and autocomplete.
- Maintain compatibility across multiple Python versions, sync/async frameworks, workers, serverless, and notebooks.
- Develop realtime capabilities, including websocket connections, reconnection, and subscription semantics.
- Track platform changes (auth, realtime, storage, postgrest, edge functions) and update the SDK accordingly, documenting changes.
- Design APIs publicly through RFCs, migration guides, release notes, and docs, treating breaking changes with deprecation paths.
- Make the SDK compatible with AI coding agents.
Requirements
- Deep knowledge of modern Python typing (generics, protocols, overloads, TypedDict) and strict type checking.
- Experience authoring or maintaining a published library with a public API and external users.
- Understanding of open-source maintainership, including issue triage, PR review, release automation, changelogs, semver, and handling feature requests.
- Fluency in asyncio and experience designing libraries for both sync and async callers.
- Proficiency in Python packaging for libraries (pyproject.toml, wheels, tooling, version support, dependency management).
- Habitual testing practices (unit, type-level, end-to-end) with regression tests for every fix.
- Strong writing skills for design docs, changelogs, and issue replies, suitable for public, async communication.
- Ability to find important work, scope it, ship it, and define what was not done (autonomy).
- Clear communication across technical and non-technical audiences.
- Experience in async or globally distributed teams.
- Comfort navigating ambiguity and moving quickly.
- Experience running a major-version migration for a public package (bonus).
- Familiarity with JWT/OAuth (bonus).
- Experience building integrations for AI agent frameworks (bonus).
- Experience generating idiomatic clients from a schema (bonus).
Benefits
- Fully Remote (global hiring)
- WeWork membership or co-working allowance
- ESOP (equity ownership)
- Tech Allowance for work environment setup
- 100% health insurance coverage for employees
- 80% health insurance coverage for dependents
- Annual Off-Sites
- Flexible Work (asynchronous operation)
- Annual Professional Development/Education Allowance