VenueNest is a multi-tenant SaaS platform for wedding and event venues. It's live in production today and covers CRM and pipeline automation, a unified email/SMS inbox, contracts and e-sign, and a client-facing portal, with a full roadmap of features still ahead.
The platform was originally built by a contracted outside engineering team. That team has now handed over the full codebase, and a small group remains on limited retainer for hotfixes while we transition. You'd join as our first in-house developer — working directly with the founders, and initially alongside that remaining contracted support. As the transition completes, you'll take on full technical ownership of VenueNest: architecture decisions, code quality, and engineering standards, with no other engineer above you. This is a chance to shape how the product is built and run for the long term, not just execute someone else's roadmap.
To be clear: this is a startup. VenueNest is early-stage and pre-revenue — no paying customers yet — which is why this role is priced where it is. In exchange, you get an unusual amount of ownership for a mid-level role, real influence over the product's direction, and comp that's expected to grow alongside the company (and your role in it).
Our Mission
At VenueNest we nurture connections, create clarity through software, and empower growth in business so our community serves with purpose and gives generously.
Core Values
We try to run VenueNest as a product and as a team, on a few simple principles: Trust, Honesty, Integrity, Love, Respect, and Gratitude. In practice, that means communicating clearly, treating clients and each other well, and taking real ownership of our work.
Compensation & Schedule
Initial Work
- Ship features end to end across the Angular SPA and NestJS API, following existing module and state patterns rather than inventing parallel architectures.
- Model and migrate multi-tenant data with Prisma/PostgreSQL, keeping tenant isolation and permissions correct.
- Build and extend queue-backed workflows with BullMQ (messaging, sync, pipeline automation) and scheduled jobs where the product already uses them.
- Implement and maintain third-party integrations (Stripe, Twilio, Google, Meta, email providers), including webhooks, OAuth flows, and failure handling.
- Contribute to realtime experiences over Socket.IO (inbox, pipeline, chat/community) in coordination with the REST API.
- Improve automated testing and engineering hygiene as you go — unit and e2e coverage today is thin relative to the size of the codebase, and there's real room to strengthen CI and reliability without owning a separate DevOps role.
- Help set the bar on engineering practices going forward — testing, code review, documentation — since you'll be the one carrying this codebase after the transition.
Requirements
- We want the most talented and experienced developer we can find — but we're just as open to an entry-level candidate who can show real hands-on experience shipping software (school projects, freelance work, internships, open source, or a first job). We're optimizing for someone who learns fast and takes ownership, not for years on a resume.
- Solid JavaScript fundamentals, with real exposure to TypeScript and a genuine willingness to go deeper on it in production full-stack work.
- Solid understanding of working with AI harnesses (e.g. Claude Code, Cursor, or similar) — including using and building custom skills/commands, working with MCP servers, and writing clear, effective prompts to direct AI agents toward real, production-quality work.
- Experience with a modern component framework and client-side state (e.g. Angular + NgRx, React + Redux/Zustand, or Vue + Pinia/Vuex). Angular and NgRx are strongly preferred; strong engineers from React or Vue who can ramp on Angular are welcome.
- Production experience with a Node.js backend framework (NestJS preferred; Express, Fastify, or similar also relevant).
- Comfortable with relational databases: schema design, migrations, and query thinking (PostgreSQL/Prisma or equivalent ORMs).
- Experience designing and consuming REST APIs, including auth (JWT or session-based) and validation.
- Proven ability to work in an existing large codebase and collaborate via git with a distributed team (PRs, clear written communication, async updates across time zones).
- Comfortable being the sole or lead engineer on a project, and taking ownership of decisions without a senior engineer to defer to.
Nice to Have
- Hands-on Angular (especially recent versions) and NgRx store/effects.
- NestJS, Prisma, and PostgreSQL in production.
- BullMQ, Redis, or similar background job systems.
- Realtime work with WebSockets/Socket.IO.
- Integrations involving Stripe, Twilio, OAuth providers, or messaging platforms (Meta, Google, email).
- Multi-tenant SaaS experience (tenant scoping, RBAC, billing).
- Familiarity with AWS (ECS, RDS, S3, CloudFront) and Docker — useful, not required; infrastructure is largely already in place.
- Interest in growing automated tests (Vitest/Jest/Playwright) and CI practices.
The Stack
In this early phase, your first priority will be to get deep into the existing codebase — debugging and maintaining what's already live — before moving into new feature work, which will pick up quickly as you get up to speed. The versions and tools below reflect the production codebase today; you don't need every line item on day one, but this is what you'll be working in.
Frontend
- Angular 21 (standalone components, lazy-loaded routes)
- TypeScript (~5.9)
- NgRx (store + effects) and RxJS
- PrimeNG 21, Tailwind CSS 4, Angular CDK
- Socket.IO client for realtime updates
- FullCalendar, Quill, ECharts for calendar, rich text, and charts
- Vitest for unit tests; Playwright for end-to-end / demo flows
- Scale: roughly 170+ components and 100+ routed paths in a large SPA
Backend
- NestJS 11 (Express) and TypeScript (~5.7)
- Prisma against PostgreSQL (tens of models, active migration history)
- JWT auth (access + refresh) with Passport, bcrypt, and role/permission guards
- BullMQ on Redis for inbound/outbound messaging, Gmail sync, pipeline automation, and related jobs
- @nestjs/schedule for cron work (calendar reminders, sync, token refresh)
- Socket.IO with Redis adapter for chat, messaging, pipeline, and community
- Swagger, class-validator, Jest / Supertest
- Scale: dozens of feature modules and hundreds of REST endpoints
Data and Infrastructure
- PostgreSQL (AWS RDS)
- Redis (ElastiCache) for queues and Socket.IO scaling
- AWS: ECS Fargate, ALB, ECR, S3, CloudFront, CloudFormation
- Docker for the API; GitHub Actions CI on the frontend (typecheck, lint, tests, production build)
Integrations
- Stripe: subscriptions, payment methods, webhooks
- Twilio: platform SMS, numbers, inbound/outbound webhooks
- SendGrid / AWS SES / SMTP: transactional and messaging email
- Google: Calendar two-way sync; Gmail via OAuth and Pub/Sub watch
- Meta: Facebook Messenger and Instagram DMs (OAuth + webhooks)
- Firebase Admin: push notifications
- AWS S3: media and file storage (presigned URLs)
Domain context that shows up in day-to-day work: multi-tenant tenancy boundaries, booking pipeline stages and automation, unified inbox threading, contracts/e-sign, and client-facing portal surfaces.