I'll be frank, your foreign, in a foreign land, not only based on your nationality but as a female in a male dominated world. This screams to me that "I don't have mentors or close associates at work" the kinds of folks who are going to be frank and honest with you, who are going to call you on your mistakes, who are going to push you to get better.

The harder question for you is, are you having a moment of self doubt, or are you really looking to get out? If I reflect back on my on career then at points I think I have said everything you are saying... but I had folks around me who listening and giving me answers to help me keep going.

After reading through the rest of your responses in this thread let me dish out some advice

-- We all have moments of self doubt, your aware your having one, so thats huge

-- Looking at your own code and seeing the flaws, thats normal. There are actors who hate seeing themselves on film because they only see their mistakes. If you aren't looking back, and you aren't seeing problems then your either foolish or over worked.

-- Small is easy, big is hard. This is true of all things in life, if your making a holiday meal (large) its a whole hell of a lot different than making your lunch.

-- Honestly you need to read this: http://discovermagazine.com/2015/june/13-curiosity-we-have-a... if your current work culture isn't like that, CHANGE JOBS NOW. Everyone screws up, if you find it, and your willing to own it, they should support you. I once lost several hundred thousand dollars with a bug, at the end of the day my boss invited me to a meeting, I thought I was going to to get fired and he could see it. His response was "you did the right thing, and your never going to make that mistake again, your worth several hundred thousand dollars as an engineer now so relax.

-- Learning new languages sucks. Its hard and your going to be terrible for a long time. Deal with it. There is a quote from a cartoon "sucking at something is the first step to becoming sorta good at something"

-- Your use of VIM/C and unwillingness to part with it seem to say that your stuck in a rut. Vim is great don't get me wrong, and if your going to learn a new language a bare bones editor forces you to read... but in the long run your missing out on a world of tools that will make your job easier and faster! Change is hard, your going to suck at using the tools but you will get better with time

-- Reading code is even more unnatural than writing it and I think I suck at it. I have been told by several people that I have an amazing proficiency for reading code, that no one they know is faster or better at it. You know what though, I read a lot of code, a LOT of code, a good portion of my day is spent looking at other peoples work... I read peoples checkins, I read bug reports and fixes, I read things that interest me that aren't even remotely related to what I'm doing at present.

-- No one is perfect or even good at everything... so your code doesn't scale out of the box, the person next to you who's does, have you ever read it? if not go do it (read code) and figure out what THEY screwed up... keep reading it till you understand it, till you find the mistakes...