Case Study 01 / Distributed Product System

Smart Task Manager

A production-style task platform that connects a web control surface with AI suggestions, saved places, active-browser location checks, and Telegram-first reminder actions.

70%Lower recommendation latency using TF-IDF and Redis caching
3 servicesNext.js client, ASP.NET Core API, and Python recommendation service
CI/CDValidation and deployment orchestration across the complete stack

01 / Context

Task CRUD was the starting point, not the engineering goal.

The project explores what happens when a familiar productivity workflow crosses authentication, persistence, caching, recommendations, maps, location limits, messaging providers, and free-tier deployment constraints.

Product model

The web app remains the control surface for organizing tasks and saved places. Messaging becomes the quick-action surface for listing, completing, deleting, or snoozing tasks.

My ownership

I designed and built the full-stack architecture, including frontend workflows, API orchestration, persistence, caching, recommendation service, reminder decisioning, provider integrations, and CI/CD.

02 / Architecture

Clear ownership boundaries keep optional intelligence from breaking core workflows.

The .NET API owns identity and task state. The frontend never talks directly to persistence or ML infrastructure, and recommendation failures degrade to safe empty responses.

Next.jsAuthenticated task UX, saved places, map selection, and optimistic updates
ASP.NET CoreJWT, business rules, reminder context, provider dispatch, and service orchestration
MongoDB + RedisDurable task state with cached recommendation responses and snooze context
FastAPI + TelegramTF-IDF suggestions and chat commands for completion or deferral
Next.jsTypeScriptASP.NET CoreC#MongoDBRedisFastAPIScikit-learnLeafletTelegram Bot API

03 / Decisions

Reliability was prioritized over impressive but fragile claims.

The deployed system makes its constraints explicit and keeps the main task workflow usable when secondary dependencies are slow or unavailable.

Location and reminders

  • Location checks run while the browser dashboard is open and visible rather than claiming native background geofencing.
  • Nearby tasks linked to the same saved place are grouped into one reminder.
  • Temporary reminder context ensures chat replies act on the correct task group.

Recommendation service

  • TF-IDF replaced transformer inference in production to reduce startup and memory pressure.
  • Redis limits repeated computation and improves response consistency.
  • Retries are scoped to the recommender instead of being applied indiscriminately.

04 / Result

A complete workflow across product and service boundaries.

A user can authenticate, save a place, attach tasks, report active-browser location, receive a grouped Telegram reminder, and complete or snooze the correct tasks without exposing service boundaries in the experience.

Next case study

Poker AI

View Case Study