Developers who understand design are much sought-after. When talking about upping your design skills, it’s important to understand that design does not equal colour palettes and graphics; although colour theory and visual design can be helpful, they are nothing but a small part of the field. Design involves taking an idea and moulding it into something that’s tangible through careful planning, modelling and consideration. These alone are already core skills of good developers who need to work on large-scale products and systems.
When talking about digital product design, it is almost impossible to avoid mentioning UX. Although only quite recently defined as its own field, UX is a vast discipline in itself. But the philosophy behind it is simple: empathise with your user and make sure they enjoy using your product. At the very least, UX can be simplified to include five key parts: user needs, functional specifications, interaction design, information design and visual design. And of course there's user testing, which is arguably important at every stage. As you can see, developers already play a part in most of the process.
Why should developers learn design?
Further enhancing your understanding of the whys and hows of the user-centred approach can help you deliver a better product as a developer. This is especially true for those involved in front end user interface development. A large number of jobs targeted at experienced front end developers require UX and HCI understanding, as those creating interfaces are responsible for delivering interactions and experience to the end user. Executing designs in a way that’s fast-loading, intuitive and enjoyable is as important as the design itself. Failure to empathise with your users at any step of the product creation can cause issues for the business in the long-run.
A quick search on dice.com for jobs with developer in the title that mention UX within the ad shows over 37,000 jobs. Even non-hybrid-developer roles list UX and human-centred design as one of the requirements or ‘nice-to-haves’. This means that even if you are not particularly interested in transitioning into hybrid roles, learning the basics of design can still benefit you in your developer career.
Another more obvious reason to learn design is enhancing your ability to collaborate with designers, better understand the place they’re coming from and their struggles. This, in turn, will make working with the design team easier and faster and eliminate the need to constantly double-check what they mean.
How can coders learn design?
Here comes the second big question: how should you go about learning design? The most important thing you will need to change is the mindset with which you approach a problem. Talking from personal experience, developers tend to disregard user needs for the sake of technical simplicity and elegance.
If you want to truly practise good product design principles when you’re faced with a challenge, you need to try and solve it for the user and not for your dev team. What’s best for the user may not always have the most straightforward or graceful technical application; this is a sacrifice you will need to make and be conscious of during product creation.
The best places to learn design online
Depending on just how deep you want to go, many options are available. There are masters and bachelor’s degrees in digital design, HCI and, as of late, even UX that you can go for if you don’t mind spending time and money.
Some of the more affordable and flexible online university programmes available include UC Irvine's Master of human-computer interaction & design, which lasts one year and costs $49.500.
There's also Glasgow Caledonian University, where you can get a professional diploma in UX design in six months, at a cost of £2,250. Then there's the University of Nottingham, which offers a usability and human computer interaction HCI PGCert by distance learning. This programme takes one year and costs between £3,600 and £7,100. You can find more degrees available on the Top UX School website.
For those not interested in committing to a full-fledged degree, there are many short-term courses available for either a small fee or even for free. In addition to the obvious choices like Coursera and Udemy, you might also want to check out Hack Design, which consists for 50 self-paced lessons and is free, Interaction Design Foundation, which costs between $9-$13 per month, or CareerFoundry, which costs between $690-$6,700.
How can coders get really good at design?
The next step once you have the basic skills learned from courses or books (you may also want to check out these graphic design books), is to practise your newly acquired knowledge. Practice makes perfect and that is especially true when it comes to design.
The obvious place to start applying your design skills right away is your current workplace, especially if your team is small and the company structure is flat. Assess whether there are things that could be improved in the design of the app or website you’re working on. Make a list of improvements you think would be beneficial and double-check with your product designer; chances are your technical knowledge will bring light to some parts designers may have missed. Worst-case scenario, if your suggestions are not the best from the design perspective, you’ll get valuable feedback that you can learn from and use to become better.
If there’s a clearer role separation within your company and crossing over to design in such a way sounds like it won’t be welcome, you still might be able to use your existing job to hone your new skills. Is there an in-house app that your company uses for anything? Maybe some custom admin dashboard or time tracking software? Many times such tools are overlooked and built without designer involvement in the first place. Talk to HR or your teammates and ask if perhaps you can try improving the UX of such tools.
If you’re a front end developer who regularly works on implementing somebody else’s designs, there’s an even bigger space for opportunities. Next time somewhat minor specs are missing from the design documentation, try and think about what the best approach would be and see if you can implement something without double-checking with the designer. You’ll be surprised but a lot of the time, your solution will be exactly what the designer had in mind. Or maybe even better than what they expected!
Learn design skills with a side project
Another obvious place you should look for some design practice is a hobby project. Many developers will have a side project at any given point in time; you can either redesign your existing project or apply your design know-how to a new idea you’ve had for a while. Product Hunt is a great place to look at for inspiration when thinking of a new app or tool.
If a real-life application isn’t something easily achievable at this particular moment, don’t get discouraged. You can search for case studies on the redesign of existing apps and websites and create one on your own. UX Collective has a whole sub-category of design case studies, many of which are hypothetical. Another thing you can do is sign up for sites like Dribbble or Behance and participate in one of the many available design challenges. Posting your real or conceptual work will also help you build up your design portfolio and let you exchange critiques with other designers.