From Concept to 125,000+ Clicks: The Story of a Link Shortener I Built

How I identified a problem, built a solution, and connected thousands of students during the COVID-19 pandemic

October 31, 2023
by George Shao


  • Link shorteners already exist.
  • So why did I make one?
  • And why was mine used 125,000+ times?

Accepted to UW Software Engineering

On March 29, 2021, I was offered admission to the University of Waterloo's Software Engineering program.

After sharing the news with friends and family, I wanted to meet other people who were also admitted to the Software Engineering program at UWaterloo. I was already on a UWaterloo Applicants Discord server. The chat was quickly flooded by people excitedly sharing their admission offers. A few people took the initiative to create separate Discord servers for their program, sharing their invite links in the chat.

The Problem: Loooong Links, and Lots of Them

However, these Discord server invite links were a random sequence of letters and numbers like https://discord.gg/3j4k5l6m7n8o9p0q.

Whenever shared, the links quickly got lost in the chat, and people had to go around asking for the link again. They were near-impossible to remember and difficult to share, and all this friction slowed the growth of these Discord servers.

Students on these Discord servers were connecting with their future classmates, discussing high school grades, sharing their social media profiles, looking for roommates, and asking questions about course selection. I knew that there were many more students not joining these Discord servers because they were not aware of them.

The Solution: A Link Shortener

An existing link shortener wouldn't have helped since it would have generated yet another random sequence of letters and numbers, so I created my own link shortener.

  1. I spent awhile searching for Discord server invite links so others wouldn't have to, and I aggregated them into DynamoDB.
  2. I built a React app that called an AWS Lambda function to retrieve the Discord server invite link from DynamoDB and redirect the user to the Discord server.
  3. I setup hosting for a static React app on S3 and API Gateway with the help of AWS Amplify.
  4. I bought the domain webdir.link and connected it to my app hosted on AWS.
  5. I used AWS CloudWatch to monitor the app's usage and performance.

A Very Functional Link Shortener

The result was a link shortener that generated short, memorable links for programs in the format of webdir.link/[program][year].

For example, the link for the Software Engineering and Computer Science Class of 2026 Discord servers were webdir.link/se2026 and webdir.link/cs2026 respectively. I repeated this for many other major programs at UWaterloo, including:

  • Computer Science and Business Administration as webdir.link/csbba2026
  • Electrical and Computering Engineering as webdir.link/ece2026
  • Systems Design Engineering as webdir.link/syde2026
  • Management Engineering as webdir.link/mgmt2026
  • Biomedical Engineering as webdir.link/bme2026
  • Mathematics as webdir.link/math2026
  • Computing and Financial Management as webdir.link/cfm2026
  • Accounting and Financial Management as webdir.link/afm2026

Short links were also created for other types of Discord servers, such as ones for:

  • an entire program regardless of year, like Software Engineering as webdir.link/se
  • clubs / interests, like anime as webdir.link/anime2026
  • university societies, like the Engineering Society as webdir.link/engsoc

Using program-year slugs like se26 and cs26 was a great way to make these links short and memorable. As long as someone was aware of the format, they could easily guess the link for any program and year and find out if a corresponding Discord server existed.

Thousands of Students Connected

I shared the link shortener throughout the UWaterloo community, even to those already on program-specific Discord servers, as most of them wanted to join Discord servers for other programs but previously weren't aware of if they existed or where to find them.

Here's a timeline of the link shortener's usage:

DateMilestoneUses
May 2021Link Shortener Launched0
Sep 2021Start of University Year20,000
Sep 2022Start of University Year50,000
Sep 2023Start of University Year120,000

As of Oct 31, 2023, my link shortener has been used over 125,000 times, and has connected thousands of students with their future classmates.

Looking Back

Over the past 2 years, I've learned a lot about software development, and I've built many other projects, but this is still one of my favourites.

Despite it being such a simple project, I still keep this project on my resume today, as the high usage numbers make for a great conversation starter.