RH-01 · pre-flighttap to skip
Stooky
Juugo
JamJam

Descent in progress

35,786 km

landing at sector 01 · origin

● In orbit @ StuvioRH-01 · Backend-heavy Product Engineer

REENAVHEMARIA

I design the data model, the request path, and what the system does when half its dependencies go dark.

Download resume
Scroll to descendSwipe to spin

Launched from the frontend,  settled in the backend. 

I started in frontend, grew into full-stack product work, and now spend most of my time underneath the product: schemas, event buses, caches, search infrastructure, deployment, and the operator tools that keep it all observable.

The title on my badge says full stack. Most of my days go into owning the data model, the request path, asynchronous processing, and how the system behaves under fan-out or a partial dependency failure. The frontend years still show: I build operator tools and clients people actually use.

01 · owns

Data model

Schemas, constraints and migrations that keep the product honest.

02 · owns

Request path

What runs synchronously, what gets cached, what can wait.

03 · owns

Async processing

Event buses, consumers, batching, offsets and replay.

04 · owns

Failure behavior

How the system holds up under fan-out or a dependency outage.

FEFSBE
  1. Inner orbit2019 — 2023

    Frontend

    College builds, a frontend internship and agency web work. Interfaces first.

    ReactNext.jsTypeScriptTailwind CSSshadcn/uiViteFirebase
  2. Middle orbit2023 — 2025

    Full-stack product

    Led end-to-end SaaS builds at Code Rustlers: storage, AI email, CMS and chat products.

    ExpressDjangoPrismaMongoDBtRPCTanStack QueryZustandElectron
  3. Outer orbit2025 → now

    Backend systems

    Event-driven architecture, retrieval infrastructure and data modeling at Stuvio.

    NestJSPostgreSQLPgBouncerRedisKafkaCassandraWeaviateDocker

Flight log,  newest burn first. 

Each stop raised the orbit: from interfaces, to whole products, to the systems underneath them.

  1. Aug 2025 — Present

    Full Stack Developer

    Stuvio · Full-time · backend-heavy

    Building production systems across six products: Brello, JamJam, Juugo, Senwitt, Taara and Stooky. The title says full stack; the work is mostly underneath the product.

    • Designed Stooky's event bus, cache and data responsibilities, and runtime architecture, then built product features on top of it and led the operator dashboard.
    • Designed and repeatedly rebuilt Juugo's retrieval system, taking it from scrape-on-query to Weaviate with a separately deployed query-understanding service.
    • Designed JamJam's data model and built the API around it.
    • Stood up Taara's API and deployment foundation, led the Senwitt NestJS API, and led the Brello Expo client.
    NestJSPostgreSQLRedisKafkaWeaviateDocker
  2. Jan 2025 — Aug 2025

    Full-stack Developer

    Code Rustlers · Promoted

    Took SaaS products from first commit to delivery, owning both ends of the stack.

    • Led end-to-end development of 3+ SaaS products.
    • That work contributed to 30% higher client satisfaction, 25% faster delivery, 20% fewer support queries and 15% improved uptime.
    Next.jsTypeScriptPrismaTanStack QueryGoogle APIs
  3. Aug 2023 — Dec 2024

    Web Developer

    Code Rustlers · First full-time role

    Shipped client and in-house products: FlexiBuckets, Crispy Mail, Bytereels, Chatboat and Vandana Fabrics.

    • Built teams support and a Docker node loader for FlexiBuckets; the work was merged upstream.
    • Built a CMS-powered fabric showcase that increased signups by 30% in its first month.
    Next.jsReactTailwind CSSshadcn/uiZustand
  4. Jun 2023

    Frontend Developer Intern

    The Devisers · One month

    First professional launch: shipping frontend code in a working team.

    ReactJavaScriptCSS
  5. 2019 — 2023

    B.E., Information Technology

    St. John College of Engineering · CGPI 8.34

    Where it started: React, Firebase, Flask, Solidity and a published paper.

Three systems,  flown in production. 

The strongest evidence of how I work: an event-driven runtime, a search architecture rebuilt in five stages, and a data model built before the API. The first one is live below; break it on purpose.

