Have you ever seen a website with “sign in with” buttons?

sign in buttons in Leetcode

With the buttons, you can sign up and in to a website by using the ID and PW from Google, Facebook, etc. It makes our life much easier since we all know that having multiple accounts on various different websites gives us headaches.

On the other hand, you might have worried about the account credentials since you might think that your google account cerdentials might be given away.

We use OAuth 2.0 to implement social logins in our application. In this article, I will go over how OAuth 2.0…

Many learning developers are familiar with writing codes and running them in the local machines. However, they often do not try to deploy their service which is as important as development. There are many other advanced ways to deploy our application such as automated CI/CD pipeline, but today I will go over the simplest way of deploying our application using Docker container and AWS EC2 instance. Please look forward to my article about CI/CD at a production level.

The whole process would be

  1. Build the docker image of our server application and upload it on the public repository (Docker Hub)



  • Upload static files to AWS S3
  • Set static website hosting and public access on AWS S3
  • Automatic Deployment using GitHub Actions

Concepts that you need to know

  • Static Website Hosting
  • CI / CD

What You Need

  • AWS Account
  • GitHub Account (for GitHub Actions)

Deploy Static Website on S3

1. Create S3 Bucket

Go to the S3 in the AWS Management Console. Click on the “Create bucket” button.

AWS Official Doc

I have been dealing with AWS as my DPU Tenzer center internship to allow students to host their websites on AWS.

Each student will use their own IAM User account, and Root account will be in charge of managing their activities. In this post, I will tell you my approaches and decisions on granting IAM Users permission to only user-specific Buckets.

Some Requirements of this system:

  • GOAL 1: Only specific users must be allowed to access the specified resource. Otherwise, students might change the contents of resources of other students.
  • GOAL 2: We need a way to restrict the actions…

As a school internship, I had a chance to build a map web application for our school’s art exhibition. This is the final output.

Project Slide

Hello, I am a sophomore college student who is actively learning backend development. I have started to learn about web development in Nov 2020 and had finished my first web development project using React.js, Node.js + Express, and MySQL in Jan 2021.

In my very first project, I faced many problems not only technical problems but also architectural problems. I had no idea about refactoring and organizing the codes.

This is the structure of my first project.

└── Backend
├── model
├── middlewares
│ ├── passsport…

If you want something better than the default Terminal in macOS, here’s a tutorial for customizing your terminal with iTerm2 and Powerlevel10k.


completed view of our terminal

Step 1. iTerm2

If you have homebrew installed, use the command on the terminal.

$ brew cask install iterm2

You can also manually install iTerm2 Here.

iTerm2 is an application that can substitute Terminal with several useful features. You can split the screen or decorate your terminal console with iTerm2.

Seok Jun Hong

I have a wide range of interests in software development. I want to tell the story of my journey of software development to guide beginners just like me.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store