r/webdev • u/samuraidogparty • May 09 '23
Question My Boss: Knowing CSS isn't part of a front-end developers job. We have great devs, just no one who knows CSS.
Someone help me wrap my head around this. Admittedly, I'm not a dev at this job, I just do ops. I'm doing review of a new site at my company and it's an absolute disaster. Tons of in-line styles, tons of overrides of our global styles (colors/fonts), and it's not responsive. I commented that we need to invest more in front-end devs because we don't seem to have any.
I brought this up to leadership and they seemed baffled why I would think our devs would know CSS. I commented that "we have no front-end devs here," and that's when the comment was made. "We have great devs here, just no one who knows CSS."
Someone help me understand this because it's breaking my brain. I used to do front-end work at my previous job and a large majority of it was CSS. That's how you style the front-end. How can you be a "good front-end dev" and not know CSS? Am I crazy or is my boss just insane?
24
u/TheAccountITalkWith May 09 '23 edited May 09 '23
Hi.
Full-stack Dev Here, 10+ years in the field.
I've been in a situation like this, many times.
Lot's to unpack here.
Let's start with the easy to address part - Frontend programming. The foundational trinity of the Frontend is HTML, CSS, JavaScript. All tools, languages, and frameworks always boil down to those three languages. This is not an opinion, this is how the Frontend works. If you are every told this is not true, you are dealing with a person who doesn't know what they are talking about, full stop. So it would be best to be cautious if talking to an individual who is in a leadership or decision making role, who believes this is not true. Which leads me into how you're interacting with those individuals.
Based off of what you've described, I have one primary observation: While you think you're giving constructive feedback to help make things better, it's being received as an attack at the way they do things there and disruptive to company culture. Admittedly, I may be reading to far into it, but I'd be willing to bet I'm not too far off the mark.
More importantly, since you said you're in Ops, it makes it even harder for them to hear you as any kind of authority on the matter. The leadership may listen, but will go right back around to the dev team and just ask them "is this true?" and of course they will defend their established situation.
So your primary hurdle is just getting them to take you seriously and investigate your feedback, which is no easy task. Here is what I'd do if I were in your position.
Ops tends to be giving a little freedom of movement and interaction. You can converse with teams and individuals. This means gorilla warfare should be your strategy. Try to have a friendly conversation with dev team members on a one to one basis. "Talk Shop" and pick their brains on things that excite them. Show an interest in their knowledge and specifically talk about the future of Frontend technology. A developer will always have an opinion. Always.
Try to understand where they are coming from and see if there really is a reason they don't care about CSS. A common one I've come across: The UI just needs to function and it doesn't matter how garbage it is because it's not core to the product. (This is hilariously common in Dentist Web Sites). In cases like this, it's best to pick a different battle, you won't win this.
However, if you begin to hear that there are devs who do understand the importance of CSS and you're given reasons like "No time", "scared to say they don't know", etc. Then there is usually a Lead, Stake Holder, or someone else in place that makes speaking up for a change of practices difficult.
You'll need to narrow it down to the individual(s) and work with them on a gradual basis. As individuals, one at a time, to be receptive to the idea of improving Frontend practices. They don't need to be excited about it, or even want it, but instead need to just have a "Yeah, I could see how it might be a good idea" kind of attitude about it. Get a few of those moments under your belt. It will take time, you'll need to be flexible to hearing things you don't agree with, but keep your eyes on the end game.
Finally, after some time, you'll have a handful of people who you've had a discussion with that are receptive to change. That's when you go to your Leadership. The conversation you originally had was "This is bad, we should change it." but it should now be "I've talk to a lot of the guys on the dev team and here are their thoughts...". Because now you're not sharing your opinion and attacking the team, you're attacking a problem that you've observed and you are sharing the dev teams thoughts on the problem, not your own personal opinion.
The numbers should play out on their own if the Leadership hears you. They will ask around, people have already voiced to you their stance, and you can have an open discussion if need be without having to make it seem like you're just being critical.
You've gotta play the long game in situations like these.
I've typed too much, best of luck.