Software Engineer & Product Lead
Production-Grade AI Platform
Done Life·Sydney, Australia
Dec 2025 – Present
Synopsis
The entire technical team for a production AI-first productivity platform, and the bridge between the founder's product vision and technical reality. Owns full-cycle engineering — AI pipelines, cloud infrastructure, App Store compliance, CI/CD — and every product decision that goes with it, converting unstructured emails, PDFs, and images into structured calendar events for consumers.
The Making Of
🎯 The Challenge
Building a production-grade consumer app from scratch across three fronts simultaneously: (1) AI reliability: LLMs hallucinating dates, poor PDF handling, and prompt drift on real-world email shapes; (2) Platform compliance: an App Store Guideline 3.1.1 rejection requiring an iOS/Android product split; (3) Data security: sensitive item content needed field-level protection without breaking offline Flutter sync or triggering iOS Keychain concurrency crashes.
💡 The Solution
Migrated AI extraction to OpenAI Responses API with strict JSON schema and IANA timezone injection via Luxon, so relative dates resolve correctly in the user's wall-clock zone. Implemented AES-256-GCM field-level encryption with a GCP Secret Manager-wrapped DEK and a serialized async queue to eliminate Riverpod/Keychain race conditions. Split the paywall by platform, with iOS redeeming App Store offer codes and Android retaining the approved voucher flow. Provisioned all GCP resources with Terraform and wired three GitHub Actions workflows for repeatable, secret-safe builds.
🚀 The Impact
App is production-ready on both App Store and Google Play. Field-level encryption protects all sensitive Firestore content without plaintext storage. The CI/CD pipeline enforces dart format, flutter analyze, and flutter test on every PR, with full infrastructure expressed as versioned code. The offline eval harness turned model and prompt changes from a leap of faith into a measured, data-driven product decision.
Key Contributions
- 1Made the app 97% faster for users by replacing blind 15-minute email polling with custom mailhooks (Gmail push notifications), cutting average processing time from 20 minutes to 40 seconds — entirely my own initiative
- 2Cut cloud costs by 91% by building a junk filter that discards the ~90% of inbound attachment data (signature images, decorative graphics) that was useless noise before it ever reached the AI
- 3Rebuilt the entire app from no-code to full-code one month into the role, using AI dev tools to ship a working prototype in a single day that already outperformed a year of prior Adalo/Make.com work
- 4Engineered an AI email ingestion pipeline using OpenAI Responses API with strict JSON schema, native PDF input, and timezone-aware date resolution via Luxon, fully eliminating the temporal hallucination issues that plagued earlier LLM extraction
- 5Implemented AES-256-GCM field-level encryption with server-side DEK wrapping via GCP Secret Manager; built a serialized async queue to prevent iOS Keychain concurrency crashes caused by overlapping Riverpod providers
- 6Provisioned GCP infrastructure as code with Terraform (8 .tf files covering Pub/Sub, IAM, Secret Manager, API services) and authored three GitHub Actions CI/CD workflows for PR validation (format, lint, test) and dev/prod Android AAB builds
- 7Navigated an App Store Guideline 3.1.1 rejection and shipped a platform-split paywall: iOS uses App Store offer code redemption via RevenueCat; Android retains the approved in-app voucher flow
- 8Built multi-auth (Email/Password, Sign in with Apple, Google Sign-In) with platform-specific routing, anonymous-to-linked account flows, and branded transactional email via Gmail API
- 9Built an offline AI-extraction eval harness (immutable run records, deterministic scorer, multi-provider abstraction) so model and prompt changes never ship blind, then used it to run a real A/B on reasoning-effort levels — an evidence-based product call that cut p50 latency ~72% for a 3.4-point accuracy trade-off
- 10Instrumented the AI pipeline end-to-end and read 14 days of production logs to pinpoint the OpenAI call as ~96% of total task time — turning "the app feels slow" into a precise, defensible engineering target
Key Metrics
Skills & Technologies
- FlutterMobile Frontend
- Firebase / Cloud FunctionsBackend & Database
- OpenAI Responses APIAI Extraction Engine
- RevenueCatSubscription Management
- TerraformInfrastructure as Code
- GitHub ActionsCI/CD
- GCP Secret ManagerKey Management
- Firebase Analytics (GA4)Product Analytics
Quick Info
- Company
- Done Life
- Location
- Sydney, Australia
- Type
- Full-time
- Duration
- Ongoing (7+ months)
- Complexity
- Principal