Should UX Designers Learn to Code?

The separation of design and code, just the way it should be

Should UX Designers Learn to Code?
Photo by Arnold Francisca / Unsplash

I was involved in a heated discussion on Reddit.

Not my first admittedly, and Reddit being Reddit, every discussion seems to eventually get heated.

This discussion was focused on learning to code as a UX designer. It's an age-old conversation that I am quite frankly sick of, so here I am of course writing a blog post about it.

I was clear in my opinion: UX designers should NOT have to learn code to have a better shot at obtaining a role as a UX designer. UX Designers will NOT be better designers by learning to code.

Search for UX or product design roles on Google, and you'll see hundreds of listings suggesting that coding knowledge is "a benefit"

Designers should design, and engineers should code. However, as the flames of angry professionals licked out at me from my screen, I closed my laptop and considered how I could add context to my initial incendiary opinion.

You see, I've worked with some great companies and some not-so-great companies. Those companies assigned great, are companies that had cohesive teams.

They worked together, knowing where their strengths and weaknesses lay within each other.

A harmonious balance of people working within the boundaries of their roles, stepping out only when comfortable doing so, and sharing knowledge with the team regularly.

Not all companies are the same, however.

Search for UX or product design roles on Google, and you'll see hundreds of listings suggesting that coding knowledge is "a benefit".

So, with that said, I gave this some more thought. After all my rambling online, and after considering other opinions I asked myself, "Should UX designers learn to code?"

My answer is still no, and here's why.

The Ideal Scenario: Specialisation and Collaboration

Everyone is happy in this picture because a designer hasn't been asked to code. Source: Pexels

In an ideal world, all job roles would be clear-cut and neatly separated. Designers focus on crafting user experiences, while engineers bring those designs to life through lines of code.

However, the real world often deviates from this ideal scenario. This is something you may have noticed when looking for a new job, whether you're a junior or senior.

Specialisation promotes efficiency. When designers and coders work in tandem, the design process becomes streamlined

So many UX roles seemingly want you to have experience in coding. But what does this mean?

Well, for one, the entire concept of user experience as a profession is devalued. It suggests that being a user experience designer on its own simply isn't enough.

Companies can't justify spending their budget on something "wishy-washy" and, through a lack of understanding of what UX is, would rather pop "knowing Javascript beneficial" at the bottom of the job specification.

It smacks of companies hedging their bets, that design is merely about delivery and not the bigger, more strategic, picture.

Secondly, UX roles that also include coding run the risk of UX becoming an ever-smaller portion of the job, with coding becoming the main focus - again, this does nothing for the entire profession, undermining it completely.

Thirdly, and most importantly, if you see hints of this in a job description it highlights one thing. The design maturity of the company is LOW.

Better UX design maturity makes an organization more competitive and more effective at delivering great products and services. - Jared Spool

Companies with designers who need to do multiple things outside of their normal UX duties are lower on the UX maturity scale, whereas companies that divide duties are higher.

Of course, there's still a lot of work to do to be considered high on the UX maturity scale, but the separation of roles is fundamental to making that journey.

Source: centercenter.com

The only exception to this is working with a startup. Budgets are tighter and teams are smaller, and you will likely be expected to work outside of your normal duties.

While you can give more leniency in this situation, if your job title is UX designer or product designer, you are a designer first and foremost!

Specialisation promotes efficiency.

When designers and coders work in tandem, the design process becomes streamlined. Designers can concentrate on aesthetics, accessibility, and user-centred principles, while developers optimise functionality and performance.

What use is it for a designer to have surface-level knowledge of how loops work in Javascript when talking about the implementation of designs? How will this knowledge, likely as deep as a puddle, help them understand engineering constraints?

It won't.

I would even go so far as to say this undermines trust in the engineering team, and that if you approach the engineering team with "solutions" you learn from YouTube, you'll create an atmosphere of wariness.

Good teams lean on each other strengths. It's a symbiotic relationship that leads to a superior user experience.

Learning code will make you a better designer? No, it won't

Look at all the stickers on this guy's laptop - he'd be much happier in Figma. Source: Pexels

The best designers I've worked with are the ones who have a continuously open channel with the engineering team. They talk regularly about what can and can't be done, or what can or can't be done in a particular time frame.

This is fed back to stakeholders, product owners and anyone else who needs to know. This is the sign of a highly functioning and efficient team. A product owner won't want your opinion on the technical aspects of a project.

They'll go to the engineering team for that, every. Single. Time.

I've been in this game a long time, and I get it.

To cut costs and merge roles, employers sometimes look for professionals who can "bridge the gap" between design and code. This designer-coder hybrid can expedite the development process and cut down on expenses.

This is of course possible, but it's rarer than an Alabama snowfall. They're called unicorn hires for a reason, and quite frankly, it's a waste of time to become that person.

If you're a designer, become the best designer you can be. Not the best unicorn.

Bending the Knee in a Relentless Job Market

2023 has, in some ways, been a year of layoffs. Source: Pexels

The job market, in general, is bananas right now.

Designers often find themselves with limited job options, leading them to make compromises. I've been there before. It sucks, but it's sometimes what you have to do to get by.

I want to make it clear that taking on roles that demand coding skills is something that some folks will have to do, and that's fine. We all need to eat.

But if you're sitting there in a job that is more code than design, do know that it will get better. We're in the trough right now, and it will swing around to peak again.

There will be more choices, jobs that value design and design only, and less dependence on other aspects that aren't related to being a shit hot product or UX designer.


Whatever you're situation, for all the doom and gloom out there right now, please do not give up on pursuing being a designer. When the final puzzle piece falls into place, and you find a job you love, it's worth it.

Keep going.