
CLI Engineer
FullTimeUSD 80,000 – 180,000 per year (estimated)javascriptfull-timenodejsnodeapimicroserviceson-site

CLI Engineer

CLI Engineer
Supabase
About Supabase
Supabase is the Postgres development platform, built by developers for developers. We provide a complete backend solution including Database, Auth, Storage, Edge Functions, Realtime, and Vector Search. All services are deeply integrated and designed for growth.
About the Role
- We are looking for a Senior CLI Engineer to join our CLI Team and help build a world-class local development experience
- while owning a significant share of the API and backend work that powers it. This is a hands-on individual contributor role. Technically, expect roughly 80% backend / API work and 20% CLI work: most of your time will be on TypeScript server-side development, primarily with NestJS (API modules, controllers, services, integrations), with a steady commitment to cross-platform CLI quality, releases, and developer experience. You will work closely with customers, product teams, and the open source community to deliver systems that are consistent, secure, and performant
- across Windows, Linux, and macOS for the CLI, and through well-designed APIs for everything else. This role is ideal for someone who thrives in async, fast-paced environments and wants depth in backend delivery without stepping away from CLI and DX as a core part of the job.
What You'll Own
- Design, build, and operate backend APIs and services in TypeScript, using NestJS patterns (modules, providers, pipelines) where that is how we ship - prioritizing security, performance, and clear contracts for internal and external consumers.
- Design and develop CLI tooling that is consistent, secure, and performant across Windows, Linux, and macOS, aligned with the same platform capabilities the backend exposes.
- Collaborate with product and platform teams to define end-to-end behavior: from HTTP/API design through to how the CLI and local development stack surface those capabilities.
- Implement unit, integration, and end-to-end tests across backend and CLI so reliability and maintainability stay high as the surface area grows.
- Create documentation and help content for API consumers, CLI users, and contributing developers.
- Participate in releases, versioning, and backwards compatibility for the components you own.
- Monitor usage and feedback; work with customers and the open source community to improve both API/backend and CLI experiences.
What You'll Bring
- 5+ years of software development experience with a strong track record in backend systems and/or developer-facing tooling.
- Strong TypeScript and professional experience shipping production API and server-side code; NestJS experience is strongly aligned with how the CLI Team builds.
- Hands-on experience with command-line tools (building, maintaining, or owning CLIs), including cross-platform concerns: filesystem access, subprocess management, terminal UX, and platform-specific behavior.
- Proficiency in one or more languages commonly used for CLI and backend work (for example TypeScript/Node, Rust, Python, Go, C++). For this role, depth in TypeScript is essential.
- Experience building CLIs with strong user experience: intuitive command structure, clear output, and actionable error messaging.
- Familiarity with package distribution and installation (for example npm, yarn, Homebrew, APT, Snap, Scoop, Chocolatey) as they relate to how users install and update tools.
- Solid Git workflow and CI/CD experience for automated testing and deployment.
- Contributions to open-source CLI tools, libraries, or backend frameworks.
- Experience with containerization and orchestration (for example Docker, Kubernetes).
- Familiarity with database migration management, Postgres, and related drivers or protocols where they intersect platform or CLI workflows.
What We Offer
- Fully Remote
- ESOP
- Tech Allowance
- Health Benefits
- Annual Off-Sites
- Flexible Work
- Professional Development
About the Team
- 280+ team members
- 55+ countries
- 20+ languages spoken
- $500M raised
- 500,000+ community members
Hiring Process
- We keep things simple, async-friendly, and respectful of your time: 1. Apply – Our team will review your application. 2. Intro Call – A short video chat to get to know each other. 3. Interviews – Up to four calls with:
- Future teammates
- Someone cross-functional from product, growth, or engineering (depending on the role)
- Someone from our leadership/founding team 4. Decision – We may follow up with a final question or go straight to offer. All communication is remote and we aim to move fast.