MISSION 01Social product · event-driven backendstooky.space ↗

Stooky 

My strongest system-design work. I designed the runtime shape of the system (which store owns what, how events flow, and what still works when a piece fails), then built product features on top of it.

live sim · stooky runtime

ClientappNginxedgeAPINestJSRedisoverlayPgBouncertxn poolPostgreSQLsource of truthKafkaengage | exposurecounterconsumernotifierconsumerKafka ConnectsinkFCM · in-apprealtimeCassandra→ Sparkreconcilejob

swipe ⇆

Architecture decisions

  1. AD-01

    PostgreSQL is the source of truth

    Connections go through PgBouncer with transaction pooling.

  2. AD-02

    Redis is an overlay, not an authority

    It holds the profile cache, feed and Explore snapshots, suspension state and hot counters. A Redis miss or outage never fails a write that has already committed.

  3. AD-03

    Kafka is the behavior bus

    Likes, impressions, watches, follows, searches and session events are emitted asynchronously, so the API never waits on the broker.

  4. AD-04

    Exposure is separated from engagement

    Impressions, watches, skips and hides are much hotter traffic, so they get their own lag budget.

  5. AD-05

    Effectively-once counters

    The counter consumer aggregates batches and stores its watermark in the same PostgreSQL transaction as the counter update, so a replay after a crash doesn't double-count.

  6. AD-06

    Compensate after commit

    Redis is patched after the database commits, with overlay TTLs as the backstop.

  7. AD-07

    Kafka down ≠ API down

    The API keeps serving. Counters may go stale until a reconciliation job repairs them.

Process roles

api
realtime
worker
video
counter
notifier

Staging and production run on a VPS with Docker and Nginx.

Operator dashboard · led

Led the Next.js operator dashboard: live VPS and database health over a socket, broadcast controls, a Content Security Policy, and an Authelia-protected login.

Built on top

  • Ranked feed hydrated from snapshots and rank stats, with a caught-up state and recycled posts
  • Redis-backed user suspension, plus privacy rules for seeded engagement on private accounts
  • FCM push for comments, mentions, DMs and sign-in security alerts
  • Broadcast campaigns with banner images and a live campaign socket
  • Apple sign-in redirect into the app
  • Cloudflare R2 for media
  • PostgreSQL backup and restore
  • Platform kill switches for voice and video

Stack

NestJSPrismaPostgreSQLPgBouncerRedisKafkaKafka ConnectCassandraSparkFCMAutheliaCloudflare R2DockerNext.jsNginx
MISSION 02Commerce search & retrieval

Juugo 

I owned the retrieval system and replaced it several times as quality and workload needs changed. What matters here is the sequence of rebuilds and the decision to drop an approach once it stopped working.

Stage 1 of 5

Scrape on query

The first version fetched products when a search came in. It was simple and proved the product idea.

NestJSScrapers

JettisonedLive fetching couldn't support ranking, filtering or consistent quality.

query understanding · illustrative
“▍”
  • occasion: sangeetoccasion parser
  • gender: womeninferred from “sister”
  • style: elegantstyle-phrase whitelist
  • exclude: shiny / metallicexclusion filter
  • context: previous turnsconversation history

Instrumentation

Also built the benchmarking around it: an internal UI with message logs and a backend-environment toggle, a separate benchmark database, results stored as product IDs, and timings split into embedding, database, ranking and end-to-end latency.

Embedding alignment

In a related semantic-search service, migrated Gemini embedding output from 1536 to 768 dimensions to match the pgvector schema. That kept the embedding service and the vector storage in sync.

Stack

NestJSPrismaPostgreSQLWeaviatePlaywrightPythonGeminiGroqDocker
MISSION 03Community platform · data-model design

JamJam 

My strongest schema-design work. I designed the data model first and built the API around it. Every star in this chart is an entity, and every line is a relation.

PostgreSQLRedisCassandra

entity · PostgreSQL

User

  • Hashed sensitive fields
  • Masked read model
  • KYC status
  • OTP email verification
  • Encrypted phone numbers

relates to → Session, Membership, Post, Draft, Vote, Reaction, Notification, Ban

