Journal #166 – Becoming, Being A Software Developer, and Moving On

When I was younger, like around 15, I didn’t know what I want to do like everybody else. Then a friend of mine started talking about making video games as a career because back then we were spending lot of our free time playing video games.

I remembered becoming inspired, deciding that I want to be a game developer. I started working towards that goal. So I studied hard for my GCE O Level examination and managed to pass all my subjects.

My greatest fear back then was failing mathematics. I have always been doing very poorly on that subject. And so I was decently surprised I passed it.

Then I went to choose a polytechnic because that was the fastest formal route that I could see to becoming a game developer.

So I went to applied for a course known back then as Diploma in Digital Entertainment & Technology. But I couldn’t get in with my GCE O level scores. I got chosen for the course under my second option, Diploma in Information Technology. That course had a final year specialisation in game development.

So I spent the next two years and a half learning about software design, Java programming (Standard and Enterprise), and UI design before taking the game development specialisation in the last semester.

I didn’t do too shabby but my results could have been better. I was genuinely surprised that I scored a Distinction for the course module on Computer Graphics as it was a math-heavy subject.

After getting my Diploma, I applied for University and got into Computer Science at Nanyang Technological University. After finishing my two years of conscription service, I went to work at my former internship company on a full-time basis before converting to freelancing for them.

It was during that time I went to develop my first ever internal product.

When my university program started, I studied more mathematics, algorithms, networking stuff, and software engineering. I went for specialization in high-performance computing by taking three modules in my final year relating to parallel computing, simulation and modeling, system architecture. My final year project was also related to high-performance computing in the form of me doing sparse-matrix benchmarking for Intel Xeon Phi, Nvidia Kepler GPU, and Intel Xeon CPU and comparing their result.

Why I chose High-performance computing? The reason was simple.

During the years while I was serving my nation, I actually participated in World Community Grid and Folding@Home. I was inspired by the use of supercomputing to solve world’s problem. I wanted to see if I can have a career out of it.

After graduating with a Honours Degree in Engineering (Computer Science), I couldn’t find a decent job related to supercomputing. Singapore is too small to be supporting a supercomputing community or industry. So in terms of job, I went searching for software development.

I landed at a software house focusing on developing workflow products. That is my second exposure to a “product” development. After that, in my second year at the company, I requested to be involved in maintaining a payment gateway, also the company’s own product.

However, I did left the company for another because the company violated one of my personal value: Integrity.

I decided to try some kind of consulting work and during my product development days, I was also involved in the development of authentication and authorization application. I saw some potential there to grow in and besides I was interested in security. And so, I went to see if I can do some work there.

Now, if you have been reading my journals from around March 2017 until July 2017, you will see me talking about my days at this company. While I was there, I suffered verbal abuse from my boss, which ultimately led me into depression. This depression, gastric-issues, constant insomnia since Feb of 2017, and comments from my boss and manager led me to make the final decision to quit. My mental and physical health just isn’t worth it. It was also then that I thought maybe I want to go back to software development, specifically product development. But first, I needed a break.

So I went and spent the whole of August doing new things. I signed up for a drone piloting course and an art course. Since I also needed some money, I went back to do work with my client. They had some new issues needing my attention.

In the meantime, I did some self-actualization work and re-evaluate what I want to do in my life. That was how I determined that I actually wanted to do more writing, less management, less big-picture, and less running around.

So I did more writing.

Then I came to realize I no longer have that strong passion in technology or software development anymore. But it was too late as I had signed the employment contract with my current company. I couldn’t back out of it without penalty. So I went to work, struggled for a week to adapt to corporate environment. I kept telling myself too that what I have now is just simply a job to pay the bills. Yesterday’s meeting that I had with my project team also revealed something about my level of disenagement. I didn’t talk a lot and did my best to push away stuff.

Last but not least, I also made the decision that this job will be the last full-time software development job I will be taking on. I’m trying to save up enough money so that I can have a do-over. It’s time for a career change. I do have a client whom I do freelance work with and I shall continue to work with them until the end of life for the software that I’m maintaining for them. That shall be the supplementary income that I will use to speed up the building up of my savings.

So what’s next for me?

It’s simple really. But not easy.

I will be transiting to becoming a full-time writer of sort. But what kind of content that I want to be writing, I’m not sure yet. Maybe I will give journalism a go. The type of fictional and non-fictional writing that I have been doing so far shall continue. As for job, I will take on some kind of part-time employment and see how it turns out.