Somehow I often was the least bad person doing the job, haha. So yes I failed often, but other people around me failed more, so it didn't matter.
I got screamed at once for not doing something before going home early. I asked for early leave, my boss said yes but do XYZ first, I didn't, he got angry.
Anyway, to get back to your problem. I have the feeling that in software development, people think they know more than they actually do. They bite off more than they can chew, then they got too much complexity in their systems and fail until they get time for a rewrite or a major refactor. I saw this soooo many times. People smarter than me getting fired because they try to do things above their skills.
It helped me to admit what I don't know, be a bit less ambitious, and deliver value with a bit more boring systems.
Don't know if this is your problem or not, but it helped me to get better at what I do, at least in the eyes of people paying me, haha.
Well, I can absolutely see a bit of myself in that description xD
I do have to admit to the people above me when I need more time to figure stuff out. I tend to take shortcuts when I'm under pressure, and I ALWAYS pay the price later on.
Thank you :)
The trick is to replace the shortcuts with simpler design up front.
Maybe this will involve a bit more repetitive coding, but at least you still got control.
Delivering "acceptable performance" with fewer bugs is often preferable to delivering "awesome performance" with many bugs.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.