Senior Software Engineer
General Motors Canada
Sector: Information Technology
Type: Career Profile
Computer Science, Technology & Engineering
The work I do is technically difficult, which is a lot of fun to me. Every day is different in terms of challenges. As a result, I get to use different parts of my studies and experience so I can be a successful contributor to my team. In an interesting twist of fate, my skills in making games (played for fun) are now very relevant for building self-driving cars.
Both of my career choices in computer games and robotics were not something I studied in high school or university. Neither fields were presented to me when I was in school. It's definitely not something I planned for. I stumbled into both, but jumped at the opportunity when it presented itself. Maybe there's a lesson in there, but it might just be luck. Either way, study hard so you'll be ready when the opportunity comes.
In high school, I had good grades but I was pretty bored most of the time. In university, I found the course material more challenging and that made it more exciting. I couldn't narrow down a major so I decided to study a variety of courses. I graduated with an Honours degree in three different majors. In graduate school, I got lucky and studied computer games. This gave me the opportunity to work with companies like EA and BioWare. I worked on a few exciting games. It's great to visit a game store and see excited people talk about your game on the store shelf.
Later on, I got excited about robotics. I went from indoor robot vacuums, to trains and now automobiles. Nowadays, I take pride whenever I see someone drive a car I worked on. I will excitedly point out every GM car on the road to my kids whether they like it or not!
Study hard, both in school and outside of school. If school doesn't interest you, find something that does and deep dive. Technology evolves so fast that it's impossible to learn everything needed to succeed from schooling alone.
I play games on my Xbox with my kids. I look forward to the day when they are old enough to play the games I worked on. I also enjoy volunteering and sharing my experiences.
I help build the software that makes self-driving vehicles perform safely on the road. I meet daily with a team of fellow engineers at General Motors. We discuss how we are going to improve the software we use to test self-driving cars at General Motors. Most of us speak at least two languages, and most of us have a graduate degree. What we do is part of a large international team effort, and we regularly interact and collaborate with GM teams from different countries to build our product.
Our team builds software and hardware that simulates a car driving on the road. The technologies we use are similar to computer games. In fact, a few of us (including myself) used to work on computer games that many of you may play today - ranging from those involving sports to storytelling and fantasy themed games. Every so often, I work on a real car in the garage to test the cameras and GPS on the car. However, most of my time is on programming something into our simulation "game engine".
I like to say that my friends at work are all superheroes!
Here are my reasons...First, they are all super smart! They use mathematics, physics and engineering to understand how a car works in the real world. Second, they know and understand the integration of software into a vehicle enough to program how a vehicle works in a game simulation.
As a result, everyone is an expert in both hardware and software. These are two very different sets of skills. Finally, we are team players from diverse cultures and languages. Our different backgrounds enable us to communicate effectively with other GM teammates from other countries and cultures.
I was born/grew up in: I was born in Hong Kong, grew up all over including B.C., Alberta, Michigan, and Hong Kong.
I now live in: Toronto, Ontario
I completed my training/education at: I completed a Bachelor’s degree (Computer Science, Math and Statistics) at the University of British Columbia. I also studied Artificial Intelligence at the University of Alberta.
When I was
- Computer Science
- Enjoyed doing things on my own
- Was motivated by success
- Liked being given free range to explore my ideas
- Liked reading
- Played video games
- Felt great satisfaction in getting good grades
- Wasn't sure what I wanted to do
- Liked to design or build things