Suhun Han (한수훈)

Software Engineer based in Seoul, Korea

email: **********@gmail.com
text: +1 470-***-****

I'm Suhun, a software engineer passionate about solving real-world problems using cutting-edge technologies.

I always thrive on learning new skills/technologies driven by curiosity. Over the years, I've honed my programming expertise in modern programming languages like TypeScript, Go, Rust, and Swift through spare-time hobby programming and full-time work. I also enjoy the challenges of DevOps things, such as building infrastructures and network architectures. (FYI, I'm maintaining a 10G homelab in my home, connected to the secondary homelab running in my family house via a site-to-site VPN. Here are more details about it (Korean)).

I started software development at 14 years old. Since then, I've always been fascinated by the design of programming languages and how they work so naturally with hardware. I've also always loved seeing the software I design/develop solve real-world problems, improve the world, and receive customer feedback and satisfaction.

Work Experiences

Lead Software Engineer @ Inedit Corp.

2022 - Present

Software Engineer @ EJN Corp.

2020 - 2022

Launched and maintained multiple services including GOCRE, a live streaming support tool for creators in Japan, and TGD Ranking, an engagement data visualization service for Twitch viewers in South Korea.

  • GOCRE (ゴークリ)

    A web-based live streaming support tool for creators in Japan.

    • Utilized Terraform to set up a fully managed infrastructure, including VPC, EC2, ECS, RDS, and more.
    • Initiated front-end structure with React and MobX, and dedicated to developing back-end services using Nest.js and uWebSockets.js.
    • Used OpenAPI Specification to provide detailed documentation and eliminate API-related human errors.
  • TGD Ranking (트게더 랭킹)

    A data visualization service for Twitch viewers in South Korea.

    • Built front-end using React and MobX, and back-end using Nest.js.
    • Operated and scaled AWS Aurora PostgreSQL and ElastiCache for data storage and caching, without any critical issues.
    • Optimized for handling over 100k database-intensive requests per minute at peak, maintaining sub-second response times.
  • TWIP (트윕)

    Contributed to transitioning a legacy PHP-based service to Nest.js.

TypeScriptReactNode.jsRedisPostgreSQLMySQLAWSTerraform

Software Engineer @ HELP ME Co., Ltd.

2018 - 2020

Specialized in Automation and Reliability Engineering. Implemented SRE-based discipline, managed critical application availability, and automated many repetitive tasks to improve productivity and efficiency.

  • Implemented SRE-based discipline, including internal tech seminars, documentation, and system monitoring/alerting using Prometheus and Grafana.

  • Defined SLO/SLI and enhanced monitoring to ensure the availability of mission-critical services.

  • Managed the office's network infrastructure, including NAT on CISCO ASA with zone-based firewalls.

  • Deployed Kubernetes using Kops to manage internal services and applications efficiently.

  • Developed a high-performance .NET-based Windows application for workspace. Implementing custom indexing for the workspace, resulted in reduced directory/file lookup times to less than a second from 10+ seconds.

TypeScriptNode.jsPuppeteerGrafanaKubernetes.NET FrameworkWin32 API

Software Engineer (Sergeant) @ Cyber Command, Republic of Korea

2016 - 2018

During mandatory military service, I managed a secure air-gapped network, developed a web monitoring system, and automated website change detection using Go and Python.

  • Established and managed a secure, physically separated air-gapped network.

  • Mirrored complete repositories of PyPi, NuGet, and npm using self-written scripts. (NPM fork utility: open-sourced in GitHub)

  • Developed a real-time web monitoring and website mutation detection system, processing 100K pages daily across 50+ VMs.

PythonGoNode.jsVirtualization

Mentee @ Software Maestro 4th (National IT Industry Promotion Agency)

2013 - 2014

Publications

Published an article on security awareness, exploring why HTTPS can be faster than HTTP in 마이크로 소프트웨어 (MICRO SOFTWARE), a famous Korean software-related magazine.

Open-Source Projects

An android OTA payload dumper written in Go. Published to multiple well-known package repos and actively used in major Android OSS communities such as XDA Developers and r/LineageOS. (2.2K stars)

GoProtobuf

A package to integrate AWS SQS into a NestJS application. (200 stars, around 62k weekly downloads)

TypeScript

(Unofficial) Googletrans: Free and Unlimited Google Translate API for Python. (3.8K stars)

Python

Matchumbeop is a native, Swift-written macOS app designed to simplify the use of multiple publicly available 한글(Hangul) spell checkers by integrating their unofficial APIs in a user-friendly way. This app makes it easy for macOS users to use these spell-checking services natively.

macOSSwift

Python library for Korean spell check using Naver's spell check API. (326 stars, occasionally maintained)

Python

Build ffmpeg for ARM-based Apple Silicon Macs. (220 stars)

Bash

A smart automation alternative to Mi Home. (41 stars)

JavaScript

A Ruby wrapper for the Telegram API. (80 stars, unmaintained)

Ruby

A Python library for basehangul implementation (for fun, unmaintained).

Python

Reverse-engineered Projects

A Pure Go port of the speed.kt.com agent. (Reverse-engineered Java-based agent)

Go

An unofficial BenchBee SpeedTest Client designed for CLI usage. (Reverse-engineered obfuscated JS code)

Go

A simple KakaoTalk loco/http protocol wrapper for Python. Reverse-engineered Windows KakaoTalk Client (Win32 native).

  • Mentioned as a basic reference

    Mentioned in node-kakao as a basic reference.

Python

Spare-time Production Projects

일베회원검사기

2014

A web application built with Ruby and Sinatra, deployed on Heroku. This app went viral in Korea and was featured on various Korean news sites. For some time, it was ranked as the top-ranked keyword in the largest Korean search engine, NAVER.

RubySinatraRedis

Ubitinfo

2013 - 2016

A web service for managing and viewing gameplay data for Konami's arcade music video game, 'Jubeat (ユビート)', with thousands of active users.

  • s.ubit.info (ubit.info for jubeat saucer, archive)

    Initial version built with PHP 5.4, MySQL, php5-fpm + nginx, with 2K monthly active users (MAU).

  • ff.ubit.info (ubit.info for jubeat saucer fulfill, archive)

    Upgraded version built with Ruby using Padrino, ERB, Sidekiq, Puma, and DataMapper, with 4K MAU.

  • ubit.info (for jubeat prop, archive)

    Final version built with Python using Django, Celery, MySQL, uwsgi + nginx, with 6K+ MAU.

  • Discontinued in 2016 (jubeat qubell)

PHPRubyPythonMySQLnginxDjangoCelery

Siri Proxy Server

2011

A Siri proxy server for use with Spire in iOS 5+ (Siri on iPhone 4), with over 3K monthly active users (MAU) in South Korea. I can't disclose the service name here for some reason.

PythoniOS

Open-Source Contributions

Additional Informations

© 2024 Suhun Han. All rights reserved.