Heungsub Lee

Contact
[email protected] or +82 10-3215-2380
Web Sites
subl.ee, github.com/sublee, linkedin.com/in/sublee

Interests

Skills

Programming Languages
Python (expert), Go, JavaScript, Bash, C#
AI Research
PyTorch, NVIDIA Nsight Systems, Data/model/pipeline Parallelism
Back-end Development
Linux, AWS, Terraform, Docker, ZeroMQ, Redis, etcd, MySQL
Test Engineering
Testify, mypy, pytest, GitLab CI, Travis CI

Work Experience

Software Engineer
Kakao Brain, 2018–
A deep learning artificial intelligence laboratory in Kakao.

Focused on parallel and distributed deep learning to boost training performance.

Reproduced GPipe in PyTorch, and developed torchgpipe as an open source library.

Game Server Architect
What! Studio in Nexon, 2013–2018
Developing Durango, a seamless open world MMORPG.

Designed and implemented the architecture of a distributed MMORPG server. The server achieved up to 70k concurrent users per MMO world.

Built an internationalization and localization system focused on linguistics features of Korean and Indo-European languages.

Led the server development team including up to 15 engineers.

Game Development Engineer
Team Lupin in Nexon, 2011–2013
Developed and launched multiplayer racing games: KartRider Dash & Coin Rush

Designed and implemented a distributed game server architecture for synchronous multiplayer racing games.

Researched rating systems such as Elo, Glicko, and TrueSkill to develop a matchmaker for 4v4 or free-for-all games.

Web Developer
Npine, 2008–2011
Supplies stock images for business on Iclickart.

Developed web services from the base framework to the application.

Maintained physical Linux machines in a data center.

Led the development team including three web developers.

Front-end Web Developer
Lunant, 2008–2011
Served VLAAH, social media for discovering, sharing, and utilizing opinions.

Designed and implemented the UI/UX for VLAAH.

Developed an open source project jDoctest, which is a JavaScript testing framework using example code in documentation comments.

Open Source Experience

torchgpipe, 2019–
A GPipe implementation in PyTorch.

Developed GPipe in PyTorch. GPipe is a scalable pipeline parallelism library for training of a giant model. The story behind this project can be found in Kakao Brain Blogko.

Optimized the pipeline parallelism and checkpointing for CUDA and PyTorch’s autograd engine.

Hangulize, 2010–
Automatically transcribes a non-Korean word into Hangul.

Implemented an automatic Hangul transcription algorithm to realize Brian Jongseong Park’s idea. By origin, it was written in Python, but rewritten in Go for better features, performance, and productivity.

Designed and implemented the web service and RESTful API. Many professional Korean translators usually visit here to translate undocumented proper nouns. For example, Ryu Gwang, who is a famous technical translator, introduced this web service in his postingko. Netflix also refers to it in the Korean timed text style guide.

TrueSkill, 2012–
A TrueSkill™ implementation in Python.
Implemented TrueSkill™, which is a rating algorithm for Xbox Live, in Python with a handy interface to learn and popularize the algorithm.
Profiling, 2014–2018
An interactive profiler for Python inspired by the Unity3D profiler.

Developed a tracing based and statistical profiler for Python with a handy interactive TUI inspired by the Unity profiler.

On GitHub, this project has been starred by 2.9k people. Also, it was the 3rd daily trending repository on Sep 22, 2014.

Others
  • Tossi – A utility for Korean allomorphic particles.
  • SUBLEERUNKER – A simple parody game of SUBERUNKER. Play it in your web browser.
  • Flask-AutoIndex – mod_autoindex for Flask
  • Me2virus – An XSS attack on Me2day, social media. When a user looks at an infected post, a new infected post was written on the user’s wall.
Contributions
For PyTorch, deprecated inconsistent API (#21006), discussed a counterintuitive behavior of the autograd engine (#18568); for ZeroMQ, discussed a PUB socket crash (#2942); for Flask, fixed a bug to generate URL with a subdomain (#108); for jQuery 1.4.3, restored a missing part of the content negotiation header for Ajax.

Public Speeches


Languages

Education

Computer Software, Kwangwoon University, 2008 – Completed the first year only.