Your Johnny Cash is in My Nirvana: Why Designers and Developers Should be Friends
Back in the day there was this commercial for Reeces Peanut Butter Cups where someone accidentally dipped their chocolate bar in another persons jar of peanut butter…while wearing those great foamy style headphones from the 80’s. Voila we have the origin of the peanut butter cup. This was brought to my mind as I was listening to some deep cuts from the MTV live Nirvana album this week.
You see I thought the best of Nirvana was Heart Shaped Box, Teen Spirit and Come as You Are, but then on the last half of that live album I was exposed to Plateau, Lake of Fire and Where Did You Sleep Last Night. These are great tracks that I don’t ever remember hearing before. What stands out about these tracks is how country they sound. It’s like a modern day grungy spaghetti western soundtrack. All this reminded me of the great performance when Johnny Cash sang the cover of Hurt by Nine Inch Nails. How great is it when we blur the lines a bit and delve in each others lanes.
This strikes a strong cord for me in looking at how we want to organize our front-end development with UX Designers, UX Engineers and Front-End Developers. Many times the tools, technologies and purposes overlap and form something grand on the order of tasty chocolate treats or cross-genera epic songs.
Within the last year we’ve been pushing for my company to evolve the position of UX Engineer. It’s been interesting as we’ve had these discussions to try to figure out where do the lines blur, what their responsibilities are and how do we attract and hire people for these positions?
While this may seem more obvious if you’ve grown up in the modern development world where we have more segmented work taught in technical schools it may not seem as obvious for those of us who have been around the block a time or two and come from the days where we were full-stack developers long before that term existed. Even going back to when we heard Nirvana play for the very first time, shocking I know! This is especially when you’re talking to people who spend most of their life coding lambdas, writing micro-services or worrying about migrating to the cloud.
With the myriad of opportunities for UX team structures we’ve chosen to have use the rolls of UX Designers, UX Engineers and Front-End Developers. While some places I’ve worked the UI/UX Designer Developer role found you designing and implementing the features in front-end code we’ve chosen a different route.
As part of our digital transformation we’ve seen the role of a UX Designer widen their T experience to encompass being the focal point for all research on the team. This means all research goes through the designer so they are in the know and can present the research. They form a bond with our UX Research team to do basic UX research themselves, use our in-house research resources or for larger jobs work with our third-part researchers. Additionally we’ve come to gain the trust through training and experience with our marketing team to have UX design include UI design. The imagery, voice and brand are fed to the designers who have a certain level of skill and experience with visual design. Thirdly comes from the evolution away from business analysts. For many companies we’ve seen the movement from BA’s to UX and it seems to go hand-in-hand as we have the UX Designers facilitate our design sprints. From those sprints emerge backlogs, feature roadmaps and requirements that help feed the direction our teams take. Adding development on to the UX Designer’s already loaded plate just became too much.
This lead us to the role of a UX Engineer. With one of our company tenants being customer first we felt like we wanted to deliver on this point and nail the user experience. This began our unicorn search for those special people who were adeptly equipped with both design and development skills. Their job is to make sure all our font’s are san-seriffed, animations animating, experiences across all devices on point and that we are delighting the users.
This leads us to the question of what does the Front-End Developer do now as they are wedged between the UX Engineer and what we’re calling a Cloud System Engineer that’s historically been the guys writing the services/dealing with databases, etc. Where does the line of responsibility sit and how do we attract and hire for these two positions.
Talking in terms of the technologies only served to confuse the issue though as these didn’t always appear that far apart. As I started thinking about it more it made more sense to think about it in terms of their goals and the work they’re doing rather than the often times common technologies. If we start to think that UXE’s are using these tools and technologies to further ideation, prototyping, usability testing, UI interaction, styling architecture then we can see how that differs from the FED’s focus on implementation, technical feasibility, backlog management, performance, routing, consumption of services and SEO structure then we can see the differences more clearly.
UXE’s focus on the user experience and delighting the customer from a code perspective while FED’s primary concern is with the delivery and architecture of the code. UXE’s are tied on one side more strongly to the UX Designers and UX Researchers while FED’s are tied closer to the Cloud System Engineers. The division becomes experience logic vs business logic in some sense.
I like how Google terms it, “UX Engineers are the synthesis of design and development. They take Google’s most innovative product concepts and bring them to life in an effort to push the boundaries of user interface design.” They explore product concepts, build prototypes, collaborate with UX designers and researchers, and advise front-end engineers on UI implementation best practices.
FED’s or software engineers “develop the next-generation technologies that change how billions of users connect, explore and interact with information and one another. Their responsibilities are to design, develop, test, deploy, maintain and improve software.
The differences are sometimes nuanced, a UXE should be setting the standards for usability, accessibility, SEO, CSS structure and naming, but the FED is the consumer and implementer of these many times. Many times there is cross-over and we encourage that as we want all people to be able to have wider T experience. We say the roles are somewhat fluid and we encourage exploration that helps the team move forward while playing nice together. We don’t want a formal hand-off and too structured/rigid processes. As the agile manifesto champions, we want more interaction and conversation over documented process.
Now for how do we find and hire these people I came up with a few test questions.
- Which excites your more, learning about Angular 8’s improved web worker bundling or CSS variables?
- You want to install new features on your site, do you think about NPM and CLI or if that should be displayed on a new page, modal or pop-over?
- Do you worry more about HTML and CSS validation or how well your JS Lints?
- Are you more concerned with the fonts, colors, dimensions, display time and placement of a hero in a carousel on mobile/tablet/laptop/desktop or the file size of each of the hero’s, the number of font’s being used and how much it will impact the page load?
- Are you more concerned that our CSS is 6000 lines of code or that or DOM structure has 3,700 nodes?
Now you may say to yourself I care about both of these, but if you had to force yourself to pick just one, which would it be. I think this will help put you squarely on one side or the other.
In the spirited play Oklahoma they sing of how the farmer and cowman should be friends. I believe we should sing the same refrain of how the UX Designer, UX Engineer and Front-End developer should be friends. Let’s all play nice and ship some great working software. Yippe ki yah ya’ll!