I'm a highly adaptable product designer. I prefer working as a generalist (going moderately deep in several areas) over specializing (going very deep in just one or two).

I’m comfortable writing functional specs with product managers, jumping into code with engineers, and reviewing metrics with marketers. I can document every edge case in a design file, review pull requests in GitHub, lead research sessions, write UX copy or long-form content, run meetings, and present features and ideas to a large group.

I also value the “people” part of my job: mentoring, hiring, improving design team processes, and contributing to the team culture.

What Does “Great Design” Look Like?

My primary job as a designer is to enable others to see the future. To see what could be. To help the team make better decisions faster.

Conducting user research, producing wireframes and UX flows, and prototyping UIs are table stakes for any designer. A great designer’s job also includes:

  • 📣 Facilitating: Help communicate everyone’s ideas by making them tangible, clarify goals, and check for understanding.
  • 💎 Stewardship: Protect and promote design, spread user perspective throughout the organization.
  • 🌟 Connoisseurship: Show folks what good design is, elevate the team’s taste, and hold the quality line.

My coworker and I led a workshop on how designers lead design projects at Stack Overflow.

Which is a good segue into…

Product Development Processes

For the past few years, I’ve worked in a double diamond process. Maybe you’re familiar with it:

Double diamond product development process chart.
  • Discover: Understand the current condition by auditing existing designs, reviewing competitors, interviewing users, “How Might We” brainstorming sessions, and gathering insights.
  • Define: Synthesize the ideas identified and focus on the most compelling opportunities. What has the most potential impact? Which should we do first? What’s feasible? What does success look like? The goal is to define exactly what we’ll do and won't do.
  • Develop: Explore the best potential solutions. Designs concepts are created, prototyped, tested, and iterated. This trial and error process helps ideas improve.
  • Deliver: As confidence in the solution increases, exploration gives way to engineering. Working software is created, optimized, and shipped.

It fits our team well and I work in every phase. I especially like the parts where the problem is defined (every project needs goal and non-goals) and explored widely (considering a few wildly different ideas).

Refinement vs exploration charts.

The double-diamond approach is fine. I don’t care as much about which product development process a team uses, I care more that there is a defined product development process the team shares and iterates on.