Vijay Kumar 👋

A Polyglot Software Developer 💻 with 4+ years of experience, specializing in Event-Driven Architectures, Microservices, Distributed Systems, and building secure and scalable Cloud-Native Solutions.

Project Type:

Personal Finance Tool

Core Technologies:

Next.js, MongoDB, REST APIs

Live Demo ↗

Technical Overview

Built to help users compare credit card offers from different banks. The system pulls data from public APIs and manual entries, then applies custom filtering logic to match cards with user profiles.

Data Flow: Python scripts collect offer details weekly → Node.js transforms data into unified format → MongoDB stores normalized offers → React frontend with dynamic filters.

Key Feature: The "Lifestyle Match" algorithm weights offers based on spending habits and redemption preferences. Not machine learning, just good old weighted averages.

Technical Challenges

Data Consistency
  • Problem: Banks format their offers differently - some have JSON APIs, others only PDF brochures
  • Solution: Created a Chrome extension for manual data entry that auto-fills common fields, cutting input time by 60%
Filter Performance
  • Problem: Complex filters slowed the interface with 500+ cards
  • Solution: Implemented debounced filtering and Web Workers for calculations, reducing UI freeze by 80%

Lessons Learned

  • • Next.js API routes are great for small projects but need careful structure as they grow
  • • MongoDB's flexible schema helps when dealing with inconsistent data sources
  • • Client-side filtering requires careful memory management

Future Ideas

  • • Add historical offer tracking
  • • Browser extension for price comparison
  • • Partner with cashback websites for better offers
banner-shape-1
banner-shape-1
object-3d-1
object-3d-2