Skip to content
Vijay Work Resume Blog Contact

Project case study

Portfolio website

Personal website rebuilt into a portfolio, resume, and blog system.

Brought projects, experience, resume, and blog content together in one place.

React Next.js MongoDB Tailwind Prisma

Context

The problem

The website needed to move beyond a simple portfolio and become a durable public source for projects, resume variants, technical writing, and future private tooling.

The site started as a Next.js portfolio and now runs as an Astro/Vercel app with structured content, resume variants, public project pages, and private admin tooling.

System trace

How the work moved through the system

A high-level operating path: where the request starts, how the system shapes it, and how other teams consume the result.

  1. 1

    Astro serves public pages and API endpoints with a Vercel deployment target.

  2. 2

    Structured portfolio content flows through a bundled snapshot, optional Astro DB, and optional GitHub backup.

  3. 3

    React islands are used only where interaction is useful, such as homepage motion and admin tooling.

Public surfaces

4 core routes

Home, projects, resume, and blog form the main public reading path.

Primary site

Same-domain

Portfolio, resume, blog index, and local blog detail routes are designed to keep the public story on vijayjangir.com.

Architecture

System shape

3
  1. 1 Astro serves public pages and API endpoints with a Vercel deployment target.
  2. 2 Structured portfolio content flows through a bundled snapshot, optional Astro DB, and optional GitHub backup.
  3. 3 React islands are used only where interaction is useful, such as homepage motion and admin tooling.

Ownership

What I handled

3
  1. 1 Migrated the active application direction from Next.js to Astro.
  2. 2 Built deterministic focus-based resume views and PDF generation.
  3. 3 Added sitemap, robots, metadata, JSON-LD, and llms.txt so people and crawlers can understand the site.

Lessons

What carried forward

2
  1. 1 A personal site should prove the work quickly, not just list technologies.
  2. 2 The content model needs to be as intentional as the UI because the site is mostly structured content.

Engineering decisions

Static-first public experience

The public site avoids making AI or paid services a dependency for normal browsing.

Keep Wix as authoring source for now

The blog integration keeps the existing authoring path while moving discovery toward the primary domain.

What can be shown

Public evidence without internal names

The internal systems stay private. This section keeps the public parts: my role, system boundaries, technology context, scale, decisions, constraints, and what I learned.

Public repo Article High-level architecture

Public route coverage

Portfolio + resume + blog

The repository and deployed site show the public content model and user-facing surfaces.

Architecture shape

  • Astro serves static-first public pages and server endpoints.
  • Structured portfolio content can come from bundled content, Astro DB, or backup publishing flows.
  • React islands are reserved for interactive surfaces such as admin tooling and homepage motion.

Responsibilities

  • Designed the content model, public routes, admin flows, and deployment shape.
  • Built structured project pages, resume variants, and the blog section.
  • Separated public content from private credentials and admin-only operations.

Constraints

  • Credentials, unpublished drafts, and admin-only configuration stay out of public pages.
  • This project can link to the repository because it is intentionally public.

Supporting context

Public repo

GitHub repository

Public repository provides inspectable implementation context for the portfolio system.

Article

Public site content model

The site itself demonstrates the structured project, resume, and blog model.

Related case studies

Continue through related work or return to the full project index.

Related projects

Continue in the same area

Project index

Agentic development

Governed conversational data platform

I architected and built a governed conversational data and visualization agent: it retrieves business knowledge, answers business questions, runs governed queries from that context, reasons over results, and builds charts without making the LLM the data boundary.

Backend engineering

Hive metastore synchronization and metadata governance

Designed and built services that keep Hive metadata consistent across independent environments using real-time listener sync, daily reconciliation, expiry cleanup, one-time interval jobs, observability, and deployment hardening.

Backend engineering

Ranger RBAC and policy-governance extensions

Extended enterprise data access governance around Apache Ranger-based RBAC, an external attribute store, DataHub tag-driven policies, row-level security, masking, Trino integration, audit clarity, and local/containerized development paths.