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.
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.
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.