About the roleYou'll take end-to-end ownership of a production TypeScript SaaS: a platform that keeps families, friends, and trusted providers connected around the people they love — with member management, real-time chat, shared calendars, provider relationships, seat-based billing, and automated notifications.
This is a high-ownership, high-trust role. Product code, infrastructure, deploys, and incident response all sit with you. You'll work directly with the founder, make real technical decisions, and see your work in the hands of users fast — no committees, no ticket queues, no waiting for sign-off. We're looking for a strong, self-directed engineer who thrives with autonomy and takes pride in being accountable for quality, reliability, and security.
Responsibilities- Own the full lifecycle: design, build, test, deploy, monitor, and maintain features across web, API, and infrastructure.
- Ship product features across a React front-end and a NestJS back-end in a pnpm/Turborepo monorepo.
- Maintain and evolve the AWS infrastructure (CDK), including deploys, database migrations, and production debugging.
- Handle third-party integrations: payments (Stripe), transactional email/SMS, calendar sync (CalDAV), and auth (Cognito).
- Triage and resolve production issues — read logs, reproduce, fix, and deploy with confidence and minimal hand-holding.
- Write maintainable, well-tested code and hold yourself to a high bar — you set the engineering standard here.
- Make pragmatic product and technical trade-offs independently, and communicate status and risks clearly to a non-technical founder.
LocationYou must live and work in Canada. This is a remote-friendly role, but Canadian residency and legal eligibility to work in Canada are required.
Required skills- Location: must live and work in Canada.
- Strong TypeScript across front-end and back-end — this is non-negotiable; the entire codebase is TS.
- React front-end: modern hooks-based React, client-side routing and data-fetching (TanStack Router/Query), state management (Zustand), forms + schema validation (React Hook Form + Zod), Tailwind CSS, Vite.
- NestJS (or equivalent Node framework): modules, dependency injection, DTO validation, WebSockets/real-time (Socket.io).
- Relational databases with an ORM: PostgreSQL + Prisma — schema design, migrations, and writing/debugging raw SQL when needed.
- AWS in production: comfortable with ECS/Fargate, RDS, S3, Cognito, Secrets Manager, and CloudWatch; able to deploy and troubleshoot cloud infra.
- Infrastructure as Code: AWS CDK (or Terraform/CloudFormation) — reading, modifying, and deploying infra.
- Payments/billing integration: Stripe subscriptions, webhooks, and entitlement logic.
- Automated testing: unit and integration testing (Vitest, Jest) and a habit of verifying your own work.
- Docker and general Unix/CLI fluency.
- Git and a disciplined, self-directed workflow.
- Autonomy and judgment: able to run a production system with full ownership, prioritize effectively, and deliver outcomes.
Nice to haves- Real-time systems experience (WebSockets, presence, chat).
- Calendar/scheduling work (CalDAV, FullCalendar, recurrence rules).
- Transactional messaging (Resend/MJML email templating, Twilio SMS).
- Rich-text editing (TipTap/ProseMirror).
- Internationalization (i18next).
- Background jobs / scheduled workers (digests, notifications).
- Webhook infrastructure (Svix), Google APIs.
- Monorepo tooling (Turborepo, pnpm workspaces).
- A security mindset — this app holds sensitive personal and family data.
- Comfort using modern developer tooling, including AI coding assistants, to work efficiently.
Working styleThis role is built for someone who does their best work with autonomy. You'll own your domain end-to-end, and nothing ships that you haven't reviewed and stand behind. Strong self-direction, good product instincts, and the discipline to test and verify your own work are essential. If you've ever felt boxed in by process-heavy teams and want your decisions to matter, this is that role.