My Career Switch Experience

This post is about my experience switching from being a physiotherapist to a software engineer. As a physiotherapist, I would be on my feet more than on the chair, helping kids with all sorts of conditions find ways to get stronger and do things that you and I may take for granted. It is surely an aspect that I think of and miss, however, tech is definitely something I have an affinity for, and doing something that suits you is important enough to make some tradeoffs.

While the possibility of becoming a programmer never crossed my mind when I was younger, I have always been curious about technology. I remember installing android on an old Asus Eee netbook my mom passed to me and feeling like a champion, even though it was terribly useless. Most people may think it is a hard thing to do, but actually it is just about being good at following instructions made by super smart people. So yea, I guess I am good at following instructions, which turns out to be pretty useful in software.

The Spark

The physiotherapy program I was in had 2 parts to it. A 3 year diploma which consisted of the main training to be a practitioner, and a 1 year degree conversion which focussed on some higher level aspects of the profession.

In between the 2 parts, I worked in a research related position in the school. My role was to test some augmented reality systems for stroke rehabilitation. As with all software, there would be bugs which affected the usability of the system. Furthermore, since these systems were developed by students who had graduated, many of these bugs weren't gonna get fixed.

I thought that maybe I could fix the issues and get the system working as I wanted it, which led me to my first computer science course, CS50, which had online videos and course material, and taught in a very thoughtful manner. Ultimately I didn't manage to make the system better, but this experience gave me new perspective of technology, and was the start of my journey into tech.

The Try and Fail

Ruby on Rails and Full Time Self Learning

I decided to leave the research position to learn programming on my own. My thinking was that if I put more hours into this, I would have a better outcome. I focussed on Michael Hartl's Ruby on Rails Tutorials and bought his content. The content was great and introduced me to many concepts of web development. However, I didn't do any real life projects, which made all the learning non applied and difficult to internalize.

Self Learning full time may seem like an appealing and cheap way to upskill yourself, but the danger is spending your time inefficiently, and even greater danger is that of motivation. This experience had an effect on my subsequent decisions as you will see.

Move Correctly

Sensing the poor results of the self learning attempt, I started cold emailing startups that looked interesting to me. This was how I got an internship at a startup called Move Correctly that was developing software for movement analysis for injury prevention. I contributed domain knowledge and simple website tweaks while learning business development, and having a closer look at one way of software development.

Preparation

Competitions

I interned at Move Correctly until part 2 of physio school came. The next few years were focussed on being competent in seeing patients. During that time I took part and won a few startup/tech/business hackathon type competitions.

Learning to work with strangers to build something useful is a great way to understand how a diverse team with the complementing attributes can achieve things. Prototyping hardware and software solutions and learning from industry volunteers was also invaluable exposure into how tech works.

Udacity

Toward the end of my scholarship bond, I knew I was going to go into tech. I just didn't know how.

One hot topic I was interested in was machine learning. So I took an online course on Udacity, thinking that maybe that would be how I get into tech. Udacity had a monthly subscription payment model, which means the faster you complete a course, the less you pay. This interestingly gave me motivation to complete the course. So while I could have done everything for free, I might not have done it at all.

Machine learning is interesting because it brings hardware, software, statistics and domain knowledge together. You need not be an expert in all to use the available tools, but you get to appreciate how everything comes together. And it's cool!

Execution

Planning to Leave

Switching careers is not something you do without planning. Finance, possible roadmaps and opportunities, and research on how to have the highest chance of success must be done. I was considering 2 choices at that time. To take 6 months to self study more in depth data science and machine learning or to find some place to get more learning done. I ended up paying for a coding bootcamp as there were government subsidies. Previous experience of self learning and paying to learn also nudged me to take a chance at the bootcamp.

AWS Certified Solutions Architect Associate

I had 1 week before the bootcamp started. I decided to try for an AWS certification, since AWS is very widely used. This was one time that my Singapore Education System trained me well in. I brute force mugged my way through the content and managed to pass the test!

Bootcamp

I attended a bootcamp that focussed on web development. Prior to the bootcamp, I was excited as the reviews of the instructor from previous batches were pretty good. Turns out I got tricked by marketing who conveniently 'forgot' to update their list of instructors. I did make good use of the time though, as there were other motivated students who were willing to pay to learn and we fed on each others' energy.

Luck and Helpful Strangers

C++ and Carousell

Just before the bootcamp, I took some time to pack my room. I sold a few items, one being a big book called The C++ Programming Language by Bjarne Stroustrup. I sold it on Carousell and the buyer happened to be a cool guy who was very keen on connecting people. He linked me up to his friend, and his friend linked me up to her friend, and that's how I got connected to my first tech job at Kronikare, all in the same day!

People often tell you that connections are useful, but it is important to remember that connections can come from anywhere, not just business engagements.

Tech Job 1 - Kronikare

Kronikare is a MedTech company using AI for wound assessment. It was a great fit for my domain knowledge, machine learning experience and web development skills, and thankfully, I had a job offer from them before the bootcamp ended, so I did not have to spend time and energy searching.

I covered the frontend and devops/infrastucture roles initially. I like presenting ideas diagrammatically, which gave me opportunities to document security and software architecture of the product, which led to me doing a Graduate Certificate in Securing Ubiquitous Systems at NUS ISS, as well as learning and thinking much more about software architecture than a newbie would.

At the same time I was the Head of Quality Assurance and Control, which required quite a bit of admin work, especially for ISO 13485.

While I had a lot of opportunities to put things into practice, a comment from a fellow bootcamper with finance background made me rethink how things were. My friend was also doing dual roles in finance related stuff and development work. I thought that was great that his prior knowledge came in handy, but he countered to say that it would be hard to find another tech job since he wasn't coding as much as he'd like to. I wasn't too, with all the different responsibilities I had.

Tech Job 2 - Kaddra

I joined my current company Kaddra, a mobile eCommerce start up, seeking to do more development work, and get to experience a different development process. eCommerce systems are really quite complex since there are a lot of things to coordinate when someone wants to buy or sell something. I am glad to be able to work on a variety of features and problems on mobile, web and serverless, instead of administrative work.

Summary

Yup so that is my experience. I was pretty successful with the switch, however your mileage may vary. 3 key takeaways I would like to share are:

  • 1 Don't leave it all to chance
  • 2 But don't discount luck too
  • 3 Work hard, plan well, be agile

Not everyone will be successful with their career switch, but if you don't give it a shot, who will do it for you?

Cheers,

Jerome