Resume-Driven Personal Website

Shipping a Vibe-Coded Resume Website (and This Blog Post)

This weekend I’ve been working on something that feels both small and deeply motivating: a vibe-coded personal website powered by a resume repo I’ve been maintaining, on and off, since 2019.

At a high level, the project takes that resume repository and publishes it as a website. But the part that really excites me isn’t just the output—it’s what this unlocks for how I keep working on software after spending so many years in management.

Treating my resume like software (again)

My resume lives as a LaTeX project in a private GitHub repo. It already generates a PDF, but now it’s become something more alive.

With tools like Cursor AI, I can sit down and edit my resume conversationally. I influence the LaTeX source through an agent, regenerate the PDF, iterate until it feels right, and then push the changes upstream. It’s fast, expressive, and—honestly—fun in a way resume editing never used to be.

That repo is still private, but it’s now the single source of truth.

The website: built from the resume itself

The personal website I’ve been building is designed to connect directly to that private resume repo at build time. The site’s content is generated from the resume itself, which means:

  • The website stays in sync with my actual experience
  • I don’t have to duplicate content across formats
  • Updates flow naturally from “resume edit” → “site update”

The site also includes:

  • A full, readable version of the resume
  • A direct download link to the rendered PDF

One set of data, multiple outputs, zero drift.

Today’s feature: blogging (hello, world)

Today I finished adding a new feature: the ability to post blog entries—like this one.

And yes, there’s a bit of delightful recursion here.

I wrote the raw thoughts for this post, dropped them into a ChatGPT prompt, and used the output as the body of the post you’re reading right now.

When I hit publish:

  • The admin tool asks ChatGPT to generate a slug
  • It creates a summary
  • It assigns tags

All automatically.

What’s next

There’s more I want to layer in, but I’m intentionally shipping this in small, satisfying increments. One upcoming feature I’m excited about is:

  • A tag word cloud
  • Filtering blog posts by tag

Nothing revolutionary—but useful, expressive, and very me.

Why this matters to me

This project isn’t about building the perfect personal website. It’s about rebuilding a hands-on relationship with software: shaping tools that reflect how I think, how I work, and how I want to keep creating.

After years of managing, this feels like coming back to the keyboard—but with better tools, better taste, and a lot more leverage.

And now, I have a place to write about it.

resume-as-codepersonal-websitebloggingdevtoolsautomation