all projects

// FULL-STACK

FutureVest

Stock analysis platform — CSSE6400

ReactTypeScriptFlaskPythonPostgreSQLAWSDocker

Overview

Built for UQ's CSSE6400 (Software Architecture). The brief: design a system that could scale to thousands of users without rewriting the core. We landed on a microservices architecture with containerised services on AWS ECS Fargate.

What it does

  • Stock search & screening across thousands of U.S. equities
  • Watchlists with price alerts — pushed via Lambda + SNS
  • Technical analysis — charts with indicators, generated server-side and cached
  • Valuation tools — DCF and multiples-based valuations

Architecture highlights

  • Each domain (search, alerts, valuations, charts) is a separate service with its own database
  • Inter-service communication via API gateway, no shared schema
  • PostgreSQL per service; data sync via event-driven updates
  • Frontend in React + TypeScript, talks only to the gateway

What I'd do differently

The "microservice per domain" choice was right for the assignment grade but overkill for the actual scale. A modular monolith would have shipped faster with the same domain boundaries.

// SCREENSHOTS

FutureVest screenshot
FutureVest screenshot