Building interfaces and shared foundations at PartySlate.

At PartySlate, I built ways for people to find event inspiration, explore venues and get their businesses onto the platform. I also led the design-system work that helped us build more consistently.

My work connected frontend engineering, interaction design and collaboration across the team. It was a challenging period, with opportunities to grow as an engineer, mentor and design-system lead.

People behind the work LinkedIn profiles

Engineering guidance

Visual design

  • Mark SemonVisual Designer · button design collaboration

Design system

Frontend engineering

Read Tyler’s recommendation

Starting with the buttons

One of the problems I had been hired to address was consistency across the interface. Shortly after Idea Gallery, I carried out a comprehensive button audit. There were dramatic differences in how buttons were used and styled: borders, backgrounds, fonts, sizes, icons, icon placement and hover states.

I led the audit and implemented the shared button component. Ben helped me find my way around the codebase when I needed guidance. Mark Semon, our visual designer, and I worked together to establish a consistent button interface.

That work also meant improving how design and engineering communicated. Mark was working in Photoshop, and I encouraged him to adopt Zeplin. He was willing to learn new ways of working, including using a symbol library to produce more consistent buttons. We had challenges along the way, but we were able to work through problems that had been holding collaboration back.

The result was something I could point other engineers to and they could use. I remember feedback from Lucas Brandt, an apprentice engineer at the time, that the component was a joy to use. We had more consistent buttons and a shared starting point for the people building the product.

Later, similar audits became useful work to delegate to junior engineers. They could learn their way around the codebase while contributing to the consistency of the interface.

Button variants and states alongside Storybook color tokens.
A later view of PartySlate’s design system: button variants and states alongside Storybook color tokens. From the Product Day presentation preserved in the September 2023 archive. Full image (opens in a new tab)

Connecting venue search to the map

Find a Venue took the client-side patterns further. The existing experience used defined search zones. We wanted to add a map view alongside that approach and give people another way to explore the listings.

I owned the entire frontend implementation and the data contracts it needed. That included adapting the existing URL-based API design so the frontend could fetch data as people interacted with the page.

People could drag the map to explore an area. Hovering over a listing highlighted its corresponding map pin and tooltip, and the map tooltips offered quick actions. The results and the map worked together, giving visitors a different way to navigate venues while retaining the existing search-zone approach.

We saw a substantial increase in engagement and in people contacting venues through Find a Venue. Contacting a venue was considered the highest-value action someone could take on the site. It was rewarding to see the engineering work contribute to that outcome.

Early development prototype of PartySlate’s Find a Venue map and filters, with an unfinished results area.
Early development prototype of Find a Venue’s map and filters. Work in progress, with an unfinished results area—not the finished interface. Full image (opens in a new tab)

Helping event professionals get started

For event professionals, getting started on PartySlate could mean creating a new company profile, claiming one that already existed, or joining a company with an existing account. Those paths had developed separately, with different behavior for venues and other event businesses. The registration and onboarding work in early 2023 aimed to make that first experience easier to follow.

The goal went beyond creating an account. A professional needed a path toward a useful company profile, with contact information, images and details about their work. The designs broke that journey into smaller steps, with visible progress, clear actions and layouts for both desktop and mobile. They also accounted for the less tidy moments: missing information, invalid entries, choosing a photo and deciding to finish a step later.

The engineering plan treated these journeys as related flows built from reusable pieces. It called for shared form-validation and upload patterns, explicit navigation between steps, and saving information to the server before advancing where possible. Another priority was making individual steps easy to reach and test, so the team could develop the underlying flow before every screen was finished.

I led and implemented the main flow, then delegated other flows to Katy Cooney and Lucas Brandt. The work gave us a way to divide implementation across engineers while working toward a consistent experience for the professionals getting started on PartySlate.

The flows shipped, but I don’t recall their impact. In my experience, and to PartySlate's detriment, we rarely came back to evaluate the success of these initiatives.

