> Front-end and back-end are pretty arbitrary labels.
I disagree. These are somewhat loose business standards that people have a general idea what they mean. The confusion mostly comes with the middle tier ( aka the interface between front-end and back-end ).
> By nonetheless making that distinction chances are you're creating a culture where developers neither take responsibility for the end result nor have any agency in it.
No. The front-end and back-end usually denote responsibility and security. Sure you can know HTML and SQL as a front-end developer but generally, the back-end servers itself ( especially in production ) are
taken care of by DBAs, sysadmins, network admins, etc.
For toy projects that you do for school, you can wear all the hats. But in larger projects, nobody has the time or domain expertise to wear all the hats.
Front-end usually deals with getting data from the back-end and showing it to the client. Back-end deals with clustering, replication, network availability, disaster recovery, etc ( i.e. making the data available 24/7 ) or whatever the SLA dictates.
The difference between front-end and back-end isn't HTML or SQL or even where the code runs. It's about responsibility and security.