Why I became a programmer
December 01, 2018
There were many reasons for that. The main one that pushed me most - I was deeply bored with my work as financial analyst. On top of that, I became a programmer because I wanted to:
- be able to travel and work from anywhere in the world
- have a superpower
- work with intelligent people
- be able to build products on my own
- have that good lifestyle and work-life balance
- express more creativity at work
- build something visible
- learn how the Internet worked
- have interesting and knowledgeable people around
- be able to choose my working hours flexibly
- be able to work remotely
- have a decent salary (note that it is low on the list)
- minimize wasted time at work
If you want the full story - read on!
Background - school and studies
When I was younger, I never thought of being a programmer. I never conceived programming to be something interesting. I never thought I was capable of telling machines to do what I want. Computer was a tool I used mainly to watch movies and play Heroes of Might and Magic, Hitman and a few other games.
I thought I knew what I would be doing professionally. At the beginning of high school, I knew I would study economics, to get prepared for a high paid suit job. Initially, my view was really oversimplified - I wanted to „work with money”, which was my way of calling working in finance. I knew nothing about finance, had no one in my family doing that kind of job. My godfather was a banker - however, we did not spend that much time together and he has a totally different personality. I believed that pursuing a career in finance would secure me a bright future, as a high paid mercenary in a suit.
I did not learn too much at school, actually now I regret it a little, but unfortunately, most of my teachers absolutely failed to ignite the interest in learning more science when I was younger. I feel really dumb now oftentimes and try to understand the laws of the natural world. Despite not learning too much of general stuff I was pretty focused to score well in the final exams, based on which you get to Universities in Poland. I finished school with really terrible grades with an almost lowest possible average score, but hey, it did not matter at all - only the final exam was taken into account by the university. At that, I scored perfectly - over 90% at each subject that mattered. I mastered Maths (which I always liked), Geography (which I never liked too much, however, my view has changed a lot after learning it), English and German, and got to my dream University without a fuss. I remember the moment of checking the final grades online, with my mother by my side, shouting „Fuck yeah!”.
Then I landed at the university. I chose to major in econometrics - which allowed me to taste programming a little, but statistical programming is quite different from what I always understood under the notion of programming. It is a small subset of that, usually working on top of well-crafted libraries that do much of the hard stuff for you (although you can do quite impressive and versatile things with R nowadays). The analysis is the crucial part here, not talking to the computer itself.
I took some programming classes though - basics of VBA, which was not that hard, but that was also quite limited. Nevertheless, it showed me the possibility to automate some work done in Excel and I felt like getting closer to this programming superpower. Then I took a basic Java class, which again made me feel dumb and absolutely not the right person to program. Although I was very excited at first, I simply did not understand it. It was the biggest educational failure in my life - a friend did the whole final project for me. That was embarrassing, but I really did not understand how to do it, and could not spend all my time on that. I drifted away from thinking of working with code again.
For a couple of years, I worked as a financial analyst. That meant mainly juggling data in Excel for me. I became a proficient Excel user, did not use VBA much though. But it definitely was not my dream job. I thought I was on the right track to be earning good money in the future. I kinda enjoyed working with data, but learning finance and accounting standards were utterly boring to me. Man-made rules, unintuitive, boring, all that you had to learn by heart. And although I learned that there is a room for creativity in accounting, and creating millions in revenue was possible (and legitimate) within my excel sheet, this was fun once. Doing the same thing over and over again was killing me. And I was not even earning that really good money for that. This led me to look for some extra gigs online.
I started to look for some financial modeling jobs on websites as freelancer.com and upwork.com. I learned that competition is huge and usually much cheaper than I would like to charge. But I found also some interesting VBA programming tasks. I knew just the very basics, which any programmer could get hang of in a matter of hours. But I applied. I had to color my background a little, but the tasks I applied to did not seem that hard, and I believed I could learn all that I needed on the go, and get paid for that. I got my first programming job. It is really an amazing feeling to get your first job online, from a person from the other side of the globe. I managed to learn all I needed to create a product needed by my customer. Then I found another one. Then I made some extensions for my first client. These were not paid very well, but I was getting paid for learning - that is a really great situation to have. Now I know it is not that unusual for a developer.
After those tasks, I knew I wanted to dive into programming with all my brainpower. Even though I utterly failed at my Java classes I realized that I am absolutely capable of learning enough by myself to provide value for clients. I did not know what to learn next, had the gut feeling that just VBA would tie me to Excel-related tasks, which are not that interesting, but was sure I wanted to go the nerdy path.
Where am I now?
Fast forward a few years - now I am a web developer and absolutely love my job. I am constantly learning new things , which gives much satisfaction. I have the opportunity to work with some of my best friends, don’t have to waste time in the office, usually have very flexible working hours and can live the life I wanted. It took me a lot of time though - I spend about a year learning after hours before getting my first real programming job. And I still don’t know Java ;) But now I am absolutely sure I can learn it if I need it - but it does not seem I do. And I fully understand why I failed at learning it before.