<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Posts on jeffyang.io</title>
    <link>https://www.jeffyang.io/posts/</link>
    <description>Recent content in Posts on jeffyang.io</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <copyright>Jeff Yang</copyright>
    <lastBuildDate>Mon, 06 Oct 2025 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://www.jeffyang.io/posts/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>My Story - Growth from IC3 to IC5</title>
      <link>https://www.jeffyang.io/posts/career-growth-as-an-engineer/</link>
      <pubDate>Mon, 06 Oct 2025 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/career-growth-as-an-engineer/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/j56v5aaj3zh8bmod4zjdd/meta-career-growth.png?rlkey=ummk5n9bugo8misb5yd1kqwu8&amp;amp;st=3b4o8a32&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;It’s been a while since I last wrote here — work and life have been full, and writing fell off my routine. A lot has changed since then. Over the past three years, I’ve gone from an &lt;strong&gt;IC3 engineer to IC5&lt;/strong&gt; at Meta.&lt;/p&gt;&#xA;&lt;p&gt;It’s been fast, chaotic at times, and full of learning curves.&lt;/p&gt;&#xA;&lt;p&gt;This post isn’t advice — just a few honest notes on what that journey looked like for me.&lt;/p&gt;</description>
    </item>
    <item>
      <title>First 3 Months at Meta</title>
      <link>https://www.jeffyang.io/posts/first-three-months-at-meta/</link>
      <pubDate>Sun, 23 Oct 2022 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/first-three-months-at-meta/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/29b1509j81yitz2jpbdy4/meta.png?rlkey=sw5l54mujur4a387o26lelgil&amp;amp;st=t73yg490&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;It&amp;rsquo;s been over 3 months since I started my first job out of college - and I wanted to leave a blog&#xA;post about it. A few things I&amp;rsquo;ll cover in this blog post: my bootcamp experience at Meta, and the&#xA;onboarding process after team selection.&lt;/p&gt;&#xA;&lt;h3 id=&#34;bootcamp-experience&#34;&gt;Bootcamp Experience&lt;/h3&gt;&#xA;&lt;p&gt;Most of you are probably wondering what I mean by &lt;em&gt;bootcamp&lt;/em&gt;. Isn&amp;rsquo;t that a military thing where new&#xA;recruits go through weeks of basic military training? Well yes, but that&amp;rsquo;s not what I&amp;rsquo;m going to&#xA;write about here (thankfully).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Configuring Portable Dotfiles</title>
      <link>https://www.jeffyang.io/posts/configuring-portable-dotfiles/</link>
      <pubDate>Sat, 30 Jul 2022 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/configuring-portable-dotfiles/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/9qpxekwcgf43abyrvkfx5/thumbnail.png?rlkey=zgwnrsdtm0l183zu8rd4wq2hs&amp;amp;st=lhnoksyp&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;I recently stumbled across a problem that I never really had to solve before. As I started my first full-time job, I received a new laptop for work-related use. I also set up my development server, which is a remote computer sitting somewhere in a data center that I can SSH into for development purposes. As my preferred choice of text editor is Neovim, I have a lot of configuration files that go along with it. I also have some custom tmux configurations. What about ZSH configurations? The list goes on. One way of doing it would be to manually copy-and-paste all the configuration files. But there had to be a better way - one that doesn&amp;rsquo;t require so much error-prone manual reptition. If I start a new job at a different company, or if I get a new personal computer for myself, I don&amp;rsquo;t want to have to continue to copy-and-paste all these &amp;ldquo;dotfiles&amp;rdquo;. So I searched for a way to make my dotfiles &amp;ldquo;portable&amp;rdquo;. The solution that I decided to go with was &lt;a href=&#34;https://www.gnu.org/software/stow/&#34;&gt;GNU Stow&lt;/a&gt; - in this post I&amp;rsquo;ll explain a little bit about how Stow works.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Navigating a Computer Science Degree</title>
      <link>https://www.jeffyang.io/posts/navigating-a-computer-science-degree/</link>
      <pubDate>Sat, 19 Mar 2022 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/navigating-a-computer-science-degree/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/o6to4kwq64biqwxgg5vso/northwestern.png?rlkey=vz1tzxhkznnh3cg37k3wuuvbm&amp;amp;st=b4xvzjvp&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;I just completed my degree in computer science at&#xA;&lt;a href=&#34;https://www.northwestern.edu&#34;&gt;Northwestern University&lt;/a&gt;. Coming into college, I hadn&amp;rsquo;t written a&#xA;single line of code. Not even a line of &amp;ldquo;hello world&amp;rdquo;. I never saw myself majoring in a&#xA;science/engineering field. Throughout my middle school and high school life, I always considered&#xA;myself more gifted in things like public speech and debate - so naturally, I considered going into&#xA;law, although it was more just a mere stream of thought than a decisive opinion. I came to&#xA;Northwestern thinking that I&amp;rsquo;d study economics (because it seemed like the &lt;em&gt;safe&lt;/em&gt; major to go with,&#xA;for some reason) and international relations. 6 years and a half later (I took 2 years off due to&#xA;mandatory military service in Korea and another half a year off due to COVID-19), here I am, with a&#xA;degree in computer science and a full-time job at Meta (Facebook) secured. It wasn&amp;rsquo;t easy, but I&#xA;truly had an amazing experience at Northwestern. In this blog post, I want to jot down a few notes&#xA;on how I navigated my transformative adventure into the world of computer science and technology.&lt;/p&gt;</description>
    </item>
    <item>
      <title>A Practical Application of Redis Cache</title>
      <link>https://www.jeffyang.io/posts/practical-application-of-redis-cache/</link>
      <pubDate>Sat, 18 Dec 2021 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/practical-application-of-redis-cache/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/qsjqvjzqqbs14eenm259a/thumbnail.png?rlkey=s5u6ao93lajafrka9snbii45v&amp;amp;st=do23ngs6&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;Recently, I&amp;rsquo;ve been working on a side project - a web application (&lt;a href=&#34;https://www.inretrospect.finance&#34;&gt;inretrospect.finance&lt;/a&gt;) that lets users record their investments with notes for future reference. The whole project is built on top of a fantastic API from &lt;a href=&#34;https://www.alphavantage.co/documentation/&#34;&gt;Alphavantage&lt;/a&gt; that provides detailed financial data on public companies. While it would have been great if it were possible to make unlimited API requests - their free tier plan only allows for 5 requests per minute and 500 requests per day. This obviously is a significant bottleneck, so I needed to find a solution. After putting some thought into this, I decided to &lt;em&gt;cache&lt;/em&gt; API requests so that whenver there&amp;rsquo;s a &lt;em&gt;cache hit&lt;/em&gt;, a request to the actual API endpoint is not made, therefore cutting down the number of requests to the API service. With that context in mind, let&amp;rsquo;s dive in.&lt;/p&gt;</description>
    </item>
    <item>
      <title>My Facebook Internship</title>
      <link>https://www.jeffyang.io/posts/my-facebook-internship/</link>
      <pubDate>Wed, 08 Sep 2021 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/my-facebook-internship/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/lmrdumjc9d5swvlxx3vwr/facebook-logo.jpeg?rlkey=myya3wlewdgbhwz71tvwe9y14&amp;amp;st=eu6ehtn5&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;I started my journey in computer science as a freshman in college. Little did I know, this journey would take me to the heart of Silicon Valley.&lt;/p&gt;&#xA;&lt;p&gt;In this blog post, I share my experience as a software engineer intern at Facebook. For those who are trying to gauge if Facebook is the right fit - I hope this post will provide valuable insight. For those who are on the grind for an internship - I hope this will serve as a source of inspiration to keep going. Facebook seemed like a pipe dream, but through grit and little bit of luck, I&amp;rsquo;m really happy to have made the impossible possible.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Working at an Early Stage Startup (Pt. 2)</title>
      <link>https://www.jeffyang.io/posts/fumi-internship-2/</link>
      <pubDate>Sat, 13 Mar 2021 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/fumi-internship-2/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/55vitanff83c9qn689idz/fumi_startup_two.png?rlkey=n1lcy7wqrw3z8l6lx3pjttyho&amp;amp;st=l8xkpi8d&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;&lt;em&gt;&lt;strong&gt;Disclaimer&lt;/strong&gt;&lt;/em&gt;  &lt;em&gt;This post does not in any way represent the views of Fumi as a company, but is solely my individual opinion and reflection on my experience as a software engineer at an early-stage startup&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;I was a software engineering intern, after all - so let&amp;rsquo;s talk about things from an engineer&amp;rsquo;s perspective. To give you context, I was part of a small engineering team of 3, and did not have a direct report (i.e. no &amp;ldquo;manager&amp;rdquo;). Although my title was a &amp;ldquo;software engineering intern&amp;rdquo; I was more like a full-time contractor. I was (for the most part) expected to do things on my own, as the other 2 engineers did not have enough time to be taking care of an intern.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Working at an Early Stage Startup (Pt. 1)</title>
      <link>https://www.jeffyang.io/posts/fumi-internship-1/</link>
      <pubDate>Sun, 28 Feb 2021 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/fumi-internship-1/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/4fftk0kyr0bk4gu8vatiq/fumi_startup.png?rlkey=xe5fkwydae5o8zvy9y4l1wj5f&amp;amp;st=5vu2zamp&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;&lt;em&gt;&lt;strong&gt;Disclaimer&lt;/strong&gt;&lt;/em&gt;  &lt;em&gt;This post does not in any way represent the views of Fumi as a company, but is solely my individual opinion and reflection on my experience as a software engineer at an early-stage startup&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;COVID-19 brought an abrupt stop to my studies in the United States, leading me back to Seoul. As I was always interested in the startup scene, I could not turn down the opportunity to intern at an early stage startup when it presented itself. Following rounds of interviews, I landed an internship at &lt;a href=&#34;https://fumi.co.kr/main/home/home&#34;&gt;Fumi&lt;/a&gt;, a Korean e-commerce startup catered to the senior fashion market. Fumi had recently raised $3M in Series A funding and was rapidly growing its team. Over the past 4 months as a software engineering intern at Fumi, I was able to grow not only as a software engineer, but also as a future entrepreneur. In this blog post I would like to share my takeaways from working at an early stage startup as a software engineer.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Github Authentication with SSH</title>
      <link>https://www.jeffyang.io/posts/github-ssh-authentication/</link>
      <pubDate>Thu, 31 Dec 2020 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/github-ssh-authentication/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/wsw1xoimxv037mqczocti/github_ssh_auth.png?rlkey=s1eyxoal3nvrvmmbh4ikl06mg&amp;amp;st=l4nkklu2&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;This blog post is meant to serve as a kind note for my future self, inevitably struggling to properly setup Github SSH authentication.&#xA;If there&amp;rsquo;s anyone else out there who happens to stumble upon this post while struggling with the same issue, hopefully this post will help you out.&#xA;I will go over &lt;strong&gt;what&lt;/strong&gt; SSH authentication is, &lt;strong&gt;why&lt;/strong&gt; you might be interested in setting one up yourself (in the context of Github), and finally, &lt;strong&gt;how&lt;/strong&gt; to set it up properly.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Setting up ESLint and Prettier with VS Code</title>
      <link>https://www.jeffyang.io/posts/eslint-prettier-vscode/</link>
      <pubDate>Sat, 08 Aug 2020 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/eslint-prettier-vscode/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/mw8pvsrn9tl6nxj3ek9a5/eslint_prettier_vscode.png?rlkey=gulsevtz9iht01msjh9notuyl&amp;amp;st=mocgol5y&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;An important part of software development/engineering (or whatever else you may want to call it) is&#xA;writing code that works as intended, and is as bug-free as can be made. However, there&amp;rsquo;s actually a&#xA;lot more to writing code than just to &amp;ldquo;make it work.&amp;rdquo; This is primarily because almost any&#xA;meaningful project/software that exists in the world is created through collaboration. In other&#xA;words, it is important that you are able to easily read others&amp;rsquo; code, and that others are also able&#xA;to easily read and understand your code. There are lots of ways to achieve this, including manual&#xA;methods. A team of engineers can manually check for code style issues during code reviews, and&#xA;possibly even create a detailed documentation on the coding styles that every engineer on the team&#xA;should adhere to. However, with what we are about to cover in this blog post, investing engineers&#39;&#xA;time should no longer be put into reviewing code style. Without any further ado, let&amp;rsquo;s find out how&#xA;to set up ESLint and Prettier with Visual Studio Code (VS Code).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Resize Images Stored in AWS S3 with AWS Lambda (feat. Docker)</title>
      <link>https://www.jeffyang.io/posts/aws-s3-and-lambda/</link>
      <pubDate>Mon, 27 Apr 2020 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/aws-s3-and-lambda/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/qbtro69g2uuqrn5ijp4vy/aws_lambda_s3.png?rlkey=51nom6dbfiyt3rcz4x25mdhn9&amp;amp;st=cn2a7w1m&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;&lt;strong&gt;Note: An AWS Account and a basic knowledge of their services are assumed throughout this blog post&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;I have been working on a &lt;a href=&#34;https://www.sublets.nu&#34;&gt;team project&lt;/a&gt; for the past couple of months. The idea is to build a platform for off-campus room search, specifically geared towards students of Northwestern University. Django doing the heavy-lifting as the main engine to power the application, we were able to develop such a platform quite rapidly on our local development environment. We soon migrated our work to Heroku for production testing, and started serving media files from AWS S3 buckets. While user testing in preparation for a full launch of the application, a few non-trivial issues were found. As a room searching platform, our site needs to handle image requests adequately. However, our site suffered from a significant performance issue due to slow loading speed. Photos taken with the iPhones or the Samsung Galaxies these days typically are well over 2 MB in file size. Considering the fact that multiple photos are associated with a single room post and that multiple room posts need to be loaded on a single page, such an enormous file size quickly becomes prohibitive. We needed a solution to scale down large image files, without compromising image quality too much. Luckily, AWS already had advanced cloud computing services to help us achieve our goals: &lt;em&gt;AWS Lambda&lt;/em&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Django Channels 2.0, Postgres, Daphne, and Heroku</title>
      <link>https://www.jeffyang.io/posts/deploy-django-on-heroku/</link>
      <pubDate>Mon, 20 Apr 2020 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/deploy-django-on-heroku/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/gw50hu2ix7raiydd5618e/heroku_django.png?rlkey=gg4gupvuzqu81ar9p6uc400lw&amp;amp;st=azmvi3ra&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;&lt;strong&gt;Disclaimer: This blog post is largely a quarantine coding production.&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;I already have a blog post on how to deploy a very simple Flask application on Heroku. In this blog post, I will explore more details of Heroku deployment, but this time with Django. I have been working on a Django &amp;amp; Channels side project, a web platform to enhance off-campus room searching experience for Northwestern students. As the application development was almost over and user testing seemed like the logical next step to take, I turned my eyes to Heroku (largely for their known simplicity compared to other services such as AWS or Linode). It turned out that there were a few curveballs thrown at me, largely due to Channels using an ASGI server rather than a traditional Python WSGI server. I hope this blog post serves as a future reference for myself, and for a few other friends out there that may be facing similar problems that I did.&lt;/p&gt;</description>
    </item>
    <item>
      <title>What is a Graph?</title>
      <link>https://www.jeffyang.io/posts/what-is-a-graph/</link>
      <pubDate>Sat, 28 Dec 2019 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/what-is-a-graph/</guid>
      <description>&lt;p&gt;In this blog post, I will be going over the basics of the graph data structure, including its representation, implementation, and basic graph traversal algorithms. Graph is an important data structure, especially because of its practical applications that can range from representing friendships to maps of locational intelligence, computer networks and much more. Does that sound interesting? Let&amp;rsquo;s dive into learning the basics of graphs.&lt;/p&gt;&#xA;&lt;h2 id=&#34;1-introduction-to-graphs&#34;&gt;1. Introduction to Graphs&lt;/h2&gt;&#xA;&lt;p&gt;Even if you are unfamiliar with graphs, you most likely have already seen one. If you have seen or worked with &lt;em&gt;trees&lt;/em&gt; before, you have already encountered a &lt;em&gt;graph&lt;/em&gt; before. Let me try to explain graphs in relation to trees, a data structure that you are more likely to be familiar with, or at least more so than graphs. &lt;strong&gt;All trees are graphs, but not all graphs are trees&lt;/strong&gt;. Like trees, graphs also have &lt;strong&gt;nodes (or vertices)&lt;/strong&gt; and &lt;strong&gt;edges&lt;/strong&gt; that connect the nodes, but are not bound to the restrictions that trees have. A tree is an &lt;em&gt;acyclic&lt;/em&gt; and &lt;em&gt;connected&lt;/em&gt; graph. A graph, however, is not limited to such restrictions; a graph can have &lt;em&gt;cycles&lt;/em&gt; and can be &lt;em&gt;disconnected&lt;/em&gt; to form a forest consisting of multiple components that are disconnected with another. Take a look at the following to get a rough idea of what a &lt;em&gt;directed&lt;/em&gt;, &lt;em&gt;acyclic&lt;/em&gt; graph looks like.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Finding the Shortest Path from A to Anywhere</title>
      <link>https://www.jeffyang.io/posts/dijkstras-algorithm/</link>
      <pubDate>Sun, 15 Dec 2019 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/dijkstras-algorithm/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/mxjzniffmagvv009b904z/dijkstra_cover.png?rlkey=iay4xctdwqmr5hejsun4traqz&amp;amp;st=mq5xxdvj&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;In this post, I would like to take a slightly different approach and write about an algorithm that I learned about in a classroom setting. While taking a computer science course in data structures and algorithms this quarter, I found the graph data structure and related algorithms to be particularly fascinating, as graphs can be applied in real-life to represent virtually anything from friendships to geographic maps. Although far from being an expert on this topic, I am going to make an attempt to dissect perhaps the most famous graph algorithm and its practical application. Take a bow, introducing Dijkstra&amp;rsquo;s algorithm and the single source shortest path problem.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Tweet Bot with Tweepy and Flask</title>
      <link>https://www.jeffyang.io/posts/tweet-bot/</link>
      <pubDate>Thu, 14 Nov 2019 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/tweet-bot/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/povejfo6ngw42evk2x736/tweetbot.png?rlkey=lgs3b2wkaq97qza0pkebqaohp&amp;amp;st=tsjeb7gf&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;According to recent research conducted by USC and Indiana University affiliates, the &lt;em&gt;conservative&lt;/em&gt;&#xA;estimate for the number of Twitter bots is somewhere around 15% of all active accounts, suggesting&#xA;that automated account activity is in fact prominent across the Twitter ecosystem. In fact, your&#xA;daily interactions on Twitter may very well include interactions with bots! Despite the negative&#xA;connotations surrounding the term &lt;em&gt;Twitter Bots&lt;/em&gt;, the qualitative judgement shouldn&amp;rsquo;t be so&#xA;simplistic. The usage of Twitter bots can vary from being as helpful as disseminating information on&#xA;natural disasters, to being as harmful as cultivating terrorist recruitment propaganda. Leaving that&#xA;value judgment up to you, in this blog post, I&amp;rsquo;ll be writing about how to make a fully functional&#xA;Twitter bot that Tweets simple sentences composed of three words - hence the &amp;ldquo;Three Word&#xA;Philosopher.&amp;rdquo; Hop on!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Go Live With Your Flask Application on Heroku</title>
      <link>https://www.jeffyang.io/posts/deploy-flask-application-on-heroku/</link>
      <pubDate>Fri, 01 Nov 2019 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/deploy-flask-application-on-heroku/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/0c7awb6o1548mxuj2wmuq/heroku_flask.png?rlkey=cx8blppmcykm8gleoc6m86h9w&amp;amp;st=mrp8hnbo&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;p&gt;You worked for hours on your project, maybe days, or maybe even weeks or months. Regardless of the magnitude of your project, you probably want to share your work somewhere online so others can see it, right? At least for me, the urge to share my work online is something natural. An application is as good as dead if no one else can see your project, and is just sitting there on your local machine. Many inexperienced programmers go through that disheartening moment of thinking &amp;ldquo;How in the world do I host this application up on the internet?&amp;rdquo; If this sounds like you, this post is meant for you (because I know so very well how hopeless that feels), so follow along!&lt;/p&gt;</description>
    </item>
    <item>
      <title>Build Your Own Website with Flask</title>
      <link>https://www.jeffyang.io/posts/build-a-flask-website/</link>
      <pubDate>Sat, 26 Oct 2019 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/build-a-flask-website/</guid>
      <description>&lt;p&gt;&lt;img src=&#34;https://www.jeffyang.io/static/images/build-a-flask-website/flask_md.png&#34; alt=&#34;Blog Post Thumbnail&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;Disclaimer&lt;/strong&gt;: &lt;em&gt;I have migrated my personal website since I wrote this post back in 2019, and moved away from the blog written with Flask. This website that you are on currently is built with Gatsby, and is hosted on Netlify. Regardless, for those of you interested in creating a simple personal website with Flask, read on!&lt;/em&gt;&lt;/p&gt;&#xA;&lt;p&gt;Hello World! This is a post that was on my mind for a while now, and I&amp;rsquo;m so glad to finally write this post on this personal portfolio site I created! I previously had a Wordpress site that got me a good-looking fancy website up and running in no time. With all the beautiful Wordpress blog templates out there for a bargain, a sleek looking website was just a few clicks away. Nevertheless, something kept telling me to build a website myself - let me tell you why. Most importantly, the Wordpress site was beautiful on the outside, but rather bulky inside. I wanted to build a faster and a more light-weight website. Wordpress offered thousands of useful plugins (which is great), but having to update them constantly (for security purposes) was another downside of owning a Wordpress site. Last but certainly not the least, I thought &amp;ldquo;why not take this chance to brush up my web development skills?&amp;rdquo; This portfolio site is by no means greatly complex, but it still has all the basic structures of a full-fledged web application. So this simple site came to be, and for its creation, I mainly utilized Python&amp;rsquo;s microframework, Flask (and some BootStrap4 to make things look decent effortlessly).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Shipping Code for a Business – Is Your Application Scalable?</title>
      <link>https://www.jeffyang.io/posts/knowru-internship-reflection/</link>
      <pubDate>Mon, 09 Sep 2019 00:00:00 +0000</pubDate>
      <guid>https://www.jeffyang.io/posts/knowru-internship-reflection/</guid>
      <description>&lt;figure&gt;&lt;img src=&#34;https://www.dropbox.com/scl/fi/pwi095uutpacvs18z8p7y/knowru_internship_cover.png?rlkey=9yqg5m1p7v8xszytdn2k8vr81&amp;amp;st=gjvveinv&amp;amp;raw=1&#34;&gt;&#xA;&lt;/figure&gt;&#xA;&#xA;&lt;h3 id=&#34;reflecting-on-2019-summer-internship-knowru&#34;&gt;Reflecting on 2019 Summer Internship @Knowru&lt;/h3&gt;&#xA;&lt;p&gt;This summer, I had the privilege of returning to and working at Knowru, a startup that primarily focuses on helping loan processing companies through a suite of innovative software. I had worked at Knowru in the summer of 2017 before enlisting in the Korean Army, and over the next 2 years of my military service, the company saw remarkable growth (most notably, the backing of a multimillion-dollar investment from Hong Kong). Back at Knowru as a software engineering intern, I had to navigate through problems that came from the company’s rapidly growing customer-base: writing code with scalability in mind.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