Patterns

  • Reusable pagination as one consistent pattern across services, not reimplemented per endpoint
  • Production seeding, plus a clean Prisma migration history once the model stabilized
  • Started with BullMQ + Redis for aggregation; later designs moved high-volume accumulation and fan-out toward Kafka

Stack

NestJSPrismaPostgreSQLRedisCassandraReact Native (client slice)

Supporting craft,  each with a clear owner. 

Three more Stuvio products. The ownership on each is stated exactly: what I led, what I stood up, and which slice I contributed.

SAT-04 · Astrology product API

Taara

Stood up the API & deployment

  • NestJS, Prisma, Docker and VPS setup from scratch
  • Birth profiles with nested birth-place data and a real foreign key
  • Daily Aaj and Panchang responses cached in Redis and PostgreSQL, invalidated when a profile changes
  • Chat history with summarized conversation context
  • RevenueCat billing with a virtual currency, plus Google and Apple sign-in
NestJSPrismaPostgreSQLRedisDockerRevenueCat

SAT-05 · Learning / gamification backend

Senwitt

Led the NestJS API · built a slice of the Expo app

  • Soft-deleted users, partial unique indexes and obfuscated fields
  • Google and Apple token checks; OTP reset with Redis rate limits
  • Guest stats merged into authenticated accounts
  • Quests, achievements, streaks, friends, invite codes, season badges, a cohort leaderboard, and lazy energy regeneration
  • Replaced a separate profile table with a subscription model, and a generic session table with exercise sessions
  • My part of the shared Expo app: session experience, domain scores, share cards, journey sync, Clarity telemetry and an iOS lockdown crash patch
NestJSPrismaPostgreSQLRedisExpo

SAT-06 · AI chat experience

Brello

Led the Expo client · built the web chat surface

  • Expo client: auth, streaming transcript, Markdown, image search, PDF export, themes, and finance and weather dashboards
  • The hard part: keeping scroll and keyboard behavior right while a response is still streaming in
  • Web (Next.js): Mermaid diagrams, YouTube embeds, image captions, abort/regenerate, and history that survives a refresh
  • Mobile textarea behavior and auth middleware
Next.jsExpoStreaming Markdown

The pre-flight checklist  I run on every system. 

Principles pulled from the work above. Each one is checked off as you scroll past; open any of them for the reasoning.

Older light,  still worth seeing. 

Agency SaaS builds, college projects and side quests from before the backend years. Most of the frontend instincts come from here.

Also in the archive: Pest Solutions site, Tailcall website sections, a weather client, Pokedex, a candle-pattern chatbot, an image-expansion UI with a Python API, Hinglish subtitles, a video highlighter and more.

The toolkit,  mapped to missions. 

Brighter stars have shipped in the projects above. Pick one to see which missions it flew on.

Data09 stars
hover or tap a star to see where it flew
Distributed05 stars
hover or tap a star to see where it flew
Backend08 stars
hover or tap a star to see where it flew
Search & AI06 stars
hover or tap a star to see where it flew
Infra07 stars
hover or tap a star to see where it flew
Frontend09 stars
hover or tap a star to see where it flew

Where the  countdown started. 

Published · Springer · 2023

“Blockchain Crowdfunding: A new Era in Democratizing Investment Opportunities”

Research that grew out of Digicrowd, a decentralized crowdfunding platform on Ethereum built with Solidity, Thirdweb and IPFS.

Education · 2019 — 2023

B.E., Information Technology

St. John College of Engineering and Management, Palghar

8.34CGPI

Logbook

  • 2022Smart India HackathonTeam of six; placed 10th within the college.
  • 2021Quiz competitionSecond rank.
  • —IT Student AssociationHelped organize events, including the technical side of a national-level college fest.
  • —Code Treasure HuntWrote the clues in three programming languages.

Certifications

  • ✓ReactJS with Firebase · LearnCodeOnline
  • ✓MongoDB with NodeJS · Verzeo
  • ✓Getting Started with Python

Sector 09 // Transmit

Open a 
channel. 

Backend-heavy product work, system design, or something that needs a data model before it needs a UI: the signal is open.