Fully-stacked design?

Bill Tribble
Saving the World
Published in
6 min readOct 2, 2015

--

Is it the beginning of a new era of designers who can do everything?

Ambiguous questions

“Should designers code?”

“Should UX designers be able to do visual design?”

“What is a Full-Stack Designer / Unicorn / Ninja?”

There’s been a lot of discussion of these questions lately, much of it heated and confused.

Different skills, same goal

Let’s take this back to basics here. We’re talking about digital design. Whether you’re designing an app or a website, you need the same set of basic skills. It wasn’t too long ago there was just one job description in this field — Web Designer. UX, visual design and development are all part of the same spectrum, with essentially the same aim — making a digital product, be it a website or an app.

“All of it is basically product design. Simple as that.”

Sascha Brossman

So where does that leave us?

I think that the key thing you need to do right now as a designer is to understand your current place in this spectrum of work, own your skill-set and be open to learning whatever you need to get the job done. The details of that skill-set and the choices you make will depend on the organisation you’re working for, the projects you’re working on and your personal preferences.

The question ‘should designers code?’ is about as useful as asking if an urban planner should know how to use a shovel. The answer of course all depends on the work being done. We are in effect, asking the wrong question, as Fredrik Matheson so elegantly explained.

Asking “Is it an asset if a designer knows some code?” Is way more straightforward, and the answer is most likely YES. But I’ll get into that later. First, I want to take a look at how this confusion over job roles is expanding into job titles.

Full Stack Design(-er..?)

This is a title that’s been floating around for a while and there have been various attempts to define it. The idea of a Full-Stack Developer has been around for longer, and it makes a good counterpoint: A developer who can cover front-end, back-end and database code. Here’s one definition of a Full-Stack Designer, with the developer overlap too for clarity:

Diagram: Ran Segall

OK, so far so good — there’s clearly a lot in here already and I’m sure a lot of designers can relate to the image. It actually looks a lot like Jared M. Spool’s ‘UX Generalist’:

Ran Segall thought he’d take it one step further however and include everything else he’s been doing lately. (It’s an interesting slideshow, but as a stacked-up designer, he really should really check for typos 😉). Anyhow, here’s Segall’s slide that explains it all:

Diagram: Ran Segall

Boom, there you have it — pretty much everything bar the back-end code. I must admit, for a moment when I first came across this my thoughts were “This is great — that’s me! I finally have a label!” I’ve certainly done a lot of those things in my freelance and agency work over the last year or two. But is this really a useful label? Is it something to aspire to? I would argue that it is not, and that calling this generalist role ‘Full Stack’ is about as useful as calling it ‘Ninja’ or ‘Rockstar’.

Startup Run-Around Dude

OK, I get it — if you’re in the trenches of a small-team startup — this very generalist role may be exactly what’s necessary. One week you need to design your flaming app icon, the next you’re writing a press release, the week after you’re fighting a PR battle as people set themselves on fire with your app. And yes, OK, you can apply design-thinking to all these things, and you will get better results. I’m on board. But tagging ‘full-stack’ onto a role like this just sounds like you’re claiming bragging rights, or trying to find a snappy way of marketing yourself.

So what’s this design thing all about then?

Leaving aside any fancy definitions, design is about solving problems, be they visual, physical, or experience based. This is I believe the key thing here that we must not lose site of. Playing around with these labels and definitions of design is all very well, but there is no one way to do design, no optimal skill-set, and no ideal work-flow.

At the end of the day, the key capacity we need to do good work is curiosity, and an openness to learning new skills, new ideas, new ways of thinking that help us get things done and solve problems. Now I’m not trying to simplify things when I say that, or make design sound simple. If the project requires deep embedding and ethnographic observation of users, then that’s what needs doing. If you need to learn a whole new skill-set to achieve those goals, then so be it. Openness is far more valuable than any particular skill, or even skill-set.

So should I code then, dammit?

Ah, that old chestnut. Again, back to what I was saying — it all depends on the organisation, the project, the team and your preferences. To start with, do you like coding? Have you really tried it? Are you just scared of the idea? You may find it’s more fun than you thought.

“But what’s the point? I work with great developers — surely the key skill is communicating my ideas?”

Yes, but how do you know your ideas are even workable? Wouldn’t it help you communicate better if you knew something about the technology powering your work? If you’re working in the digital medium, then yes, I think having a basic understanding of the code that things are built in is a great asset. You don’t need to become a coder, a unicorn or a full-stack anything — just know whatever you need to be effective in your role.

The closer you can get to the actual medium you’re working in, the better. After all, a modern website or app is not just a series of pretty pictures — it’s a responsive, interactive medium. The behaviours and animations are an essential part of the experience for the user.

A digital designer who doesn’t know anything about code is a bit like a print designer who doesn’t know anything about paper.

That said, I admit — I’m biased. The basics of coding have always come naturally, to me as I’ve always had an interest. However, there’s no reason for me to proclaim my skill-set is the optimal one.

Knowing some code is a great asset for any digital designer. But is it the most essential thing right now for your current role? You might be better served by improving your user-testing technique, developing better qualitative analysis skills, improving your paper sketching skills, your workshop technique, or just getting the hell off Photoshop.

We’re not doing ourselves any favours with proclamations like “all designers should code” - or the invention of fancy titles for jack-of-all-trade roles. Ninjas, rockstars and ‘full-stack designers’ are cute title but they are ineffective in defining roles in digital design. Worse, they confuse everyone who comes into contact with the industry — be they design students, recruiters, clients or founders.

--

--