My father is a programmer. When I was only a little boy, he showed me what programming is: I remember learning a few things about algorithms, going to a small competition and winning (there was only one more participant at my age range, so I've just been lucky), going to a software camp, and so on. I enjoyed these things, so I guess at that point programming found a place inside my heart.
After a while I started doing other things, and I forgot that I like programming so much.
When I was still a student, I started learning about computer networks. Next step, I took a job as a technician for IT equipments (I was not an engineer yet). I was spending all day driving from client to client, installing and configuring networks, unsuccessfully trying to solve the problems that our low quality equipments had. It was not fun at all, and I was using my hands more than I was using my mind. I felt I was wasting my time, that I was limiting myself.
Of course, working in networking can be a wonderful experience. For me, it just wasn't the right place (company) and the right time.
I decided to make a change. I was thirsty to use my mind and creativity, and to stop experiencing limitations.
From the list of options, programming was the only one I knew something about. Unfortunately, because of the long break, I didn't have any of the necessary skills and I didn't know any of the emerging programming languages.
I decided to give it a try, anyway. I quit my job, and came back home for the summer vacation to learn a programming language. I chose C#.
2 months later I was ready to head back to Bucharest and start a new career. I didn't finish everything I wanted to learn, but the vacation was over and I had to get going.
Soon after arriving back in Bucharest, my luck showed again: after 1 or 2 interviews, I found a job as a junior C# developer. From that point on, I started programming for a living and never looked back.
Looking at it now, my first job had a very important role: I had to go through something limiting and unfulfilling, in order to learn to appreciate life and the opportunities it can offer. A few years passed since then, but almost each day I realize that I love what I do and I feel grateful.
Being able to enjoy and appreciate what you do is very important, but it's not easy because we always tend to want what we don't have. For me, the memory of my first job is a tool which helps me appreciate software development. I don't know what I would have done without it. In the past, problems were making me question a path and look for something else. Now I know that they are here only to help us learn and grow.
If you liked this post, I encourage you to read "The 4-hour workweek".