I am almost 40 and have been working as a fullstack and frontend web developer for last 12 years as a contractor or a full-time employee for different companies. I learnt and familiar with quite a bunch of tech stack, libraries and tooling around it, using them when needed.
During last 3-4 years I had to end my relationship with with 3 clients/employers due to me being slow in producing code. The reason was always - I cannot deliver as much as my colleagues could or as the employer expected me to.
I am good at communication. People I work with always say I am nice to work with, adding vitality to the daily team work, but eventually things go worse as I am usually slower than my colleagues.
I sincerely love technology, web stuff, API, structuring, organising and connecting things together, but it ultimately takes more time for me to get things done than other people.
The problem is quite clear to me but I don’t see the way to improve the situation. I cannot deliver faster because I already optimise everything I can. Even during the tech interviews (one was just today) I see that I don’t achieve the expected result.
If the time pressure is lower, at the end I deliver high-quality readable code, but the time is always the part of the formula, and I understand it, because business needs everything to be delivered faster and sooner.
I feel quite sad and depressed when I see how easily and quickly my colleagues get into the problems and find solutions while I have to spend more time and as a result I question myself as a professional.
How can I improve or should I lower my expectations for the employers and look for less-demanding lower-paying clients/companies? Should I switch to some other tech area where the time to deliver is not the key factor (are there any)? May be there are techniques to improve my thought process?
Any advice is appreciated as I feel like if things keep going this way, I won’t be able to keep staying on a par with other developers around.
Look at Advent of Code, for example. I'll never, ever, finish in the top 100, if you watch the videos of people who compete at that level, you see they start writing code before they've even had time to read the entire problem.
Quality takes time. Some of us have a higher standard, below which we will not go, which makes us slower in the short run. It also makes us faster in the long run.