OnSeason is building the distribution infrastructure for the vacation rental industry. Our API powers distribution for 40+ travel tech companies - from Y Combinator startups to established OTAs. Our PMS partners include Guesty, Apaleo, Mews, Oracle’s Opera and 35+ others.
OnSeason’s latest product brings that same infrastructure directly to operators via an AI-powered website builder that connects to any property management system and lets vacation rental companies launch high-converting direct booking sites without writing a single line of code.
We're a small, product-obsessed team based in Sofia, backed by Eleven Ventures, operating at the intersection of hospitality, technology, and AI. We're hiring an engineer who can own a slice of the platform end-to-end.
What you'll actually do
- Take ownership of a domain (part of the product) and ship. Architecture, data model, API surface, UI, tests, deploys.
- Hold contracts honestly. When a piece of work crosses from your domain into someone else's, you flag it before you ship it.
- Show running artifacts. Show the work, not the status.
- Read across the stack. Next.js / Drizzle / Postgres on the product side, NestJS / Prisma / queue infra on the integration side. You don't have to love both, but you should know which side a problem belongs on.
How we work with AI
We use agents heavily. We expect you to use them too, but we are not hiring a prompter.
- You should read a Drizzle migration, a NestJS module graph, or a React Server Component boundary and know what's actually happening, not what the model claims.
- You should know when the agent is wrong, and you have the technical depth to override it.
- You should have experience with agentic development frameworks
You'll fit if
- You have 4+ years of experience writing TypeScript in production.
- You've shipped and operated something real, not just built it. You know what the second deploy on Friday afternoon feels like.
- You think in contracts, context and boundaries, not files. You can explain why a piece of code lives where it lives.
- You've integrated against a messy third-party API and know the shape of that pain.
- You treat agents as a force multiplier on top of your own judgment, not a substitute for it.
You won't fit if
- You want a ticket queue handed to you.
- You are looking for a 9-to-5 temp gig.
- You are looking for a remote position - the role is hybrid, you will have to come to the office every week
- "AI-native" means "I let AI write it and ship it" to you.
- You need a sprint board, a PM, and layers of approval to feel safe shipping.
- You're allergic to ambiguity. Early platform, real users, evolving contracts, that's the job.
Stack you'll touch
- Next.js, React, TypeScript strict, Tailwind, shadcn/ui, TanStack Query, Zustand · Drizzle, Postgres, pgvector, Inngest · NestJS, Prisma, BullMQ, Redis, AMQP, OpenTelemetry · Payload CMS, E2B sandboxes, Vercel AI SDK · Turborepo, pnpm, Biome, Vitest, Husky, Sentry, MCPs