I graduated from the University of Waterloo in December of 2014 with an Honours Bachelor of Computer Science Co-op, with a History Minor. In June 2015, I started working full-time as an SDE (Software Development Engineer) at Amazon.com in Seattle, Washington. During my co-op terms in university, I worked at six different companies in six different industries, in a variety of roles. I've been a software automation developer, a software development engineer in test, a software engineer, a product manager, and a web developer. As an alumni of the VeloCity residence incubator program (at UWaterloo) between August 2011 and December 2013, I built an awesome product, while helping others achieve their successes in other projects as well. I am passionate about solving user frustration, on a small scale for personal projects, and on a large scale in a workplace environment. My belief: the best possible feedback comes through data; regardless of what users or developers believe, at the end of the day, data is the single deciding factor in making product decisions.

Hobbies / Interests

I play sports & do other things on the side: Snowboarding, Tennis, Badminton, Ice/Ball Hockey, Ping Pong, Baseball and American Football, just to name a few! I like solving Rubik's Cubes and similar puzzles; I used to play a mean game of chess, as well as dabbling in professional Texas Hold'em and Blackjack. I'm slowly getting back into singing, and playing guitar again - be sure to keep an eye out for some YouTube covers in the coming months!
I used to trade equities in capital markets regularly. My portfolio wasn't amazing; I ended up breaking even after all commissions and fees were settled, despite my relative inexperience with trading. I'm interested in Bitcoin; I have been since it came out. I even invested some money in it before it tanked below $300 USD. Maybe I'll jump back in one day to more shenanigans, but right now, I'll just watch.
I am starting to blog more often. I most recently (January 2017) wrote a post about transitioning from classroom learning to "workplace learning". Feel free to check it out on my blog (hosted on WordPress). I'll find a way to build a blog on this website later - I made the WP blog way before this iteration of the website was even conceived, and my lack of foresight for the integration created some interesting challenges.
I like photography; I took all of the photos that are featured on this website, such as the header photo, and the background photo in the quotes section. The carousel includes photos such as the view of Lake Minnewanka near Banff, Moraine Lake (in Banff National Park), Zion National Park, and more. When I acquire a better camera, I'll expand a gallery on this page.

I've been on TV before; specifically PBS Newshour. As you can tell, I love cubing.

Contact Information

Michael Shao
Ask me for address!
Seattle, Washington, USA



University of Waterloo

University of Waterloo

Honours Bachelor of Computer Science September 2009 » December 2014

I studied Computer Science at the University of Waterloo; I also graduated with a History Minor. Relevant courses: CS349 (User Interfaces), CS370 (Numerical Computation), CS445 (Software Requirements: Specification & Analysis), CS458 (Computer Security & Privacy), CS456 (Computer Networks).


Click to scroll!

Riot Games
Blue Coat Systems
AGF Management


Software Development Engineer June 2015 » Present

In 2015, I joined the Seller Services, Marketplace, Fulfillment Technologies team. Our team is responsible for building and maintaining the platform that vends shipping labels to third-party merchants that sell on Amazon Seller Central, from shipping carrier services such as FedEx, UPS, DHL, and Canada Post.

In December of 2019, I joined the Hardlines Customer Experience organization, in the Product Compatibility Program team. Our team is responsible for owning and vending compatibility information for replacement parts, across a wide variety of categories.

Riot Games

Software Engineering Intern May 2014 » August 2014

Riot Games is the maker of League of Legends, a game of the Multiplayer Online Battle Arena (MOBA) genre. I worked in the back­end web space, rebuilding the signup API to allow developers to create custom experiences for new users as they signed up for the game. I also designed and led a side project during the semi­annual Riot hackathon.

Audible (a subsidiary of Amazon)

Software Development Engineer in Test (SDET) Intern January 2014 » April 2014

My main responsibility involved implementing and maintaining a full­-featured automation suite for Kindle's Audible plugin for immersion reading using Java. My initial project was driving the design and planning phase of an internal developer tool meant for tracking third-party devices.


Co-founder, Product Manager May 2012 » August 2013

Shoptimize was a mobile application meant to comprehensively optimize your grocery shopping experience­ through information, convenience, and time efficiency. My specific role was to find the user frustration in the grocery industry, by validating the market problem through grocers and shoppers alike. I also communicated product beta communications, public relations, and marketing philosophies through social media and at events. On the software side, I managed both the overall business vision and product design.


Software Engineering Intern January 2013 » April 2013

I built "Preview Action" of a window modal that dynamically populates dummy values from a back­end using POST/GET requests. Also, I developed IVR menu feature for calling agents to manage control flow of incoming calls, and designed and created an in-­window modal that followed user while scrolling through page. My role also included maintenance - I fixed stylings of modals for current actions on event monitor windows. Lastly, I created and launched initial documentation efforts to connect and engage technical development with business development.

