Full-stack TypeScript Developer
We are building a modern SaaS platform for legal firms focused on task management, matter management, billing, time tracking, and office/team-based permissions.
We are looking for a strong Full-stack TypeScript Developer (Middle+ / Senior) who can move quickly while maintaining clean architecture, type safety, auditability, and multi-tenant boundaries.
Technology Stack
- Bun runtime / package manager / workspace tooling
- TypeScript monorepo architecture
- Backend: Hono, Kysely, PostgreSQL, Supabase Auth
- Frontend: React 19, Vite, SWR, wouter, Tailwind v4
- UI architecture based on Base UI + shadcn-style primitives
- Database tooling: Postgres migrations, Kanel, kanel-kysely
Validation: Zod with generated DB types
Responsibilities
- Develop backend APIs using Hono and shared service architecture
- Write secure and type-safe Kysely queries with office/team/self permission scopes
- Maintain multi-tenant architecture and access control boundaries
- Extend PostgreSQL schema, migrations, triggers, RLS policies, and audit logs
- Generate and maintain database types after schema updates
- Build frontend functionality for tasks, matters, billing, and leads
- Integrate Supabase Auth for authentication flows
- Follow existing audit trail architecture using runAsUser/runAsEmployee/runAsSystem
Write clean, maintainable, and type-safe code without unnecessary abstractions
Requirements
- Strong TypeScript experience
- Solid PostgreSQL knowledge beyond CRUD:
- constraints
- triggers
- transactions
- views
- RLS
- JSONB
- Experience with Kysely or other typed SQL query builders
- Understanding of multi-tenant SaaS architecture
- Strong React experience with hooks, forms, component composition, and data fetching
- Experience working in monorepos
- Understanding of authorization, auditability, and data ownership
Comfortable working with CLI tools and local development environments
Nice to Have
- Experience with Hono
- Experience with Bun
- Experience with Supabase Auth/JWKS
- Experience building B2B SaaS products
- Experience with legal tech, billing, or task management systems
- Experience with Tailwind v4 and Base UI
Experience with database code generation
Important Engineering Principles
- No npm/pnpm usage โ Bun only
- Business logic must stay outside route handlers
- Audit fields and timestamps must not be written manually
- Supabase JS is used only for authentication
- Keep solutions simple and maintainable
Respect tenant isolation and permission boundaries at all times
What We Offer
- Competitive salary
- Flexible work schedule
- Professional development opportunities
- Access to paid learning platforms
Opportunity to work on a modern TypeScript-first SaaS platform
If you are passionate about building scalable and type-safe applications with modern TypeScript technologies, we would love to hear from you.
Required languages
| English | B1 - Intermediate |
| Ukrainian | Native |