Our Melbourne AI SaaS projects cover the full stack: AI model development, SaaS architecture, and product engineering. SaaS architecture: multi-tenant design with tenant isolation at every layer. Database: PostgreSQL with Row Level Security (RLS) — each tenant's data isolated at the database level. API: Next.js API routes or FastAPI with tenant context extracted from authentication tokens and enforced on every query. AI model serving: tenant-isolated inference — either through tenant-specific model contexts (RAG retrieving from tenant-specific knowledge bases) or model fine-tuning per tenant (for enterprise customers requiring customised AI behaviour). Authentication: Clerk or Auth0 with organisation-level multi-tenancy — SSO support for enterprise customers (SAML, OIDC). Billing: Stripe with usage-based components for AI inference — tracking API calls, tokens processed, images analysed, or documents scanned per tenant per billing period. AI model integration: three patterns for embedding AI into SaaS: (1) Synchronous inference — user triggers an AI action and waits for the result (document analysis, image classification). Requires: fast inference (under 3 seconds for acceptable UX), loading states with progress indicators, and graceful error handling (AI models occasionally fail — the SaaS must handle this without crashing). (2) Asynchronous inference — user submits a task and receives the result later (batch document processing, long-running analysis). Requires: task queue (Bull/BullMQ on Redis or AWS SQS), progress tracking, and notification when complete (email, in-app notification, webhook for API customers). (3) Streaming inference — AI generates output incrementally (chatbot responses, document drafting). Requires: Server-Sent Events or WebSocket for real-time token streaming, partial rendering in the UI, and cancellation capability. Infrastructure for AI SaaS: the key cost driver in AI SaaS is GPU compute for inference. We architect for cost efficiency: model quantisation (reducing model precision from FP32 to INT8 — 4x cost reduction with minimal quality impact), batch inference where possible (accumulating requests and processing in batches — more efficient GPU utilisation), caching (storing results for repeated queries — particularly effective for AI features with high cache hit rates like categorisation and classification), and serverless GPU (Modal, Replicate, or AWS SageMaker Serverless — paying for inference time only, not idle GPU capacity). For Melbourne AI SaaS: model serving on AWS ap-southeast-2 (Sydney) for Australian-hosted inference. Product design for AI: AI features require different UX patterns than deterministic software. We design: confidence indicators (showing users how certain the AI is — particularly important for professional use cases like legal, medical, and financial), editable AI outputs (the AI suggests, the user confirms or modifies — keeping humans in the loop), feedback mechanisms (thumbs up/down on AI outputs — feeding back into model improvement), and graceful degradation (when the AI can't answer, providing a useful fallback rather than an error).