Mid-Level Software Engineer (Full-Stack - Flutter + TypeScript + Applied AI)
The role
You'll be a hands-on engineer working across our whole product: the Flutter consumer app, the AI coach and publishing platform, and the Supabase backend they share. You'll own features end to end - scoping, building, testing, shipping, and monitoring them - with a high degree of autonomy and trust.
We're hiring at mid level, deliberately: as the business grows, we want this person to grow into a senior technical leader on the product. You'll get increasing ownership of architecture decisions, internal tooling, and engineering practices as you demonstrate you can carry them.
What you'll actually work on
- Consumer features in the Flutter app (iOS, Android, web): the coach chat experience, the audio player, onboarding and subscription flows.
- The AI lifestyle coach - our flagship AI feature, and real agentic engineering: an LLM coach with selectable personas, long-term memory (it extracts and recalls what matters to each reader across sessions), and a toolbox of actions - recommending books, pulling chapter content, saving daily intentions and takeaways, tracking goals โ with safety guardrails and context management (compaction, resumable sessions) built in.
- The AI publishing pipeline โ the machine that turns a raw book PDF into a polished, multi-language product: parsing โ LLM summarization โ translation โ AI cover generation โ ElevenLabs text-to-speech with audio stitching, orchestrated as durable, crash-safe workflows
- Backend work in Supabase: Postgres schema and migrations, Deno edge functions (payments webhooks, notifications, the coach backend).
- Internal tooling: publishing scripts, the LLM eval harness, developer-experience improvements. If a manual process annoys you, you're empowered to automate it.
- CI/CD: we run GitHub Actions, Codemagic mobile builds, and migration-validation pipelines โ you'll help keep releases boring and frequent, and raise the bar on testing and deployment practice.
- AI-assisted development is how we work: we use AI coding tools (Claude Code and similar) as a core part of feature development, and we expect you to use them well โ including knowing when not to trust them.
What we're looking for
These are our must have requirements. If you meet most of them, please apply.
- 4+ years of professional software engineering experience, including features you've shipped to production and supported afterwards.
- Strong in our two main stacks - Flutter/Dart and TypeScript/React
- Production experience with a relational database (we use Postgres via Supabase).
- Able to work independently in a remote team: you can take a loosely-defined feature, scope it, ask the right questions in writing, and drive it to done.
- Working proficiency in English (our working language).
- Degree in a STEM subject
Nice to have (genuinely optional)
- Supabase, or Next.js App Router experience
- Building LLM-powered features (prompting, evals, AI SDK / LangChain-style tooling)
- Mobile release experience (App Store / Play Store, Codemagic or fastlane)
- Payments and subscriptions (Stripe, Adapty/RevenueCat)