I just completely changed careers to software, following my passion and gift for solving problems and writing code.
While I don't regret the move, I've been a little disappointed.
Things get done so slowly at my job. I feel like my natural talent and passion get wasted. I also get to do very limited interesting work. I'm not a fresh college grad - I'm used to the corporate world and expected some frustrations and I didn't expect to always be doing something cool. But I was hoping for a little more excitement.
To make matters worse, the tools we use are excessively complex and clunky and in the short time I've been here, we've had several outages of our version control and issue tracking systems.
And a lesser, but still important point is that my talent will never mean much. Being new means I'm not as fast as I'd like to be. But half of my work is process so the best I can do is really a 2x improvement.
I wonder, is it just the company I work for? Is it because we use Java or because we manage our processes so poorly?
Are other companies better?
Is consulting any better?
Edit: What about startups? I have family obligations but I have substantial savings and can stomach some risk.
The other comment I have, unrelated to the above, is that your repeated reference to "talent" is somewhat of a red flag to me. There is nothing wrong with being confident in your skills, but often the idea of "talent" can be conflated with ideas of "if only I didn't have all these procedures, I could write code SO FAST", the consequences of which are generally the reason those procedures exist today. Personally, there is a very small percentage of developers that I have met over my career that I would call "talented" (< 5%) and they would certainly never say it about themselves (and I don't consider myself among them). Talent was in how they thought about solving problems (that maximized quality and minimized work) rather than their ability to "bang out" a solution really fast. The ones that openly refer to themselves as "talented" are often personalities that need to be managed.