Skip to main content
Choose your view:

Dynamic CV

2024-01-01
automationdata

Dynamic CV

Personal Project - This Website

Problem

Traditional CVs and portfolios present the same content to every viewer. But a hiring manager cares about impact and leadership, an engineer wants technical depth, and a researcher looks for methodology. How do you serve all audiences without creating separate portfolios?

Solution

A dynamic portfolio that adapts its presentation based on the viewer's perspective:

  • Persona-based navigation: Select your role (Hiring Manager, Engineer, Researcher, Recruiter) to see content prioritized for your interests
  • Adaptive highlights: Experience entries surface different bullet points based on selected persona
  • Smart project ordering: Projects relevant to your perspective appear first
  • Pillar pages: Deep dives into core competency areas (Systems, Robotics, Data)

Architecture

Changelog

v1.0 - Foundation

  • Next.js 15 with App Router
  • MDX content management
  • Responsive design with Tailwind CSS

v1.1 - Persona System

  • Five persona types with distinct content prioritization
  • Persistent persona selection (localStorage)
  • Animated transitions between persona views

v1.2 - Pillar Pages

  • Interactive visualizations (radar charts, Mermaid diagrams)
  • Systems & Hardware, Robotics, Data & Automation deep dives
  • Failure case narratives for credibility

v1.3 - Case Studies (Current)

  • Project detail pages with full context
  • Cross-linking between projects and experiences
  • Related content suggestions

Next: Artifacts & Metrics

  • Visual artifacts (screenshots, diagrams, demos)
  • Quantitative impact metrics
  • Notes/blog section

Technologies

Next.js 15, TypeScript, Tailwind CSS, MDX, Framer Motion, Recharts, Mermaid

Key Decisions

  • MDX over CMS: Content lives in the repo for version control and developer experience
  • Static generation: Fast loads, no backend infrastructure needed
  • Persona in context: React Context for global state without prop drilling
  • Graceful degradation: Site works fully without persona selection (defaults to General)