My 2c, stop looking for excuses, stop assigning your self worth to the quality of your work. Mistakes happen, bugs are impossible to avoid. You may need to add rigid processes to your work to avoid the most egregious examples, but you just have to live with the fact that you will write bugs. If you find you write more bugs than your peers and they have more impact than your peers, that's fine maybe you are not cut ou…
The things that both of them have in common is that they're sustainable. If you do not like your current position, make it sustainable for the time being. I was unable to do that, twice, so I think I'm at a point where I cannot do what I need to do.
Even the fun work (FOSS) is something I cannot sustain for 40 hrs a week, despite how much I enjoy it.
Time will tell, though