Full-stack Designer

Finding confidence as a Jack of All Trades

In college, life is simple: you are what your major is. If you are a mechanical engineering major, you either call yourself, or aspire to someday be, a mechanical engineer. However, in many (if not most) cases you may eventually find yourself in a position far from your college major without a clearly defined role.

Even with a Master’s in Mechanical Engineering, I’ve found myself in a strange place between two roles that have little to do with my degree. To understand how I got here, I’ll provide a short list of my roles over the past 6 years.

  • Mechanical Engineer
  • Startup Co-founder and Design Lead
  • iOS Developer
  • Director of Product (combination of design & development)
  • Contract Web Developer
  • Freelance Interface Designer

I cycled through these roles while managing dozens of side projects and client work, ranging from Dancing Sharks to Game of Thrones. The skills I’ve picked up have massive range and are invaluable, but having expertise spread across so many things has left me feeling unfocused.

This problem really began when I started freelancing as a web developer: I was no longer X at company Y.


Master of One

The first thing you need to do as a freelancer is find clients. The most obvious way to do this is to show off what services you can provide — so you decide to put some time into your online portfolio. Simultaneously, you start to update your description on Twitter.

You sneak in the words “freelance” or “hire me!” hoping you don’t sound like a jobless vagrant begging for work.

You’ve been told to avoid placing a ‘/’ in your titling of yourself. You can’t be both a designer AND a developer. Your clients will want to hire a designer OR a developer. After all, there are no job postings on Facebook, Airbnb, or Twitter for “designer/developer.”

Maybe you are a decent front-end coder, but you love design. You grew up drawing nearly every day, you took countless summer art classes, and keep a weekly journal of doodles. Although you were raised to believe artists will never earn real money, you’ve recently discovered that fields like UX Design are paying real money in places like San Francisco and New York City.

So you choose design.

But, when you look closely at job postings for interaction designers and frontend developers, you’ll see that most technology companies actually aren’t seeking a new hire strictly in the development or design realm. They want someone with a mastery of JavaScript and an eye for the perfect pixel — a coding wizard equipped with designer ninja stars.

A coding wizard equipped with designer ninja stars.

You’ll see this in posts like these:

Just a couple job postings from Silicon Valley unicorns

You start questioning whether you should be focusing on perfecting one set of skills or if your future employers/clients might prefer that you started fostering a broader set of skills.

Jack of All Trades

Stanford University encourages their students to be ‘T’ people — someone who has both depth and breadth. You can be brilliant at one thing and good at many others. Those others (your breadth) can complement the one thing (your depth) and ultimately make you better than someone with a single focus.

This framework always made more sense to me than the traditional idea that to be a “Jack of All Trades” you must therefore be a “Master of None.” While learning to become an interface designer, you might primarily use Sketch, but you’ll likely complement that with other tools like Adobe Illustrator or Photoshop. When you start building a portfolio you might even need to learn some HTML and CSS to get the site looking just right. These complementary skills build your breadth but also enhance your effectiveness at your depth: design. (Wouldn’t you prefer to hire a designer who can bring their pixels to life? Clearly reflected in many design job postings.)

I’m opposed to Malcolm Gladwell’s concept of 10,000 hours because the idea of mastery is losing practicality in the modern workforce. Sure, if you are a welder, it might take 10,000 hours to become a master welder. However, with the variety of tasks required at modern jobs (startups and tech in particular), the only task you’ll likely master is email. Flexibility and creativity are increasingly needed over mastery.

Yeah, that’s my phone — maybe not a Master of Email

So, how do you incorporate the idea of the ‘T’ person into the way you describe yourself?

Make something up.

I’m a Full-Stack Designer

It says so on my website.

Why “full-stack?” Full-stack developers are software engineers who work on the “full” application stack — they are able to write database queries, pick through CSS, and deploy assets to the production server. They are especially sought after in startups and smaller tech companies, possibly because they can be expected to do the work of multiple engineers.

Why I choose to be a Full-Stack Designer:

  1. It defines a single focus. I consider myself a designer above all else. I believe it is important to carefully consider the UX and how many moving pieces will work together to delight users.
  2. Full-stack design should be a thing. Good designers should understand the process of creation from start to finish — from need finding to QA. Creating a widget in an interface can be fun, but creating an entire product is what gets me out of bed in the morning.
  3. Lastly, it invites questions. I cannot possibly describe everything I do in 140 characters, so it’s my job to invite others to question me and learn more about what I do. Starting a conversation is a key step in finding client work.

Made-up titles allow you to be succinct while remaining unconventional. There’s no ambiguity to whether you are a designer or developer: you are a full-stack designer. What exactly that means may remain a mystery, but mystery can often work in your favor.

Fitting into the mold

Unfortunately, you won’t find many job boards with “Full-Stack Designer” listed. It falls upon you to make your skills fit into the list of desired roles.

Fortunately, when a company says “we are hiring a front-end developer” what they really mean is “we would like to improve our website aesthetic and speed up our loading times” and what they really want is “someone who can delight our website visitors.” The title doesn’t matter — all that matters is what they want to achieve and how you can help them do that.

A title is only a title.

Whatever you are, make sure that you can create a conversation about what is needed at a given job/client/partnership and how you can scratch that itch. A title is only a title; be sure you have a strong portfolio to show both the range and depth of your many skills.


If you are tired of being just a “designer,” “developer,” or cannot escape an “X/Y” title, please ❤︎ this post and leave a comment with your self-title.


(This post was inspired, partly, by a conversation on the Design Life podcast about choosing one focus over many. It’s a topic I could discuss for hours, and I hope this perspective is at least a little fresh.)