Why we are not done with the discussion yet and why you may consider to hire and/ or promote User Interface Developers.
You can call them HTML & CSS Developers, Web Developers, Web Designers, Front-end Developers, ...
There are a lot of job titles out there for people who have their expertise in HTML & CSS. In this post I will call them UI Developers.
UI Developers have different backgrounds as other developers have as well. Some of them learned other programming languages in the first step or have a design background or have learned HTML & CSS from beginning on and deepened that knowledge over time. There is no right or wrong in becoming an UI Developer.
The bigger the project the more likely you want to have UI Developers
In a lot of companies and/ or projects the HTML & CSS part is done by everyone, by the designers or the persons who are programming the rest of the website/ application.
Of course there are cases where this totally makes sense, and in this post I don’t want to say that you always need to have UI Developers. But there are cases where you really need them or at least consider having them.
The bigger the product or more complex the User Interface, the higher the amount of developers on the project or developers who are using the UI (e.g. component library) is, the more you need UI developers.
Let’s say you have a website as a digital business card for a company. You may not need a software architect here, right? Same goes for the UI Developers.
But let’s say you have a big project which a lot of developers are working on. Or you have a component library which is shared with different teams or even different companies. An application which is rolled out in different variations/ countries with different requirements. In this case you want to have a Software/ Front-end Architect. Same goes for UI Developer. In this case you want to have developers with expertise in UI development. If you would like, you can even say that there are cases where you need an UI Development Architect.
What skills do UI Developers have or need
I won't draw one specific picture of an UI Developer. Most of the time there are too many factors which need to be considered for a job description. UI Developers can be specialized in different fields such as performance, accessibility, user interaction animations, etc. This variety would make it impossible to make one definition. That's why I would like to draw a bigger picture of what professional skills an UI Developer may have:
- semantic HTML
- CSS (+ CSS pre-/post-processors, CSS in JS)
- performance / accessibility / SEO
- (basic) JavaScript
- (User Experience/ Interaction) animations
- component libraries (
- the glue between the design and development team
- ... and of course I'll have forgotten some skills, but not on purpose. Feel free to add them in the comments
We still have work to do
Back in the days when I started working full time in the industry (my graduation was 2005) HTML and CSS were the task you did just beside everything else (e.g. Java, PHP, CMS, ...).
Over time a lot of things have changed. From optimizing for Netscape, IE6 and Opera in pixel perfect to HTML5 and CSS3 and CSS pre-/post-processor until CSS in JS, animations in CSS and so much more. We even had the discussions that HTML5 and CSS3 is turing complete. From table layout to CSS in JS. The front-end, devices and browser changes are fast.
You may guess that all the changes over the year have also changed how we see or appreciate UI Developers. But sadly, most of the time this isn’t the case.
A lot of UI Developers are still getting told that they need to get better in JavaScript. That they need to learn that specific JavaScript framework if they want to make their next step career wise. Even if they have a deep knowledge of HTML & CSS which blows your mind. We are not there yet where UI Developers are seen on the same professional level as other developers.
The problems of not having UI developers
I have seen projects who have big issues with UI bugs, developers who tell their project managers that a specific bug is a browser bug (even if it wasn’t and they didn’t have the knowledge to know it). Teams who needed days to solve UI bugs, where UI developers only needed hours, projects who needed help just a couple of weeks before go live to fix the whole UI part. All of this can create frustration and problems. Problems need solutions that cost money.
This is no surprise if you don’t have people or a whole team who know how to set up the (let’s call it) UI architecture, who know how to debug (cross browser) UI bugs, who see the pitfalls in refinements, who know how much effort you need for a feature implementation or initial setup.
Would you ever let someone do JavaScript or complete project architecture if they don’t have an expertise in this area?
Why treat it differently? You need people who have their expertise in UI programming - especially HTML & CSS. To minimize your technical debt, to minimize potential bugs which can cost a lot of time (and money) to be solved, to create the best possible product.
UI Developers do not need to be Designers or JavaScript experts or Front-end Fullstack Developers. They can, if they want to.
Top comments (1)
UNICORN!! I'd like the fact...
Here is my other joke if
HTML is a programming language
I just stumbled across in your post.