I was not in an environment for intellectual growth, nor was I in an environment that would have indicators of high IQ.
Through pure luck, I had a high school teacher that somewhat set me on the right course. For half a day, two years long, I had this teacher for a CAD class. He told me attitude was everything and encouraged me to enroll in college. My first two years weren't great. I struggled in classes like algebra. I also didn't know how to study.
After two years of getting nowhere, I moved to a large US city as a result of certain life circumstances. I finished up my undergraduate degree and took a year off. I didn't feel very happy though. I wanted to get a graduate degree. My company was willing to pay for it, as long as I worked 40 hours a week and made good grades. It was a complete change for me, kind of a fresh start. I decided I would take the university serious. Because my undergrad wasn't computer science, I had to complete all of the undergrad computer science courses. So I had at least four years ahead of me to get my masters.
Only because I worked really hard and studied a lot, I would often be the top performer in my 3 calculus classes, discrete math, and so on (this wasn't always the case... but hey, I was working a full-time job too). I ended up with a masters in computer science, something I never thought was possible for me.
Something that inspired me was that I'd see the international students (mostly east Asian and Indian) study very hard. They would study all day long in the library. They seemed like the very definition of self-discipline. I adapted to that the best I could while still working 40 hours per week doing .net programming.
It seems like I fit the premise of this paper and can relate: Low to average IQ who often did better than my higher IQ classmates and friends.