Blue Coat Systems

Software Test Automation Engineer InternMay 2011 » August 2011; January 2012 » April 2012

I did two co-op terms here. My main roles were developing and maintaining automation testing software for finding product bugs and errors in operating production code using proprietary software operating systems. I spent most of my time re­writing test units based on coverage requirements and expanding the coverage support for older versions. I was also responsible for refining the analysis and scope of test suites to better represent stability control and unit coverage. Lastly, I was involved in resolving and verifying feature requests and bugs under strict deadlines and constraints from multiple product teams.

AGF Management Ltd.

PC Support Analyst InternApril 2010 » August 2010

I received an outstanding employer evaluation for the work I did here. My flagship role was implementing and sustaining business continuity strategy for G20 Summit migration to external office (65 employees). I also had a role in the early deployment of Windows 7 desktop migration project (pilot included 250 people) across two offices. Other day-to-day tasks including testing and reporting on various hardware specifications for user requirements, as well as assisting and verifying resolutions for various user-defined problems. Nearing the end of my term, I took the lead in drafting and maintaining training material for new hires in both co-op and full-time positions within the IT department.


Version control systems: Mercurial, Git, Perforce, SVN.
Environments: Windows (XP/7/10), Mac OS (X), and Linux (Ubuntu, RHEL).
Extraneous skills: photography, music production, video editing.

Here's a brief list of things I have experience with.
While not comprehensive, think of it as an "in-progess" learning tracker.


  • Early success is a terrible teacher. You're essentially being rewarded for a lack of preparation, so when you find yourself in a situation where you must prepare, you can't do it. You don't know how.

    Chris Hadfield
  • Embrace failure. Never never quit. Get very comfortable with that uneasy feeling of going against the grain and trying something new. It will constantly take you places you never thought you could go. This has been my mantra for years. I always remember I won't do things right on the first try. So failure is mandatory for success!

    Terry Crews
  • If you always put limits on everything you do, physical or anything else, it will spread into your work and into your life. There are no limits. There are only plateaus, and you must not stay there, you must go beyond them.

    Bruce Lee
  • There is nothing noble in being superior to your fellow man; true nobility is being superior to your former self.

    Ernest Hemingway
  • Go to the gym, don't even work out. Just GO. Because the habit of going to the gym is more important than the work out. Because it doesn't matter what you do. You can have fun - but as long as you're having fun, you continue to do it.

    Terry Crews
  • Decide in your heart of hearts what really excites and challenges you, and start moving your life in that direction. Every decision you make, from what you eat to what you do with your time tonight, turns you into who you are tomorrow, and the day after that. Look at who you want to be, and start sculpting yourself into that person. You may not get exactly where you thought you'd be, but you will be doing things that suit you in a profession you believe in. Don't let life randomly kick you into the adult you don't want to become.

    Chris Hadfield
  • Being grateful is the bridge between the world of nightmares and the world where we are free to say no. It's the bridge between the world of delusions and the world of creativity. It's the power that brings death back to life, the power that turns poverty to wealth and anger to compassion.

    James Altucher
  • I’ve missed more than 9000 shots in my career. I’ve lost almost 300 games. 26 times I’ve been trusted to take the game winning shot and missed. I’ve failed over and over and over again in my life. And that is why I succeed.

    Michael Jordan
  • Don't count the days. Make the days count.

    Muhammad Ali
  • We suffer not from the events in our lives but from our judgment about them!

  • Twenty years from now you will be more disappointed by the things that you didn’t do than by the ones you did do. So throw off the bowlines, sail away from safe harbor, catch the trade winds in your sails. Explore, Dream, Discover.

    Mark Twain
  • If you start thinking that only your biggest and shiniest moments count, you're setting yourself up to feel like a failure most of the time. Personally, I'd rather feel good most of the time, so to me, everything counts: the small moments, the medium ones, the successes that make the papers and also the ones that no one knows about but me.

    Chris Hadfield
  • “The only truly safe thing you can do is to try over and over again. To go for it, to get rejected, to repeat, to strive, to wish. Without rejection there is no frontier, there is no passion, and there is no magic.

    James Altucher
  • Ultimately, leadership is not about glorious crowning acts. It's about keeping your team focused on a goal and motivated to do their best to achieve it, especially when the stakes are high and the consequences really matter. It is about laying the groundwork for others' success, and then standing back and letting them shine.

    Chris Hadfield

Get In Touch.

Fill out this form if you would like to get in touch; standard response time is ~24 hours.

Your message was sent, thank you for reaching out!