Vladislav Kochelaevs - Fotolia

Who is responsible for software development and design?

Can developers and designers ever meet in the middle? And if so, how can they speak the same language? Expert Jason Grant offers tried-and-true advice for making it work.

Let's picture trivia night, an escape room or a scavenger hunt with only one person competing. The other competitors are multimember teams with diverse backgrounds, tastes and experiences. The multimember team has many advantages over the individual, and the same is true for user experience. When it comes to software development and design, you need to rely on the entire team for multiple viewpoints and opinions to create a more beautiful and functional design.

While the entire team is responsible for UX, software development and design have the largest impact and greatest accountability. The two must work together toward a common goal. However, that requires the ability to speak a common language. Developers speak in terms of coding practices, languages and libraries, while designers speak in terms of research, styling and deliverables. When both take into account the larger mission to address the user's needs, they can overcome some of these differences in language. To bridge the language gap, each needs to learn the essentials about the other's role. With a basic understanding, a common language between software development and design can be created. Frequent communication between them will ensure that designs are not only able to be implemented but have also taken into account multiple angles and viewpoints.

Why should developers know about UX?

The moment a developer writes front-end code, the resulting UI creates an experience for the user, whether one has been designed or not. Not every project or area of the site gets the benefit of dedicated research, analysis and design focus. Having a basic understanding of UI/UX best practices can help avoid typical problem issues.

Why should UX designers know about code?

Designers have complete control over the look and feel of a site, but that cannot always transfer easily to the real world of HTML, CSS, JavaScript and SVG. Design tools are also still deficient in the ability to simulate the UI for our ever-increasing screen sizes and devices without needing to redraw each in static form. The more a designer understands about the medium used for development, the more effective the design can be. When designers know at least the basics of code, they can understand the effort it takes to implement a design or how a seemingly small tweak can have systemwide ramifications.

Software development and design together

To create a bridge between designers and developers, there are four primary elements of success: collaboration, defining the problem, writing success criteria and inclusion.

Collaboration

UX excels when designers, developers and the entire team collaborate effectively. Listening to as many people as possible will provide more ideas, insights and perspectives than any designer could ever discover on her own. Open communication and acceptance of ideas build camaraderie throughout the team and will also help to reduce tensions later in the project if disagreements arise.

Definition of the problem

When a product or feature is added to the work at hand, the user problem that is being addressed needs to be clearly defined. Software development and design teams need to discuss this definition and determine if they both understand it the same way. If everyone does not understand the problem statement the same, it must be analyzed, discussed and rewritten until everyone has the same understanding.

Success criteria

With an agreement about the problem, success criteria that state when the problem is solved allow software development and design teams to be focused on the core needs. Success criteria allow the entire team to challenge both design and development decisions.

Inclusion

From meetings to decisions to deliverables, software development and design teams should have a representative involved to hear and participate in every meeting and review. This benefits goals, timeline and long-term budget and leads to a clear understanding of how to confidently move the project forward. A developer's first glimpse at a design should never be the final version of a design deliverable. Designers need not fear getting early feedback and should embrace bringing others into the discussion to determine success and technical feasibility at every step. If there is a problem, it is better to know about it early. Developers also should loop designers in early as they are working on implementation to ensure that issues are caught as quickly as possible.

Two or more people have a better chance of solving a problem than one person working alone. If we have empathy for each other with a shared understanding of the problem and agreed-upon success criteria, then collaboration and inclusion will lead to a successful solution.

Next Steps

Find out what end users are really thinking about your product

Where UX and the internet of things intersect

What can urban sprawl teach us about UX design?

Dig Deeper on Software development team structure and skills