Company-profile application design with fields for an event business.
Company-profile application design, Q1 2023. Full image (opens in a new tab)
An onboarding step for entering event details.
An event-details step in the onboarding design, Q1 2023. Full image (opens in a new tab)
Mobile onboarding designs showing form validation states.
Mobile validation states in the onboarding design, Q1 2023. Full image (opens in a new tab)

Giving the design system a way to grow

I was PartySlate’s design-system lead throughout my time there. It was one of the priorities discussed when I joined, and the work continued across changes in our team and frontend architecture. Alongside building components, I worked on how design, product and engineering would maintain them together.

That progress was uneven. In my 2020 self-review, I described releasing Storybook and establishing a production path for our design-system work as goals we had not yet reached. By 2023, Soirée gave that work a concrete implementation and a renewed focus on the process around it.

I led the definition of a component-development process that made the decisions explicit. When a new design need emerged, the team would consider whether an existing component could meet it. Design would explain the opportunity, engineering would assess the work involved, and product would decide whether to invest. The process connected reusable components documented in Storybook with corresponding symbols in the Figma library.

I also led the framework evaluation and the Chakra/Soirée work. The evaluation considered maturity, customization, community support and integration with design tools. We selected Chakra UI as a foundation for Soirée, PartySlate’s design system.

We built a fully custom Soirée theme through Chakra’s theme object, with a Rollup build system that integrated it into both our Next.js application and the legacy frontend. That let us bring the same theme into newer and existing parts of the site.

I wanted us to stop negotiating the same interface details at every handoff. Shared components and a common design language gave us something to build on together. Keeping that useful required continued investment from design, engineering and product.

Component-development process connecting design, engineering and product decisions.
Component-development process shown in the Product Day material preserved in the September 2023 archive. The diagram describes the proposed collaboration between design, engineering and product. Full image (opens in a new tab)

Tyler and I worked together for roughly a year and a half. In 2021, here’s what he had to say about working with me.

In my experience, it's exceedingly rare to find an engineer who places the end user's needs at the core of what they build. When you work with Rob, you get not only a fantastic engineer, but also a user-centric thinker capable of viewing his own work in the broader context of the product. Rob is one of the best engineers I've worked with, period. He takes pride in his craft and cares deeply about delivering high-quality work, evident in the code he ships. However, what I valued most in Rob was that he was very collaborative. He cared about the process and always sought to have strong and open feedback loops between development, design and product. Rob was a pleasure to work with and I hope to have the opportunity to do so again in the future. I would recommend Rob to anyone looking to elevate their front-end team.

Tyler TravitzTeammate · LinkedIn recommendation ·

Helping other engineers find their footing

Alongside feature work, I spent substantial time helping other engineers develop. I paired with junior and apprentice engineers, hosted technical lunch-and-learns, and created documentation to help people understand our codebase and conventions. Making it comfortable to ask questions was an important part of that work.

As the frontend changed, there was a lot to learn together. My teaching materials covered React Context, GraphQL and the structure of our shared code. I wanted engineers to have working examples they could refer to and someone they could work through a problem with.

In 2022, I created a style-guide repository and drafted technical documentation to support hiring and onboarding. I also continued supporting colleagues as they took on larger initiatives. That meant making room for questions about the work and helping people communicate what they needed to move forward.

Learning what it takes to sustain the work

PartySlate gave me opportunities to build substantial features and help other engineers grow. It also taught me how difficult that work becomes when responsibilities, priorities and support are unclear.

An earlier effort to move the marketplace to server-side rendering was shelved in 2022. It competed with feature delivery and did not have the dedicated planning and support I felt it needed. That experience stayed with me: a large technical initiative needs realistic scope, shared ownership and room in the team’s priorities.

I also learned that supporting everyone else could come at the expense of supporting myself. Being committed to the work meant learning to communicate my own needs, make limits visible and protect a sustainable balance. Those lessons were hard-earned, and they remain part of how I think about working with a team.

Let’s talk.

If you see an opportunity for us to work together, I’d love to hear from you. That could be a role, a project, or simply getting to know each other and seeing where it goes.