thank you for writing this article. Here’s the thing though: based on my experience with React, Redux, and generally building small to large-scale apps and dashboards, I don’t agree with most of what you wrote.
To begin with, as Antonio partially pointed out, the job descriptions are not reflective of how most teams function in the real world. Frontend developers absolutely care about CSS. How would one build a layout without CSS? How would one avoid bloat and define best practices without worrying about CSS? CSS isn’t an isolated discipline, it must be taken into account at multiple levels of the frontend stack.
“The role of the UI designer is to build great User Interfaces” well, actually, the role of a UI designer is to… design UIs. Not necessarily build them. Of course, it’s wonderful and helpful when UI designers know about CSS and can actually build things themselves, but that’s a different topic.
I’m not going to delve into your descriptions of Core dev and Architect, but I will say that if the Architect is not a frontend developer, he should not be dictating CSS frameworks.
Your “Approaches to use CSS with React” section is pretty informative, thank you for listing all those methods!
However, I don’t understand your “What to Choose” section. You’re telling us readers what you use, but not really helping us make a decision based on facts and information. Why would we go one way or the other? What are the problems you’re attempting to fix with your team’s approach?
You mention that your team believes in “writing CSS in JS”, but don’t show any example of that, so I looked into your dev tool, React Storybook, to see how you implemented those principles. But here’s the thing: the React Storybook demo doesn’t actually use CSS in JS. Instead, it imports a stylesheet (from a NPM module, for some reason?) and applies it globally, effectively demonstrating… nothing :(
Anyway, I hope I wasn’t too harsh and maybe inspired you to go into more detail and/or debate in a future post.
Cheers!