We all know web developers that are so busy doing "technical" things that they don't have time to think about end users.
For them development is all about patterns, abstractions, refactors, technical debt (in another post I'll explain why technical debt doesn't really exist)...
Don't be one of those developers.
You write code to solve problems to the users of your application. Every time you are working on something that adds no value to those users you are doing it wrong.
It's been a productive day of work if you have made things faster for your users, if they need to click one less thing to perform their job, if a dashboard has the new data they've been requesting, better accessibility...
You have a job because your application has users. It's those users that pay your salary, not your company.
Prioritise work that improves the life of your users over work that only helps you and your fellow developers. Your priority is to make things easy for the users not for yourself. If you can have both then that's perfect but if you need to choose there is only one right choice.
In an ideal world we have unlimited time and resources but more often than not you need to take decisions. There are trade-offs to be made.
One of things that differentiates a senior developer from the rest is their ability to make those trade-offs. Another one is that they used to have user metrics in their dashboards. Application and server monitoring is absolutely necessary and so it is knowing what users do on your platform. How many times they access the application? What sections do they visit? What actions they perform the most? What reports they use?
Remember, the code you write is just a means to an end: Helping users on their daily tasks. Everything else can wait.
Cover image by: Nikkotations