
Frontend development has come a long way in the last decade. Yet, some persistent myths about what we do as frontend developers refuse to fade. The...
For further actions, you may consider blocking this person and/or reporting abuse
After working on multiple projects, you begin to realize how backend is actually the simple and most straight forward part of development
You just can't say which is categorically "harder".
Try working on some project that's mostly database with lots of interconnected data and you'll quickly realise how hard it can get to make those queries run reasonably fast, while the front-end might just be a table and some endless scrolling.
Then take that back-end and scale it up to like ten locations around the world. Oh and remember there's almost no budget left for infrastructure costs.
There's really no hard rules about what's the "hard part" of any project, it always depends on what your requirements are. There's just currently a strong emphasis on front-end heavy products these days
It is when the database schema has been built by the DBA rather than the project manager or (well meaning) front end Devs who simply don't know, understand or care about data types, indexing, relational integrity, query optimisation and transaction scope.
It's not really the job of the DBA either (who often aren't developers at all), but I know what you mean. It's the job of a developer who does understand all those things.
Depends on who is defining DBA. It can mean anything from hardware architect through DevOps, high availability management, DR planning, Pen testing, SecOps, performance tuning and everything in between. Good database design is at the heart of performance and you won't see the cost of failure until you are at huge scale by which time it is often too late. In startup does anyone care whether that String field is Char 20 or Nvarchar 255 or just plain text, or what collation you are using. They will do when you get to 10M database reads an hour, not to mention the storage, compute and traffic costs of having the wrong types and relationships.
Building a backend involves much more than just setting up Laravel or Symfony, adding some data to a database, and exposing a few APIs. The real challenge begins when you need to integrate your backend with third-party services. That’s where various problems arise. Unlike in the frontend, you can’t simply test things on the fly and get immediate error feedback. Some responses may take hours or even days to arrive.
And it gets even better (or worse) when, as a backend developer, you move to a new job at a large company. Often, you’ll find yourself in the depths of legacy code—working with a massive, outdated monolith. There’s little fun to be had unless you enjoy playing Indiana Jones, navigating ancient and mysterious codebases.
On the other hand, frontend architectures are easier to replace, and you can quickly see what works and what doesn’t. This immediacy makes working on the frontend simpler by comparison.
If it was simple we wouldn't have way more backend devlopers than front-end on projects, backend is where you can make very bad mistakes related to business logic and such
Yes, and you can see this during development. Backend is something I let do by the AI, when there is no logic in the content.
This was true 10 years ago, but it is even more so nowadays. I think many people don't even realise the amount of complex stuff CSS can do these days, and how much you need to know to use it effectively.
It used to be a language that you could learn on the side to complement your "main" skill (which would usually have been some back-end language or maybe JS), but these days, CSS is its own entire thing that needs to be learned just as much as any programming or scripting language.
I'd go further: Frameworks Solve Anything
Don't get me wrong, frameworks have a purpose, but they fundamentally cannot "do", and by extension, "solve" anything that couldn't be done without them. All a framework does is give you a predetermined way of doing common tasks. That's the only way they differ from a library.
A framework is like a nice tool box: there's a place for every tool so whenever you need something, you know where it is. It won't organise your tools for you, and it certainly won't use them for you either. You still need to learn your craft.
A framework is like a nice tool box: there's a place for every tool so whenever you need something, you know where it is. It won't organise your tools for you, and it certainly won't use them for you either.
Well said! 🙌
Absolutely right on all points. But, when you think something if difficult, that is when you are still learning.
As a long back-end developer who has gotten into front-end (using Svelte... had to learn React too) recently, I still grant the high ground to back-end developers. Why? Because none of my front-end devs work on the difficult algorithms. All those have to be worked by backend devs.
Examples:
So, unless I am proven differently: Myth 3 is not a myth: Is a reality.
No offense, but it looks like you may need to hire better front-end developers.
That's the thing. There are none. The really good devs are always backend devs.
"There are none." Really? Oh well. Good luck!
Your response proves my point. You're probably a front-end dev that takes offense on what I said. Why? Because you don't realize that I'm talking about statistics, not individuals. I cannot possibly know and judge every front-end dev out there. Of course I'm talking statistically, but front-end devs fail to realize this is a statistical assertion, which talks about their ability to think logically, which directly deters their ability to program algorithms.
CSS is easy—at least compared to how it used to be. Sure, there are more features today, but let’s be real: if you didn’t experience the old days, you don’t get to say CSS is hard. I remember the times when you had to prep graphics in Photoshop just to create rounded corners, shadows, or gradients for buttons. We used tricks like Sliding Doors to achieve what you can now do instantly with a few lines of CSS. And let’s not forget battling the endless quirks of IE5 and IE6, or the designer handing you the 50th final-final-final.psd file with “just a few small changes” that meant hours more work.
Today, browsers are way more consistent, with only minor differences when it comes to cutting-edge CSS features. Hardly anyone still tests their site across every possible combo of Windows, Linux, macOS, Android, and iOS browsers—most browsers now share the same rendering engine, so the workload is way lighter.
If that’s still too much effort, there’s always a utility framework like Tailwind. I’ve gone from hand-writing CSS in Notepad to building custom Sass frameworks, and in 2018, I dropped it all to use Tailwind. For anything Tailwind doesn’t cover, I’ll just write a bit of plain CSS.
And then there’s Git. Nowadays, everyone uses Git for version control. It’s hard to imagine working without it. But back in the day? There was no version control—none. You didn’t have staging environments or fancy CI/CD pipelines. Changes were made directly on the production server, often over an FTP connection. That’s right: you’d upload your files live and hope you didn’t accidentally break something critical. There was no going back if you did. Today, we have branches, pull requests, and the safety of reverting commits. It’s a completely different game.
Let’s not forget how AI has also made life easier. It can handle a lot of the tedious stuff for you, from debugging code to generating layouts. Of course, you still need to know what it’s doing, but that’s a luxury we didn’t have in the past. Honestly, looking back, I don’t know whether to feel nostalgic or relieved!
"Browser inconsistencies that make you question your life choices."
Honestly, I wonder what the hell people are complaining about these days. Aren't most of these based on the wrong idea that things need to look the same everywhere?
Both front- and backend have their complexities and quirks. For the backend code there is more control of the environment. That is why there are more language choices. On the frontend there will always be that one render engine that does things different, which leads to more code to do the same thing.
When node was released the main concern I had was the lack of separation between back- and frontend, because it is all javascript. On the backend we are for instance concerned that things like API keys, database connection credentials and so on don't get exposed to the public. If you come from frontend development, everything is public, there is no need to think about those things. So you need to train yourself to be aware of things like that.
It is better now, but I still see for example nextjs sites that expose way too much data.
I don't believe people can be a fullstack developer any more. Both back- and frontend have become highly specialised fields with many components. The days when you had a server that contained a database and webserver , and one dominant browser engine with a dominant screen size are far behind us. You can specialise in one or the other and have notions of the other parts to make everyone's job as conflict free as possible.
Im a front end developer, i met some backend developers that throw the sorting algorithm for me to deal with. Some backend developer do it all and all i had to do is calling api and done. i have big respect to the backend developers who do all the complicated algorithm and didnt throw it to frontend developer to do it
frameworks don’t solve every problem
Well said
"a sudden design change turned a simple frontend task into a week-long headache" I relate to this a lot
Great article, I enjoyed reading it. Cheers
I think you'll find this article really interesting!
dev.to/georgewl/top-5-tricks-for-w...
Why so much disrespect???
This article is definitely not written by any AI. All the points are spot on except may be number 3. A very well written and thought provoking article this is. Very disappointed...
Excellent post
Wisej Framework is the best framework
great.
Incredibly well written enjoyed every bit of it!
i use to think css is simple but it's another level like you spend alot of hours to come up with layout