In primary school, I first started using Google.
In high school, I dreamed of working at Google: playing around the colourful offices and eating free food from cafés everyday.
In university, I seriously considered working at Google: learn cutting-edge technologies from the world’s best and brightest, experience how a multi-billion company manages thousands of engineers effectively, and contribute to building or maintaining the products I use and love.
This summer, I would finally fulfill my childhood dream of working at Google as a SWE intern.
But now, I am lost.
Coming from a well-educated immigrant family, the importances of education and work ethic were instilled in me from an early age. I loved mathematics, and tackling challenging problems always appealed to me in a nerdy way.
It’s no accident, then, that I discovered computer science and programming competitions in high school. Feeling ambitious and without knowing a lick about programming, I set out to learn by watching lectures from MIT’s Introduction to Computer Science (and also because I wanted to go to MIT). I got lost around the “dynamic programming” lecture, but I left knowing a bit about Python and basic stuff like print, if’s and loop’s.
Around then, I heard about this “Canadian Computing Competition”. After competing just for the sake of it, and narrowly missing the qualifying score to move onto the second round and training camp for the top 20 contestants, I was determined to make the camp in my final year.
So, how did I prepare? By asking a successful former contestant on how he had prepared for the competition. And that opened my eyes to an entire world of resources: USACO, Codeforces and TopCoder tutorials. I read about legends like Gennady Korotkevich and Johnny Ho, and strived to compete at an international level myself. After intensive practice, I made it to the second round, experienced the training camp at Waterloo, won a shiny medal and made some good friends. It was then I decided to attend University of Waterloo’s Computer Science program.
Not too many are brave or stupid enough to willingly move away from the comforts of school life and friends, fly a few thousand miles from home to live nearly alone and work tirelessly on a vision, but I guess I was. After a summer internship coding at Desire2Learn, an old friend invited me to build a startup with him in Vancouver. We built a fitness product, and using biometrics gathered from smart devices like watches and chest straps, it calculated your stress level in real-time.
I learn a bit about tech: how to clumsily build a full-stack product from scratch, starting with research, to building an accurate algorithm, to hosting a web server and to writing an iOS app. But I learned even more about business: how to talk to investors; how to evaluate the market; how to design a product; how to actually care about the user experience; and how to understand people’s motivations and leverage.
But what I learned even more was how to handle pressure and tight deadlines and endless amounts of work. How hard it is to research a new technology and to find the right market. How to swallow my pride and ask for help. How vital it is to be resourceful and flexible. And most importantly: to be a driven, disciplined professional.
After turning down an acquisition offer from a successful wearable tech company in the Valley, I returned to Waterloo to see if my experiences have changed my perspective. They did. I appreciate things like knowing there are definite answers to homework problems. The luxury of focusing solely on schoolwork and school life. How nice it is to visit home on weekends.
And, with my experiences and skills, I managed to land the Google internship I always wanted.
The curious thing about getting what you’ve always wanted is that once you’ve gotten there, you no longer know what to do - you’re at the end of a hike, the peak of a mountain. What should my next milestone be? What should I work towards next?
In such an uncertain and fast-paced world, skills, people, ideas and market all change. But principles don’t change. And my core principles have always been to always be learning and never be complacent. As a kid, they were about winning competitions and attaining better grades. As an older, wiser person, I seek to absorb as much knowledge and learn useful skills as possible, so to grow exponentially and improve continuously.
I think I’ve matured a bit over the last few years. I’m super grateful to everyone who’ve helped me, given me awesome advice and guidance throughout the years, and taught me useful skills, from competitive programming champions like Cyril Zhang; to all the insightful Quora writers and mentors like Brian Bi and and Edmond Lau; to my co-founder, entrepreneur extraordinaire, and best friend James Sun; and, of course, my family for supporting me and my ambitions every step along the way.
The snow is finally melting at Waterloo, and spring is a wonderful time for renewed growth and fresh opportunities.