I've worked in life science research for several years. I have no formal computer science education.
I've programmed some pretty complex systems for analyzing biological data -- image analysis, advanced statistics, distributed computing clusters etc. I always manage to get the job done.
I applied for a tech job on a whim. They directed me to a Codility interview with some puzzle questions. I didn't do as well as I had hoped. I don't often deal with those sorts of problems at work, and I don't need to think about things like O notation to do my job well.
Am I a bad programmer? Have I just been dealing with easy problems and deluding myself? Has this happened to anyone else?