
RMA Quoting Platform — Distributed Architecture for Rule-Driven Quote Generation
Problem
RMA’s quoting workflow lived inside spreadsheets distributed across admins and broker agencies. No consistency, no authority over rules, and no scalability. As product variations and broker networks grew, the lack of a centralized system made quoting slow, error-prone, and impossible to audit.
Solution Overview
I designed a distributed, service-oriented quoting platform deployed on Azure that supports web and tablet clients. The system centralizes product rules, mort tables, range tables, and scheme settings, and exposes a reliable API-driven quoting engine for brokers and internal teams.
Architecture Snapshot (Technical, Lean)
Layered System Design
The platform uses a five-layer architecture to ensure clean separation of concerns:
Core Framework: logging, schedulers, REST host, DB abstractions.
DB Layer: unified access for SQL/NoSQL with future-proofing for analytics migration.
Service Mesh: API gateway, router, optional Azure Queue for async workloads, isolated microservices.
Application Framework: permissions, caching, device config.
Application Layer: Flutter mobile app + web SPA.
This structure allowed independent development, testing, and deployments without cross-service impact.
Microservices Mesh
Each logical domain was decomposed into its own service:
Identity Provider — OAuth2, AD/password auth, role-based API permissions.
Configuration Service — product master, scheme settings, range tables, mortality categories.
Profile Service — user hierarchy, broker firms, permissions.
Quote Service — deterministic quote engine executing business rules.
Analytics Service — usage and performance dashboards.
Notification Service — email + in-app events for brokers.
Services are stateless and horizontally scalable. A failure in Configuration or Notification never blocks Quote Service execution.
Gateway & Routing Layer
Single REST entry point for all clients.
Validates tokens and origin, maps to the correct service.
Hides internal topology, allowing services to scale independently.
Optional Azure Queue Storage used to offload heavy compute if quoting logic becomes more complex.
Quoting Engine
The quote engine fetches product settings, ranges, scheme configs, and mortality rules from Configuration Service, applies rule logic in isolated compute modules, and returns a structured quote object consumable by UI, PDF, or notifications.
This abstraction lets RMA update business logic without altering client apps.
User & Broker Model
The identity layer models the RMA hierarchy:
Admins → Managers → Broker Admins → Sub Brokers
Authorization is fully API-driven, not UI enforced, ensuring auditability and consistent access control.
Performance & Security Measures
Atomic CRUD endpoints, batch APIs for bulk queries.
Non-blocking calls to reduce perceived latency.
Token caching to prevent repeated auth round-trips.
Trace IDs for multi-service debugging.
Transport-level security + strict token validation at gateway.
Outcome
The new architecture replaced spreadsheets with a centralized, rule-driven quoting system that scales across broker networks. RMA can now control every aspect of product configuration, generate quotes consistently, and extend the platform without rewrites.
Join newsletter
Stay up to date with new case studies. We promise no spam, just good content
Check other studies



