Most people believe that an aesthetic sense or a formal education in visual design is necessary to become a user experience (UX) designer. This perception unfortunately becomes an obstacle for software developers who want to switch their career to UX design.
If you’re a software developer who wants to become a UX designer, then here’s the first thing to note: visual design is only a small part of the UX design process. A majority of the heavy lifting in the design process has nothing to do with aesthetics. In fact, as a software developer who implements designs, you already have the advantage of a ring-side view of what happens behind the products you build, as well as skills which you can apply in UX design.
What is User Experience and User Experience Design?
User experience is, well, how your product’s user experiences the product. That experience includes everything from the first marketing message that the user sees, to the first time they try your product, and from the error messages on the product’s interface to the responses of a Help chatbot.
User experience design is the process which helps the team understand users, their pain points and challenges, and create (and continuously refine) solutions that result in great user experiences.
User experience comprises:
- The look: the aesthetic appeal of the product or value proposition;
- The feel: how well it works and how pleasurable the product is to use; and
- The usability: how easy the product is to understand and use.
Here are some introductory pieces that cover UX design in greater detail:
What Do Software Development and UX Design Have in Common?
Creative Problem Solving
When you dive into complex software architecture to troubleshoot errors, or look for solutions to integrate technological components, or experiment with new technology, you are using your creative problem-solving skills—skills that you can apply in a UX role. Both software developers and UX designers are builders—both like to get their hands stuck right in and build something of value. As a software developer, your tools include frameworks, languages and development environments. As a UX designer, your tools will include user research and analysis, journey maps and prototypes. Software developers and UX designers use different tools and methods, but are motivated by the same end result—an elegant solution that delights users.
Just like in software development, where you test rigorously to identify and squash bugs and errors, UX designers also rely heavily on testing. This is true both for solutions which are completely new, as well as those based on established best practices—after all, a design pattern that works well in one context may not necessarily work as well in another context.
Technology evolves fast, and as a software developer you are already in the habit of learning new languages, techniques and patterns. This learning habit is essential for UX design. UX designers need to keep pace with the latest technologies so that they can design solutions that leverage new possibilities (and stay ahead of competitors). In addition to technology, a UX designer seeks to understand user behavior. We do not (yet!) have the ability to correctly and consistently predict human behavior or their preferences. Users’ needs, challenges and preferences evolve in response to their soci0-cultural, geo-political, business and technological environments. In practice, a UX designer has to constantly be in “learning” mode to be successful in her profession.
How Do Software Development and UX Design Differ?
Correct Answers Vs Unknown Answers
As a software developer, you aim to create the perfect deliverable—a piece of software or code that works as intended, has no bugs or errors, and interacts well with other technological components. You know you can make it perfect, as software languages have specific rules. A command given to the machine results in a very specific, predictable output.
UX Design, on the other hand, is centered around humans and their experiences. Research can provide insights into general patterns about human behavior. For example, we tend to associate the color red with intense excitement (love, danger). However this interpretation can vary across different cultures and from one individual to another. Each one of us has characteristics that make us unique. For instance, red-colored text may evoke a feeling of failure and sadness in someone—perhaps triggering childhood memories of finding a teacher’s harsh remarks in red ink all over a homework assignment. Human-centered design involves a significant level of uncertainty. There are no “correct answers”—only iterations to get to a better solution.
Technology Focused Vs User Focused
As a developer, you are already used to feedback from your team on how you can refactor and improve your code. The same is true for UX design, with one crucial difference. You will get feedback from all stakeholders, including designers, engineers, business owners and complete strangers (users).
The user’s experience is influenced by variables, many of which are either unknown or beyond your control. The design team constantly works to improve the product or solution based on usability tests as well as heuristic evaluations. The result of the process: users may react to your solution in unexpected ways, irrespective of how elegant or technically sound your design is.
For many people (including designers), the first reaction to criticism is to defend the idea or design. We often get attached to our work and view criticism as an attack on ourselves. This is perfectly natural, especially if we sink many hours into a given piece of work. However, if we’re working in a UX design team, then detaching ourselves from our work is essential; the design or idea needs to stay in focus as a fully objective thing and not someone’s “baby”. Feedback and criticism are necessary for the evolution of a product; they make the user’s experience better. The idea of negative feedback here isn’t about making any team member feel less competent or helping them grow a thick skin to handle even more criticism. The UX team is actually a safe space to fail forward and learn from mistakes. Even the best design-led companies continually iterate their designs, and are not afraid to completely shelve products if they do not meet the users’ requirements.
The best way to overcome these challenges is to test and seek feedback early, while the idea or design is still a work-in-progress. A pixel-perfect, polished interface takes longer to create and is difficult to let go. A wireframe on paper is faster to create and easier to iterate (and, if needed, scrap).
Author/Copyright holder: Christina Morillo. Copyright terms and license: CC-0.
In the design process, the team works with known as well as unknown variables and incorporates feedback from all stakeholders, including designers, engineers, business owners and complete strangers (users). The UX team is a safe space to fail forward and learn from mistakes. Even the best design-led companies continually iterate their designs, and are not afraid to completely shelve products if they do not meet the users’ requirements.
The Big Benefit of Software Development Experience when moving to UX Design
As a UX designer with a background in software development, your knowledge and skills can help the design team to:
- Identify feasible improvements to interfaces and interaction patterns.
- Suggest alternatives to achieve the design goal, within the framework of the existing technical architecture.
- Create solutions that leverage the latest technologies, which the design team may not be fully aware of.
- Gauge the cost of design implementation at an early stage and help create solutions that will be faster to implement.
- Communicate and act as a bridge between other developers and designers in the team.
How to Enhance Your Skills to Make the Jump from Software Development to UX Design
As a developer, your analytical skills can help you dive straight into the design process through research and testing—two important aspects of UX design.
A/B testing is a method to evaluate designs with real users. The team decides the measurement criteria for two (or more) designs, and then gives them to different users. Based on how the users interact with the designs, the team decides which one to go ahead with.
Let’s say that the design team proposes a redesign of the company website. The new design shows the pricing policy prominently on the very first page. Will the new design lead to higher conversions—or to a decline in sales?
An A/B test will help your team decide whether or not to consider a redesign.
As a developer, you can help your team set up the alternate designs, identify which metrics to track, serve the designs to different users and analyze the results of the interaction patterns. A/B testing helps you jump head-first into the iterative design process.
User research forms an integral part of the design process. It involves both quantitative and qualitative methods.
In quantitative research, you will leverage your analytical skills to identify patterns in data. The data can include responses to surveys and metrics captured through A/B tests. You can also track usage patterns to inform the design team about, say, which screens users spend the most time on, or at which point they navigate away or close the application.
If quantitative research shows you how users interact with your product, then qualitative research can help you identify why they take those actions. The tools used in qualitative research include interviews and mapping activities.
Learn about qualitative research methods in the course User Research – Methods and Best Practices.
Learn from Others’ Mistakes
Similar to how you develop the ability to diagnose and troubleshoot errors in code through others’ mistakes, you can develop a critical eye for usability from what doesn’t work in others’ designs. People behind the scenes—designers, developers, business stakeholders—can develop blind spots to the user’s experience and find it difficult to identify flaws. Fortunately, all of us are also users of products made by other people. In your design journey, it is helpful to become aware of your actions and emotional reactions while interacting with products you use regularly. This practice reveals what makes you (a user) happy, and what confuses you. It can also provide ideas for your own products.
Usability tests allow you to get an unbiased perspective of your product. In a usability test, the team identifies tasks and their success criteria. For example, the tasks could be to search for a product on an ecommerce site, evaluate the product against similar products and make a purchase. The criteria for success can include whether or not the users can complete the tasks, and the time they took to complete them. The tests also allow the team to observe the places where users get stuck or feel confused.
Learn how to conduct effective usability tests in the course Conducting Usability Testing.
“Heuristic" means general principles or guidelines. You can understand the different principles of usability in practice when you conduct heuristic evaluations on products. While the usability test reveals problems with usability, the heuristic evaluation helps you identify the underlying causes of those problems. You can begin with applications that you use regularly and learn about what works and what doesn’t, and then apply the same principles to your own products.
If you follow the steps above thus far, you will learn how to evaluate products and designs. When you’ve mastered these areas, you’ll be prepared to create your own design solutions.
The skills and experience in user research and testing methodologies will help you develop an iterative, feedback-driven approach to design, which is crucial to design thinking. Design thinking is a framework for problem solving. It encourages interdisciplinary teams to understand users, define problems, generate ideas, build prototypes and test them with users.
Author/Copyright holder: Teo Yu Siang and Interaction Design Foundation. Copyright license: CC BY-NC-SA 3.0
Design thinking is an iterative, feedback-driven, non-linear process to empathize with users, define their problems, generate ideas to solve those problems and test the prototypes of the solutions.
Design thinking helps you think in terms of holistic solutions, as opposed to sequential design deliverables. It requires teams to focus on solutions that solve users’ problems and, at the same time, are technologically feasible and viable for the business.
When you participate in a brainstorming session to generate solutions, your technological background can restrict your thought process. You might have to consciously “forget” about technological feasibility during the session, and then “recall” your technological superpower when the team evaluates which ideas to focus on. This ability comes with practice. The more you practice, the easier it will become to switch between the two mental states.
Get an overview of the framework in the course Design Thinking: The Beginner’s Guide.
Once you become familiar with the design process, you’ll be ready to dive into the granular aspects of design.
Information architecture is the structural backbone of UX design.
In your work as a developer, you may have drawn schemas for databases, flowcharts for processes and algorithms, and diagrams depicting software systems. Information architecture involves similar activities, but from an end user’s perspective: categorize content and functionality, identify relationships between them, create user flows and navigation systems.
When you work on the information architecture of a project, you lay the foundation for the rest of the more “visual” deliverables.
Wireframing & Prototyping
Wireframes are the first “visual” deliverables in the UX design process. As with the brainstorming sessions in design thinking, you will need to switch between user and technology. Incorporate the learnings from user research, usability tests and heuristic evaluations into your design process, to create, evaluate and iterate your solutions. Leverage your understanding of technology to create interfaces and interactions that will be both user-friendly and feasible to implement.
It is best to create your wireframes and prototypes on paper (even if you feel more comfortable using drag-and-drop tools). While software tools can help you create more polished results, they typically take more time and effort to create. Pen/pencil and paper helps you get started without the need to learn specific digital tools. You will find that low-fidelity designs are faster to iterate and easier to scrap, if needed. What’s more, you can use paper prototypes in usability tests. Once your prototype is ready, make sure to test your designs, seek feedback and iterate. Rinse and repeat.
Visual design aims to improve a design’s aesthetic appeal and usability through the use of grid systems, typography, color theory, imagery and iconography. Users form their first impression of your product through the visual layer. If the product does not visually appeal to them, they may not be keen to explore it. Visual design is more than aesthetics: looking beautiful is not enough. It must be usable. For example, you could add a beautiful icon on an interface, but if users cannot decipher its meaning, then the design is not usable. Similarly, text-based links need to look tappable / clickable or users will not know that they can interact with them.
A usable design is one that is accessible to everyone. Users of your product can range from able-bodied people to those with a form of impairment. Impairment can be in relation to vision (low vision, color blindness, partial or complete blindness), hearing ability, cognitive function or mobility. While several countries have laws that make accessibility mandatory, as designers, it is our moral obligation to ensure that applications are accessible for all users. Users can interact with our products using assistive technologies such as screen readers or depend on a keyboard instead of a mouse to navigate.
It is important to understand accessibility, both as a designer and as a developer. For example, accessibility considerations on a website include the way information is categorized, the order in which it is presented, the structure of the underlying code and alternative text for images. It includes features to magnify text, the ability to navigate between sections with a keyboard, a high-contrast ratio between text and the background and interactive elements that screen readers can identify.
Learn everything about how to design for everyone in the course Accessibility: How to Design for All.
What You Can Do Right Now
As we’ve seen, you can dive into the iterative design process within your organization with A/B testing and user research. Observe your own interaction with different applications and conduct usability tests and heuristic evaluations to learn about usability. In your design journey, you may find it helpful to have mentors, with whom you can discuss ideas, ask questions and seek career advice.
Mentoring and Feedback
The easiest place to get feedback and guidance is within your own workspace. Reach out to the designers whom you’re already working with and seek their advice. Perhaps they may also help you find more dedicated mentors in your area, from whom you can learn. Try to get involved with the design team and participate in brainstorming sessions and design sprints.
Many employers encourage team members to “intern” with different departments within the company. The best part about this approach is that you can learn and apply your new knowledge on the job, while at the same time creating value for your organization—a win-win situation for all stakeholders.
You can also consider the Interaction Design Foundation’s Bootcamps, in which a mentor from our network of UX design experts will provide feedback on your design portfolio and help you prepare for a career in UX design.
You can find peers who are on the same career-switching journey as you, mentors, as well as future employers through your professional network. You can reach out to present or past colleagues, former classmates and teachers, and request them to introduce you to industry experts. You can join groups on LinkedIn and participate in discussions to get noticed, start conversations and get introductions.
The Interaction Design Foundation also offers networking both within the course environment (so you can work with others at your level to expand your network and opportunities) and also in the form of local networks (groups which meet offline) in different parts of the world. You need to be an IxDF member to benefit from course networking, but our local network groups are free to attend whether or not you are a member. Find out more here.
You can also follow and interact with influential design leaders on social media. If you’re wondering where to begin, we’ve curated a list of designers you can follow. You can also attend the Interaction Design Foundation’s Masterclasses—a series of webinars in which design masters share expertise, insights and advice.
Interact with design leaders on Twitter. Learn more about these influencers here.
Where to Learn More
Interaction Design Foundation
With over 88,000 members (and counting), we’re proud to share that the Interaction Design Foundation is the world’s largest specialist design education community. Not to brag, but Don Norman, the undisputed king of user experience, believes that we’re “a goldmine of information on interaction design.” According to Forbes magazine, we provide an Ivy League level of UX design education.
Apart from the courses suggested in the learning path, we offer a host of other courses to help you further develop your skills in UX design. We take care to keep the courses updated, and work towards adding more relevant topics, so that you get the benefit of the latest research and methods. The best part about our platform: for a low annual membership fee, you get access to all of our courses for a year with no additional charges, along with access to our community.
Coursera is another platform which offers courses on a wide range of subjects including UX. Developed by a consortium of universities, the courses are of high quality. However, the fees for individual courses vary and the courses tend to be offered at most once or twice a year, which may, or may not, suit your learning goals.
Udemy is the world’s largest marketplace for training. You can find thousands of courses across a wide range of topics. This large catalog comes from the community on the platform, which enables anyone to publish and sell a course. Unfortunately, as Udemy doesn’t design its own courses, the quality of the courses can vary significantly from one to the next. Along with good courses, there are also several poor ones and you will need to be wary of which course to purchase.
Nielsen Norman Group
If you would prefer to learn in a classroom than learn online, you may want to visit the Nielsen Norman Group. The group has an excellent reputation and is one of the world’s most respected UX consultancies. Their certifications are based on attending conferences. However, the certifications are expensive. The location and timing of the live conferences can also become a challenge if they are not near you.
General Assembly offers immersive bootcamps in several disciplines including UX design, both full-time and part-time. As with any classroom-based training, the price of their courses is steep. They also have a limited number of locations for you to physically attend the bootcamps, which may add to the cost of your education, should you need to travel.
As you’re a working professional, we would not recommend that you take 3 or 4 years off to go back to university (and potentially take on debt). Moreover, most universities bundle UX with other disciplines and do not offer it as a standalone course. However, if you do wish to take a break, or have a specific learning path in mind which only a university course can fulfill, then here are some examples of what to expect in terms of curriculum and costs:
York University – MSc in HCI Technologies
Given the significant investment in time as well as money (and perhaps relocation), you will want to research various options to identify the most suitable university and course.
To opt for a university education or not is an overwhelming decision. Make sure to check out our article on Return on Investment of different design education approaches here, which may help you make a more informed decision.
The Take Away
The common misconception is that one should have a formal education in visual design to be able to become a UX designer—something developers seldom have. However, there is a lot of common ground between software development and UX design. Many of the skills that you have honed as a software developer—creative problem solving, research, testing and visual thinking—will make the transition to UX design easy. The key challenge for software developers (and, in fact, anyone who wants to become a UX designer) is that there are no “correct” answers or solutions. Unlike technology, which behaves predictably, human users can react in the most unexpected ways. Becoming a UX designer necessitates that you detach yourself from your work, welcome criticism and seek feedback for work-in-progress.
User research and testing methodologies enable you to leverage your software skills and contribute to the team while you learn and adapt to an iterative, feedback-driven approach to design.
You can get involved with the design or product team and participate in brainstorming sessions and help generate ideas and solutions. As you get more involved in the design process, you will feel more comfortable with the more granular aspects of design, including information architecture, prototyping and visual design.
References & Where to Learn More
- Martin A. Siegel, Erik Stolterman, Metamorphosis: Transforming Non-designers into Designers, 2008, available from Sheffield Hallam University Research Archive (SHURA)
- The Relationship Between Visual Design and User Experience Design -
Two people discussing customer journey map
Copyright holder: Christina Morillo.
Copyright terms and license:CC-0