- [email protected] or +82 10-3215-2380
- Web Sites
- Homepage, GitHub Profile, LinkedIn Profile
- Parallel and distributed deep learning
- Distributed server architecture
- Developing and documentating API for engineers
- Free and open source software
- Programming Languages
- Deep Learning
- PyTorch, Data/model/pipeline parallelism
- Back-end Technologies
- ZeroMQ, Couchbase, Redis, etcd, MySQL, PostgreSQL
- AWS, GAE, Terraform, Packer, Docker, Ansible, Datadog, Linux
- Test Engineering
- Testify, mypy, pytest, GitLab CI, Travis CI
- Software Engineer
- Kakao Brain, 2018–
- A deep learning artificial intelligence laboratory in Kakao.
Focus on parallel and distributed deep learning to boost the training speed.
Reproduced GPipe, which is a pipeline parallelism framework with checkpointing by Google, in PyTorch and implemented torchgpipe as a library.
Using Python 3, PyTorch.
- 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. Achieved up to 70k concurrent users per MMO world with a scalable geological space. Launched this game in Korea and Indonesia. Maintained the game service continuously.
Built an internationalization system based on gettext. Implemented a high quality message interpolation focused on linguistics features of Korean and Indo-European languages.
Used Python, C#, Cython, ZeroMQ, MsgPack, Couchbase, etcd, Redis, MySQL, Unity3D, Git, PlasticSCM, Ansible, Fabric, Docker, Ubuntu, and especially AWS.
- NDC TF in Nexon, 2018
- NDC is the biggest conference in the Korean game industry, like GDC.
- Reviewed applied presentations for NDC 2018. Organized the conference timetable. Helped the speakers to make their presentation better.
- Game Development Engineer
- Team Lupin in Nexon, 2011–2013
- Developed and published mobile and web series of KartRider, a synchronous multiplayer casual racing game.
Designed and implemented a distributed game server architecture for synchronous multiplayer games for the KartRider Dash and KartRider Coin Rush series. Launched these games globally and maintained them.
Researched various rating systems such as Elo, Glicko, and TrueSkill. Implemented a simple matchmaker for 4v4 or free-for-all racing games.
Used Python, Redis as a message broker, Couchbase, MongoDB, Unity3D, Mercurial, Ubuntu, and AWS.
- Full Stack Web Developer
- Npine, 2008–2011
- Supplies stock images for business on Iclickart.
Developed a web server framework adapting the MVC pattern by PHP5. Made and maintained web sites where provide stock images including Iclickart by the own framework. Maintained physical Linux machines in a data center.
Led the software engineering team.
- Front-end Web Developer
- Lunant, 2008–2011
- Served VLAAH, a social network service for discovering, sharing, and utilizing opinions.
Open Source Experience
- torchgpipe, 2019–
- A GPipe implementation in PyTorch.
Implemented the library to make GPipe easy to use by deep learning researchers.
Use Python 3, and PyTorch.
- Hangulize, 2010–
- Automatically transcribes a non-Korean word into Hangul.
Implemented the library to realize Brian Jongseong Park’s idea. Originally, wrote it in Python. But rewrote it in Go to achieve better features, performance, and productivity.
Designed and implemented the web service and RESTful API. Professional Korean translators usually visit here to translate undocumented proper nouns. For example, Netflix refers this project in the Korean timed text style guide.
Use Go, RE2, GopherJS, Vue.js, Travis CI, Heroku, and GAE.
- Tossi, 2016–
- An implementation of Korean allomorphic particles.
- Developed to provide the most natural Korean sentence in Durango. Researched several linguistics papers.
- Profiling, 2014–
- An interactive profiler for Python inspired by the Unity3D profiler.
Developed to find bottlenecks in the Durango server by Python and C. Designed a handy interactive TUI like htop by Urwid.
On GitHub, 2700+ people stared this project. Also it was the 3rd daily trending repository at Sep 22, 2014.
- TrueSkill, 2012–
- A Python implementation of TrueSkillTM which is a rating algorithm for Xbox Live.
- Implemented TrueSkillTM by Python with simple API to learn and share the smart algorithm.
- awesome-go#2104, Babel#427, #488; couchbase-python-client#32, #33, #35; etcd#4320; Flask-0.10.1; gevent#608; jQuery-1.4.3; node-irc#3; pytest-rerunfailures#47; PyZMQ#951; TensorFlow#24678.
- Remake of Hangulize at Golang Korea Meetup Aug 2018 (Korean)
- The server architecture of Durango Vol. 3 at NDC 2018 (Korean)
- Python Survival Guide at Nexon Talk 2016 (Korean)
- The server architecture of Durango Vol. 2 at NDC 2016, awarded the grand prize (Korean)
- Profiling at PyCon KR 2015 (Korean)
- The server architecture of Durango at NDC 2014 (Korean)
- Korean – native
- English – pre-intermediate
Computer Software, Kwangwoon University, 2008 – Completed the first year and left in mid course.