🧵 It's time for our industry to realize the title "frontend developer" is obsolete. The vast majority of these profiles are actually "JS engineers", and they're usually quite good at it, but they're not as good at all the other things contributing to great frontend experiences.
Specifically, most frontend developers have an abysmal knowledge of CSS, even though it's a crucial part of building fast, responsive, and smooth user interfaces.
I cannot count to number of times I've seen offensively bad UI transitions because they were relying on expensive properties like `width` or `margin`, or all the terrible touch-based sliders performing poorly because they were not using CSS Snap Points, …
Or all the custom form elements being totally inaccessible because the devs didn't know how to override default styles, or all the jarring sticky navs not using native positioning, …
Or all the janky custom JS anchor scrolling because the devs didn't know about CSS scroll-behavior, or all the massive reflows and resize handlers because viewport units and CSS grid weren't used for layout, and a gazillion of other terrifying examples.
It matters a lot, because this lack of knowledge of CSS makes it impossible to build native-like user experiences on the web, even though the platform is very much capable to deliver these results nowadays.
Our industry seems to have acknowledged that backend and frontend developers require very different skills (even though they often use the exact same language), and yet it's struggling to see there's too much bundled into the term "frontend developer".
The modern frontend developer is most often than not a "Jack of all trades" mastering JS (or even just a framework) and barely tolerating HTML/CSS as a necessary evil. That's understandable. I strongly think it's a different specialization, and it's too much for a single person.
You can follow @bdc.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled: