The Career Path to UI Development is Changing
For over a decade, UI developers often came from design, learned HTML & CSS first, then JS for interactivity. That path is now being traveled in the opposite direction.
As a UI Development Director at Viget, I work in the tried and true stack of HTML, CSS, and JS. I’ve worked in some combination of that stack for the past 15 years or so, with some variation of the same title: Web Designer and Developer, Front End Developer, UX Developer, and UI Developer. That first title, “Web Designer and Developer” hints at my developer origin story. The short version of that story is that I started doing development because of my background in design. I was asked to design a website which someone else would code. That person backed out, so I started to learn to code, which set me on a career path that I never could have anticipated.
I have always loved that my background in design gave me an empathetic disposition toward the future designers that I’d collaborate with. Over the years, I’ve found that many other Front End developers have similar design → development origin stories.
For the better part of my career, I’ve noticed that this has meant that developers interested in building UIs learned HTML & CSS first, in order to build the visual, responsive layer. Then we learned some flavor of JS to manipulate the DOM and add interactivity. This generally meant that HTML and CSS were our strongest capabilities. Catching up with JS knowledge was often the biggest area of growth for developers that were on this path.
I believe that that trend is changing.
Trends change #
Recently, we have been recruiting for UI Developers—particularly the Apprentice (check back in June for more info on this year’s cohort!) and Junior roles. During that search, we saw hundreds of applications from recent college or bootcamp graduates. For their experience level, the vast majority of applicants demonstrated a high level of understanding of JS (and usually had a preference for using React), some knowledge of CSS, and very limited knowledge of HTML. Notably, very few even had any awareness of the topic of accessibility (a11y). Many applicants can build an SPA, manage state, and pass props appropriately, but don’t know when to use an anchor tag
<a> versus a button
<button> or why you wouldn’t want to use an
id to apply CSS. In fact, they’re more likely to assign a click event to a
<div> or a
<li> without question.
I have a theory that this is due to how highly marketable being proficient in React is. Many product and agency teams look for that skill and therefore, bootcamps that want to boast high employment rates prioritize teaching React, even in more traditional “Front End Developer” courses. Since React takes a long time to master and these programs are short, there’s just not enough time to teach HTML and CSS well—and a11y barely gets a mention. This hypothesis has been confirmed to me by several bootcamp grads—and while I hope there are examples of institutions that don’t conform to this pattern, I imagine they’re few and far between.
In an effort to confirm this theory, I have spoken to other hiring managers at companies larger, much larger, and smaller than Viget, and all have noticed a similar trend. So I think it’s time to start thinking about how this trend might be here to stay, and how it might affect hiring.
What does this mean for you?
If you are currently applying or plan to apply for a job in the HTML/CSS/JS stack, you should absolutely do the following.
- Learn as much about HTML as you can and why that’s important.
Writing semantic HTML is the first step towards building accessible
websites. Accessible markup is a prerequisite at Viget and it will be at
many shops, so take some time to learn accessible UI coding practice in
depth. Here are some good resources:
- As you learn, fix any HTML or a11y issues in your repos that you still have access to. If in your resume or portfolio you refer to your work on a site you don’t have access to, be prepared to speak to how you would fix issues with a11y in mind.
- Once you’re comfortable talking about your a11y knowledge, include it as a skill in your resume or portfolio site. (Here’s some more resume help from one of our great recruiters.)
If you do these things, I promise that you will stand out from the crowd. And—more importantly—you’ll build better, more usable products.
Hiring Managers and Recruiters
If you are hiring someone for a job in the HTML/CSS/JS stack, preparing will be just as important.
- Make sure you’re upfront about your commitment to a11y. This includes in your job posting as well as during your first meeting with an applicant.
- Don’t settle for 2/3 of the stack. If you are hiring for HTML, CSS, and JS, don’t settle for someone who doesn’t fit the bill. Especially if someone has been in their career for a few years and HTML isn’t a strong capability, that’s a red flag.
- Know that if you’re prioritizing a11y and you’re looking for a less experienced developer, it’s likely going to take longer than you want it to take.
Finally, note that there’s no magic formula or hack to make this process perfect. At Viget, we also prioritize empathy, eagerness, and willingness to work in a team. Some candidates might be worth the initial mentorship investment if you can see that they’re almost there with the stack and have those qualities as well.
I have little doubt that the once tried-and-true developer path of HTML→CSS→JS is changing. New developers are starting their path in JS and either working toward HTML/CSS or getting deep into JS and back end languages. Whether you’re an aspiring UI developer or you’re involved in the hiring process, knowing about this shift and preparing for it will affect positive change in your future.