80% less QA
Only new components tested, not full pages
95% CMS-driven
From fully hard-coded to system-managed
The Content System Behind Rockstar's Website
How Rockstar's content team went from rebuilding pages from scratch to shipping them in a fraction of the time, while preserving the craft.
My role
Lead designer on the content system. Defined the content entity model, ran the experiment that proved the concept, and drove the build across screen, production, and engineering teams.
Impact
Homepage production dropped from a full quarter to one month. New surfaces no longer required new assets or bespoke layouts, just different expressions of the same content.
Craft at all costs
Rockstar is known for craft. Every detail is deliberate: lighting in a cutscene, composition of a single frame. Early on, I watched a team spend an hour debating the crop of an image. It felt excessive until I realized those decisions compound into something players can feel. That unmistakable sense of quality comes from consistency of intent. I stopped seeing the scrutiny as waste and started asking a different question:
how do we preserve that level of craft across the website?
A detail most players never see it, but Rockstar modeled it correctly anyway.
The invisible work
As the website evolved alongside DLC releases, that consistency started to break down. For every update, multiple teams were involved: in-game, marketing, community, production, engineering. Communication ran through PMs. But color nuances, layout behavior, and technical decisions don't survive a game of telephone.

This showed up in constant feedback like:
"This character gets cropped on tablet." "That vehicle needs to be centered on mobile." "Can we shift this left only at this breakpoint?"
At Rockstar, those aren’t cosmetic issues. Cropping a character changes the meaning of the image. Composition is part of the storytelling.




On the left, Lucia's gun is cut off, centering Jason and making her feel secondary
Each asset went through 6–8 rounds of feedback. From the outside, it looked like slow execution. In reality, it was creatives repeatedly re-explaining intent that the system had no way to preserve.
no one was actually seeing the same thing.
Static tools
Responsive outputs
Each team had a clear view of their piece, but no shared way to understand how an asset would behave once it left their hands.
EXPERIMENT
Meeting people where they are
Instead of introducing a new tool, I started small. I translated responsive behavior into the format creatives already used, to see if it would land.
Designers could could edit drop assets and immediately watch how it changed across breakpoints in real time.
Feedback dropped from 6–8 rounds to 1–2 rounds. Creatives could see outcomes directly instead of interpreting specs. The ambiguity disappeared.
Before
Creation
Hand off
Decision
After
Creation + Preview + Decision
Hand off
4–6×
Reduction in feedback cycles per asset
We weren’t missing process. Creatives don’t need more documentation. We were missing a shared visual language that could carry intent across tools and teams.
Building for intent
If an image carries intent, the system needs to understand what must be preserved in each context. The web treated these as separate files, rather than a single content entity with intentional expressions. I designed the system around the entity. One content object holds all its expressions. The system serves the right variant for the right context: breakpoint, aspect ratio, or device orientation.

16:9, 3:1, 1:1, and 3:4 variants are all expressions of one entity.
The system formalized the work art and production teams were already doing manually, turning ad hoc asset management into structured, intent-driven content.
Try it by clicking expressions
Beyond breakpoints
The model extends beyond breakpoints. Take a single GTA Online event. The underlying content stays constant: rewards, drops, discounts, challenges. On Newswire, it appears as a 16:9 editorial image, composed for narrative. In the event stack, the same content resolves into a tight 1:1 for collapsed cards.
Blog format
Card deck with same content
Different surfaces. Same entity. Product context becomes a selection problem, not a redesign exercise.
Acknowledgement This wouldn't have come together without a few people. Jennifer Kim coordinated across departments and kept the project on solid ground throughout. Jack Koloskus helped me think more clearly about data models than I would have on my own. Sam Yu and James Zdaniewski gave feedback that shaped where the work landed.