← All work
Impact Suite AI logo
AICase study2024–2025

Impact Suite AI

Multi-tenant AI platform for field sales teams. Built the web portals, backend services, and AI layer.

Full-stack owner — web portals, backend services, and AI layer

Next.jsSpring BootFastAPILangGraphPostgreSQLKafkaKubernetesAnthropic ClaudeGoogle GeminiTypeScriptJavaPython

Problem

Field sales reps planned their days manually. Managers needed an analyst to get any answers from field data. The platform also had to serve multiple clients with their data fully separated.

Solution

Built a cloud platform with a core business API, auth service, AI agent layer, and two web portals — one for operations and one for analytics. All services work together; each client's data stays isolated.

Architecture

  • Microservices architecture with each service owning a distinct concern: business logic, authentication, AI processing, and frontend.
  • Multi-tenant data isolation — each client's data is fully separated at the infrastructure level.
  • AI layer uses stateful agent graphs to connect structured business data to LLMs for reasoning, recommendations, and natural language queries.
  • Event-driven processing for async workflows — activities, scoring, and notifications handled without blocking the main request path.
  • Two web portals: an operations portal for admins and a conversational analytics portal for analysts.

Impact

  • Reps get AI-generated day briefings and automated end-of-day wrap-ups. Manual planning effort is gone.
  • Managers ask questions in plain English and get answers directly. No analyst in the loop.
  • One deployment serves multiple clients with no data crossover.
  • Field teams can capture orders by voice and submit shelf photos for analysis.

Challenges solved

  • Keeping service boundaries clean so the AI layer doesn't take on persistence concerns that belong to the business layer.
  • Getting multi-tenant isolation to work consistently across all services without building it per feature.
  • Serving web, mobile, and voice surfaces from a single API without breaking consistency.

Want this kind of ownership on your product?

I build features like these end-to-end.

Get in touch →