The most successful companies of today are first and foremost software companies. Whether they manage accommodation (AirBnB), are an omni-channel retailer (LuluLemon), a fast food franchise (Domino’s pizza), an international bank (Barclays) or they just get you from A-to-B (Uber), these companies are all in the business of creating ever changing digital experiences that customers love.James Lennon, Product Director at Ciklum
Developing a piece of software is like a team sport. All the players may have vastly different roles and capabilities, but in order to succeed, they must come together to ultimately deliver a win. But even with a star quarterback, amazing defence, or title-winning coach, when a team is unable to deliver a cohesive performance, the resulting losing streak can diminish morale, cause infighting and bickering, and eventually lead to the team’s complete demise.
Teams of developers can exhibit the same behaviors. While working toward the same, unified goal, differing motivations and objectives can get in the way of delivering a cohesive product. For instance, the idealistic goals of a user interface designer may not seem to jive with the practical decisions made by the marketing team, leading to compromised decisions that create negative user experiences. The result is a piece of software that’s buggy, hard to use, feature incomplete, or in many cases, a combination of all three.
This doesn’t have to be the case. Working collaboratively towards a single goal — a great piece of software — yields the best product experience for users. But from inception to delivery, this requires developers to set aside attitudes, egos, and siloed development approaches that can hamstring efforts toward working together.
The sweet spot of collaborative development efforts must stem from product management and user experience teams. Both play critical roles in the creation of any piece of software, but differing priorities can leave each team at odds with one another. This, of course, runs counter to the ultimate goal of developing quality software: Product managers should serve the user experience and vice versa.
At first glance, it’s easy to see why both teams might not see eye-to-eye. Product managers are tasked with the creation of a viable product, ultimately delivering a creation with a sustainable business model, marketing plan, and features requested by users. A laser-like focus on achieving business objectives can seem necessary, making key decisions about the appearance, functionality, and performance of any given app.
But despite good intentions, product managers may not have the same usability priorities as user experience and user interface designers. UX/UI teams often spend a great deal of time and effort designing attractive, intuitive, and usable products, creating an ideal experience for the software’s audience. When product management teams begin to interfere with a UX/UI team’s work, requesting the addition of bloated features, low-functional cosmetic changes, and other modifications that affect the quality of the application, the carefully-constructed vision of the developer can greatly suffer.
Of course, the same types of criticism can also apply to user experience designers. UX/UI teams are indeed faced with an important task: making a piece of software as usable as possible. This can take form in any number of aesthetic, design, and interface decisions, ultimately packaging the software into what the end user sees and interacts with.
Beautiful aesthetic design, however, doesn’t always translate into the business needs of a product. Whether it’s a minimalist interface or unique style, design decisions made by user experience teams can hinder product functionality. Hiding useful tools behind cumbersome menus and obscuring functionality can render key features virtually useless. It doesn’t matter how well-polished an application looks if a user isn’t able to use it in a practical manner.
Getting product management teams and user experience teams to successfully work together requires collaboration, communication, and compromise. Transparency throughout the development process means the demands and expectations of the application won’t be interrupted or side-tracked by disagreements and procedural inefficiencies.Lisa Sitko, Head of Product Design at Ciklum
After all, both teams should always have the end user’s interests in mind. Product development teams carry out research and usability testing to help determine how users are actually interacting with products, the types of functionality they desire, and gather any necessary feedback towards future development operations. At the same time, UX/UI teams are tasked with building a cohesive product that allows users to get the most out of the software while incorporating as much functionality as possible.
Fortunately, there’s an easy way to bridge the gap between the needs and interests of product developers and UX/UI experts: DevOps. Merging separate teams into a single unit, a DevOps team structure removes the structural barriers teams often encounter from development to deployment. Previously siloed operations, where departments would work independently and often keep information and knowledge to themselves, come together in a collaborative, transparent environment. Decisions throughout the development process are made together, ensuring all stakeholders have a say in the best way to move forward.
The DevOps approach presents product developers and UI/UX experts with the sweet spot for collaboration. Because decision-making is done in the open with the knowledge of the whole development team, there isn’t room left for major surprises or withholding information. User feedback, design issues, and business concerns all get handled in the open, allowing teams to better understand why certain choices end up being made. The result is a collaborative approach that makes it easier to solicit feedback, make changes, and deliver a feature-rich product.Yuriy Havryliv, Delivery Director at Ciklum
For users, this approach means they’re able to experience a piece of software that was created by a unified team, not competing groups within the same organization. This inevitably makes software more cohesive, with important decisions made with the final product in mind every step of the way. DevOps also makes the process of adding future product changes even easier through continuous integration and delivery, allowing future updates to come through faster and with greater efficiency.
Changing the dynamics of the way a team operates doesn’t happen overnight. Indeed, switching to a DevOps model is a process that often takes companies several months or years. But hard-fought change often takes long-term commitment, and with the increased collaboration and communication methods afforded through the DevOps model, it’s an investment development teams must make to be successful, nimble, and responsive.
Becoming a home-run hitter takes years of dedication and practice — and with some persistence and cooperation with coaches and trainers, it’s a much easier journey to make when you’ve got a supportive team at your back, too.