From Hardware to Software

Yan Paing Oo
Healint-Engineering&data
5 min readOct 28, 2021

“What do you want to be when you grow up?”

is a typical question Asian kids get asked, with an endless list of answers. But growing up in Myanmar, there is just one correct answer. No other answers are allowed by parents (spoiler: neither did mine)!

“Medicine!”

I wanted to be an engineer. Not just an engineer; I wanted to be an automobile engineer!

After finishing high school, I was asked the same question again and gave the same response — automobile engineer. Unsurprisingly, my answer was not accepted. So I made it into medicine at a local university in Yangon, which was the ‘expected’ route in 2010. Undeterred, I boldly made a deal with my parents to major in mechanical engineering at Singapore’s Ngee Ann Polytechnic. This wasn’t by random, since my uncle said that was the closest one could get to be an auto engineer.

Polytechnic at the Little Red Dot

So, I spent 3 years in polytechnic.

In my final year, I had a choice of research projects to work on, from themes such as lifestyle, building innovation, rehab, automobile..so obviously I went for automobile!

My electric go-kart project on display

I got to partner with smart and helpful peers, working on electrical controls and integrations. Thanks to commitment, teamwork (and a bit of luck), the project snatched school director’s delight together with a silver award! It was my most memorable year of my polytechnic education.

Nanyang Technological University: You Get What You Ask For

A mechatronics project team with the demo product in front

Next, I enrolled into mechanical engineering (specialising in mechatronics) at the Nanyang Technological University, which introduced me to computer basics. My first coding experience was on a robotics course project, and I struggled initially. To me, coding felt like a language from another world. Despite the early struggles, I decided on a final year project that required both hardware and software. I wanted to push myself to code, and told myself that one learns the fastest in survival mode!

YOLO, right?

I faced a steep learning curve for software coding. But schools get you in for you to learn, right? I luckily had plenty of time to study in final year. Then, a friend of mine asked me to manage software coding for a couple of robotics competitions that he was applying for.

“Yes!”

To help myself, I read robotics courses from Udacity and Coursera (mostly free). We made it up to finals for both competitions. It was fun and eye-opening working alongside robotics geeks. If you think robotics geeks are introverted or shy, well, just ask them how robots work!

Two of my robotics teams going for competition at MBS (left) and in Shenzhen (right) in 2017

Working Life, Robots and More

When I graduated, I was a mechanical engineer by training, with robotics experience. For a fresh grad without work experience, I sought out opportunities that offered project experience. I eventually joined a driverless bus team as an entry level software engineer. You may think I competed with computer science graduates for the job.

“No”. They do not normally do robotics. Only a few do robotics. And robotics isn’t rocket science!

My first project involved artificial intelligence (AI). I was tasked to develop AI-based object detectors for driverless buses. Having both online learning and project experience helped a lot. I was proud that my work went into a demonstration that was shown to Singapore’s Minister of Transport, Mr Khaw Boon Wan.

Minister for Transport inspecting a driverless bus

My next project was to translate AI programs into customer usable products, which required web development. Think of how Facebook delivers content to you, or how the Google search engine gives answers to your questions!

Since web development was new to me , I switched to online learning for help. Again.

The first thing about learning web development is akin to picking up a new language. But the difference is that to learn a new spoken language, you must practise with others and make embarrassing mistakes. In programming, you can make as many mistakes, with no one noticing it…

Well, that’s until your program goes down in production!

Don’t worry, this doesn’t happen often. How many times have you had your Facebook app down (aside from the massive 6-hour outage on Oct-4, but you get my point)? All thanks to multiple testing before releasing each version, most issues are caught in time.

Now, I am one of those behind the Migraine Buddy app which is powering over 3 million users in managing chronic conditions worldwide!

The team here is diverse, ambitious, and fun. At Healint, we build the world’s number 1 digital companion app for migraine and headache tracking. And we are always on the lookout for people like you!

A look back at specialisation switch

Mechanical engineering and computer engineering are two different branches in school. Yet, I feel there is a trait shared by both disciplines: problem solving. When I described coding problems that I faced to mechanical engineering peers, they could often suggest solutions. But they would stay away from coding! The hardest part was not the coding work, but actually getting started. I relied on hours of YouTube videos that explained how to use the tools and also Google solutions for setup issues.

Once started, the rest is about studying and tinkering: they are much more straightforward than getting started!

So that is my story of how I transitioned from hardware to software specialisation. I hope this was helpful for those thinking about making this switch. And if you ever think that is tough….

Here’s my colleague who switched from singing to coding!

--

--