Real-time portfolio analytics platform
An investment management firm's legacy analytics dashboard could not keep up with the data volume and speed their analysts needed during market hours. We rebuilt it as a real-time streaming platform with responsive, near-instant queries.
Real-time
streaming dashboards
Custom
shareable views
Scales
under peak load
The Challenge
What Investment management firm was facing
The legacy dashboard was a monolithic application backed by stored procedures, and queries often timed out or took many seconds to return during peak market hours.
Analysts resorted to exporting data to Excel for ad-hoc analysis because the dashboard could not handle complex queries or custom time ranges reliably.
Performance degraded when many analysts needed access at the same time, so concurrent use during market open was a real constraint.
Deploying updates required a full maintenance window because the monolith had no separation between the API, UI, and data layers.
Our Approach
How we solved it
We decomposed the monolith into a React frontend backed by a Node.js API layer and a dedicated data service. Market data streams in via WebSocket connections, so dashboards update in real time without polling.
We replaced the stored-procedure-heavy database layer with TimescaleDB for time-series data and Redis for hot caches, taking query times from many seconds down to near-instant.
The frontend was built with a component library analysts use to compose custom dashboards, save layouts, and share views with colleagues - replacing the rigid, one-size-fits-all legacy UI.
We implemented a blue-green deployment pipeline so updates ship without maintenance windows, and the API layer scales horizontally to support many concurrent analysts.
Key Features
What we delivered
Real-Time Market Data Streaming
WebSocket-based data feeds push market updates to analyst dashboards in real time, eliminating the polling lag that made the old system feel slow.
Custom Dashboard Builder
Analysts compose their own dashboards from a library of widgets: charts, tables, watchlists, heat maps, and alert panels - saved and shareable across the team.
Fast Query Engine
TimescaleDB for time-series analytics and Redis caching deliver near-instant query results, even for complex multi-asset, multi-year analyses.
Horizontal Scaling
The API layer auto-scales to support many concurrent analysts during market open without performance degradation.
Automated Alerting
Analysts set threshold-based and pattern-based alerts on any metric. Notifications fire via in-app, email, and Slack when trigger conditions are met.
Audit and Compliance Logging
Every data access, export, and configuration change is logged for regulatory compliance with SOC 2 and internal audit requirements.
Our Process
How we got there
Legacy System Audit
We mapped every stored procedure, data source, and analyst workflow in the existing system to ensure nothing was lost in the rebuild.
Architecture Design
We designed the decoupled architecture: React frontend, Node.js API, TimescaleDB, Redis, and WebSocket streaming layer - validated with the engineering team before writing code.
Incremental Build
We built the platform in short sprints, delivering a working dashboard early and adding features iteratively based on analyst feedback.
Data Migration
We migrated years of historical market data into TimescaleDB with validation checks to ensure data integrity across every asset class and time granularity.
Parallel Run and Cutover
Both systems ran in parallel while analysts compared outputs, reported discrepancies, and validated the new platform before the legacy system was decommissioned.
Results
What the solution delivers
Real-Time Streaming Dashboards
Market data streams in over WebSockets, so analysts see live updates instead of waiting on a page refresh or a slow query.
Custom, Shareable Views
Analysts build and save their own dashboards from a widget library and share layouts across the team, replacing the rigid legacy UI.
Scales Under Market-Open Load
Horizontal scaling and caching keep the platform responsive when many analysts are querying at the same time.
Technology Stack
What we used
Frontend
Backend
Data Layer
Infrastructure
DevOps
Business Impact
The bigger picture
By moving from a slow monolith to a streaming platform, analysts get live data and custom views instead of exporting to Excel, and the firm can add analysts without hitting the old concurrency ceiling. Blue-green deployments mean the team can ship improvements continuously rather than waiting on maintenance windows.
What this project demonstrates
- Shows how we replace a fragile monolith with a decoupled, real-time streaming architecture.
- Demonstrates time-series data handling with TimescaleDB and Redis for responsive queries.
- Illustrates zero-maintenance-window releases via blue-green deployments.
Have a similar challenge?
Tell us what you're working on. We'll come back with a clear plan and honest technical guidance.



