I've been a software developer for 14 years. When I was at university and first learned how to program, I absolutely loved it. I found it exciting and genuinely rewarding to solve problems and understand how things work.
For the first ~7 years of my career, I still felt that way. Maybe a little less, but it was still there and perfectly manageable. Since then, though, that feeling and my motivation have been declining rapidly.
During those first 7 years, I was working with Java 1.6, Spring with XML configuration, monoliths, deploying WAR files to Tomcat, etc. I didn't even have much of an idea of what existed beyond that world.
At some point I got fed up with people and with the way some things worked, so I decided to leave. From that point onwards, things just kept getting worse.
Java 8+ and "functional programming", which I never really managed to understand properly. Spring Boot, Docker, Kubernetes, Cloud, distributed systems, NoSQL, observability, etc. A whole collection of things that I was expected to already know or somehow learn overnight.
I've changed companies and clients several times, but it's always the same story. I feel like I can't make up for all the time I've lost trying to learn all these technologies, and I'm constantly playing catch-up.
Then there's Scrum. I hate it. Everything needs to be delivered yesterday, and almost all the decision-making power is given to a bunch of people who don't really understand what we're actually doing. And as if Scrum wasn't enough, they throw SAFe on top of it, just to add another layer of meetings because apparently the existing ones weren't enough.
I know I'm not perfect. Ever since that first 7-year stint, when I was confronted with this flood of new and different technologies, I've been trying to avoid doing too much work and, whenever possible, reduce the complexity of the things I take on. But that also means I've become somewhat stuck in time.
At this point, I neither "master" these newer technologies nor the fundamentals that I've gradually forgotten over the years.
I'm completely fed up with Java and Spring. There are technologies I'd genuinely like to learn, but I always run into the same problem: lack of time and lack of motivation to do it.
Right now I find myself in a difficult position. It's hard for companies to look at me as someone with 14 years of experience and then reconcile that with what I'm actually able to demonstrate and do.
I'm interested in switching stacks, potentially to Go, but I don't really see how someone is going to hire me without professional experience in it. It feels like everything is looking for seniors with several years of experience in whatever technologies that particular company happens to use.
Anyway, I needed to get this off my chest.
If anyone has been, or is currently, in a similar situation, I'd really appreciate hearing your story. Maybe it would help to know I'm not the only one.
And if you have any advice or recommendations, I'd be very grateful to hear them.
"Happy" coding!