This is hard. I’ve never actually written an article about myself before. So I’m just going to write and see where my thoughts take me.
My name is Michael. I grew up in China and flew to Toronto when I was 10 years old and that’s where I grew up. I’m a recent graduate from the University of Waterloo and I’m currently working remotely as a Software Engineer.
I think one word can describe my state pre-university: Lost
Yeah, I had no idea what I wanted to do, but I turned out to be alright. In high school, I was…
I was fortunate enough to start working as a junior developer with a senior as my mentor. It means I had the opportunity to learn from someone who walked the path I’m going to walk and has more experience than me on this journey.
Having a senior engineer in your team who is willing to teach and guide you is such a blessing. If your career goal is to become a senior developer, it can save you an enormous amount of time.
In this post, I’d like to share the things I saw my mentor and other senior developers do…
Working in software is hard — no matter what level you are at. But as a junior developer who is maybe fresh out of school or has just switched to the industry, this journey can be extra challenging.
Comparing myself to a year ago, I have definitely come a long way as a junior developer, from a fresh university graduate to a developer who can input on design decisions and make a real impact on various projects. I think that is a big accomplishment for my first year since entering the field.
But improvement doesn’t come for free. In the…
If you Google behavioral interview questions, you can find a lot of example questions:
It’s impossible to prepare for them all. There are too many different questions an interviewer can ask.
But you don’t need to memorize all of them, just memorize how to answer them. If you know what interviewers look for, you can answer all of them. That sounds simple, right?
Well, duh, you might think, but there’s a pattern here.
During my undergrad, I’ve been to over 60 interviews. Although most…
Although React by itself is relatively simple, it’s not enough to just learn a single library, especially if you want to create a complex web app.
I’ve been developing in React since 2016, and as my tasks increased in complexity, I had to learn other “helper libraries” to implement features.
In this article, I want to lay out a roadmap you can use for learning how to create real-world applications using React. …
I have a love/hate relationship when it comes to one-on-ones with my manager. I love them because I am fortunate enough to have a responsible and experienced manager, and I’ve learned a lot from them. But I also get nervous because sometimes I just don’t know what to say.
It’s hard to have an effective one-on-one, which is why a lot of articles talk about how to host a good session as the manager. But it’s hard for the junior developers as well. …
If your web application needs to persist user data, then you probably need them to sign up or log in to display more personalized content.
Nowadays, if you want your application to be more accessible, you need to support all kinds of sign-in methods such as SMS, Email/Password, Google, Facebook, etc. It’s a lot of work.
In this tutorial, I want to show you how Firebase and Firebaseui can simplify things. These technologies support multiple sign-in methods, will keep track of user states, and make our job as the developer very easy.
We will be creating a sign-up and login…
When preparing for a software engineering interview, we often jump right into behavioral, white-board coding, and system design questions.
But there are other questions, although technical, that are not algorithmic or data structure related. Companies ask them because they want to know your potential in this field and if you know the stacks in more depth. Companies don’t want to hire someone who can “only” code.
In this article, I want to share some of the “rapid-fire” questions I encountered many times in front-end interviews. Hopefully, they can help you to prepare as well.
Key is a unique attribute that…
Recently, AWS announced that they are now offering container image support for Lambda functions.
Before, the only way to deploy a Lambda function was by zipping your code. This new support means that we can now use a containerized image as the source for deployment and local development.
In this article, I will go over a quick summary of the update and a simple example of creating and deploying an image for a Node.js Lambda. I will also share some of the benefits and disadvantages.
Before we get started, I want to list out some key points of the update…
Always drinking coffee, always coding, and always building beautiful websites.