CV (Curriculum Vitae)

Seunggon Kim / Esji

πŸ“­: crosien@gmail.com

I’m passionate about software engineering for SOTA architecture, programming and theory also.

Contents

Work experience | Education | Projects | Skills | Awards | Publications | Languages

Work experience

Mar. 2022 - Present

Software engineer, Kinolights Inc. - Korea

  • Developed back-end of Kinolights.
    • Built a notification server to control both notification center and push notifications such as FCM.
    • Built a community server to provide Twitter-like features such as posting, commenting, responding, tagging and searching.
    • πŸ“š JS, TS, RxJS, NestJS, TypeORM, GraphQL w/ federation, Elasticsearch, Redis
    • ☁ AWS - Fargate, ECS, Aurora, S3, Route53, MQ, MSK, OpenSearch, SNS, SMS, SQS, WAF, CloudFront

Jul. 2021 - Feb. 2022

Software engineer, ActionPower Corp. - Korea

  • Built stable and scalable STT(Speech-To-Text) pipeline.
  • Built a real-time STT architect.
    • πŸ“š Java, RxJava, Spring boot, Kafka stream, Redis, Vosk, Kaldi
  • Developed back-end of Daglo that is B2C/B2B/B2G service providing STT.
    • Optimized operating cost by adopting Airflow with proper machine type and commitment.
    • Built a data warehouse with Elasticsearch and Kibana.
    • Built a search engine for transcripts and TF-IDF with Elasticsearch Korean analyzer called Nori.
    • πŸ“š JS, TS, Python, ExpressJS, FastAPI, Firebase, Elasticsearch, Kibana
    • ☁ GCP - GKE, GAE, GCS, GSR
  • Developed back-end of Atend for video conference and following STT.
    • πŸ“š JS, TS, RxJS, NestJS, Firestore, Redis, Twilio
    • ☁ GCP - GAE, GCS
  • Built end-to-end (E2E) testing.

Jun. 2019 - Jul. 2021

Software engineer, LINE Plus Corp. - Korea

  • Developed back-end of LINE messenger.
    • Optimized the performance of ES get/search queries by tuning the cluster and the queries.
    • Implemented business logics for features such as read-only chatroom and adult-only chatroom.
    • Developed a Content Management System (CMS) for back office.
    • πŸ“š Java, RxJava, Spring, MySQL, Redis, Elasticsearch, HBase, Kafka, Zookeeper, Armeria, Central Dogma, Retrofit, Thrift, Protobuf
  • Developed CI/CD and automation.
    • Built periodic ranking/trending data generation with ES.
    • Built automated monitoring with end-to-end (E2E) testing.
    • Analyzed the bottleneck with profiling tools.
    • πŸ“š Java, Python, Kotlin, Spring Batch, Flask, Jenkins, Ansible, Zipkin, JMH, Gatling, Prometheus, Micrometer, Dropwizard

Oct. 2017 - Jun. 2019

Senior researcher, Coinplug Inc. - Korea

  • Improved the performance of back-end of cryptocurrency exchange.
    • Throughput for bidding API was increased 200 times. It is done by resolving single-threaded task.
    • πŸ“š Java, Spring, MySQL, RabbitMQ, AWS EC2
    • ☁ AWS - EC2, MQ
  • Built Ethereum proxy as delegator of transactions.
    • πŸ“š Go, Ethereum
    • ☁ AWS - Lambda, API Gateway
  • Built decentralized appications (DApp) interacting smart contract through web3.
    • πŸ“š Solidity, Ethereum, IPFS, ReactJS
  • Built API clients for trading and monitoring the tendency.
    • πŸ“š Go, ReactJS
  • Researched blockchain technologies and security issues on all sides such as platform, smart contract, GDPR and so on.

Education

  • M.S. and Ph.D. Candidate, CE, Seoul National University, Korea, 2017
  • B.S., CE, Kwangwoon University, Korea, 2012
  • Extra
    • Self-Driving Car Nanodegree Term1 and Term2, Udacity, 2017
    • Software Maestro, Ministry of Science, Korea, 2013

Projects

  • Open source
    • Armeria - a microservice framework to easily build any type of technologies including gRPC, Thrift, Retrofit and so on.
    • Python client for Central Dogma - a Python client for Central Dogma that is highly-available version-controlled service configuration repository based on Git, ZooKeeper and HTTP/2.
  • Individual
    • Employee Stock Option Calc. (ESO calculator, μŠ€ν†‘μ˜΅μ…˜ 계산기)
      • iOS, Android
        • πŸ“š Dart, Flutter, Firebase (Analytics, Crashlytics, Admob)
    • Chewing Diet (μΈ„μž‰ λ‹€μ΄μ–΄νŠΈ)
      • iOS, Android
        • πŸ“š Dart, Flutter, Firebase (Analytics, Crashlytics)
    • μ˜€λŠ˜λΆ€ν„° 전곡면접 IT
      • a MCQ-based (Multiple Choice Question) study helper for IT interview.
      • iOS, Android
        • πŸ“š Dart, Flutter, Firebase (Analytics, Crashlytics, Cloud messaging, Admob)
      • Web
        • πŸ“š JS, TS, NextJS, Chakra UI
    • MojiE (아무말)
      • iOS, Android
        • πŸ“š Dart, Flutter, Firebase (Analytics, Crashlytics, Admob)
  • Research
    • CPS-Sim, 2016 - 2017
    • ECU-level real-time simulator, 2013 - 2017
      • w/ Hyundai Motors
      • Support verification of application logic on vehicle
    • Component based design theory and control kernel for CPS, 2013 - 2015
    • Real-time system SW on multicore and GPGPU for unmanned vehicles, 2016 - 2017
    • Drone simulation for AED(Automatic External Defibrillator) delivery, 2017

Skills

  • Programming language
    • Java, JS, TS, Python, Go, Dart, SQL
    • Assembly, C, C++, C#, Kotlin, MATLAB, ML, Objective-C, Ocaml, Painless, PHP, Scala, Solidity, Tcl/Tk
  • Platform & Framework
    • Reactive
      • RxJava, RxJS
    • Back-end
      • [Java] Armeria, Spring, Spring boot, Central Dogma
      • [JS] NestJS, ExpressJS, NodeJS
      • [Python] Django, Flask, FastAPI
      • [Storage] Elasticsearch, Redis, MySQL, HBase, Firestore, DynamoDB, LevelDB, PostgreSQL, Zookeeper, Ethereum, IPFS
      • [Stream] Kafka, RabbitMQ, AWS SQS
      • [Orchestration] Docker, Jenkins, Kubernetes
      • [Monitoring] Gatling, Grafana, Kibana, Prometheus, Zipkin
    • Front-end
      • Flutter, NextJS, ReactJS
      • Cocos2d, MFC, Qt, Tizen, Unity
    • Vehicle field
      • [Simulator] CarSim, Torcs
      • AutoBox, AUTOSAR, EB Tresos, Odin, Simulink
      • FlexRay, CAN(Controller Area Network), CAN-FD
  • Protocol
    • HTTP/2, REST, GraphQL, gRPC, RTC, SSE, SPDY, Thrift, Websocket
  • Cloud service
    • AWS - OpenSearch, MSK, RDS, SNS, SMS, SQS, WAF, CloudFront, ALB, API Gateway, Fargate, ECS, EC2, Lambda
    • GCP - Composer, GAE, GCE, GCR, GCS, GKE, GSR, Memorystore
  • Tool
    • Github, Gitlab, Sourcetree, JSFiddle, Remix
    • Slack, JIRA, Trello
    • [Documentation] Confluence, Doxygen, Javadoc, Sphinx, Jekyll
    • [Analysis] async-profiler, Dr.Memory, Valgrind, Black Duck Hub
    • [Package manager] Gradle, Helm, npm, yarn, pip, dep
    • Hardware-related
      • CodeWarrior, GreenHills, TASKING, Trace32
      • Infineon(TC1797, TC275), STMicro(SPC56EL70), Freescale(MPC5606B), Raspberry Pi, Arduino
      • CANalyzer, CANDB, PCAN-USB, Vector(VN1640, VN7600)

Awards

  • 2nd prize, OSS grand developers challenge, National IT Industry Promotion Agency (NIPA), 2016
  • Best paper award, Korea Computer Congress (KCC), 2017

Publications

  • Kyoung-Soo We, Seunggon Kim, Wonseok Lee, and Chang-Gun Lee, Functionally and Temporally Correct Simulation of Cyber-Systems for Automotive Systems, in IEEE Real-Time Systems Symposium (RTSS), Dec. 2017
  • Wonseok Lee, Kyoung-Soo We, Seunggon Kim, Sangyoun Paik, Jonathon Soulis, and and Chang-Gun Lee, An ECU-Close Design/Verification Tool for Automotive Systems, in IEEE Real-Time Systems Symposium (RTSS@Work), Paris, France, Dec. 2017
  • Hyejin Joo, Kyoung-Soo We, Seunggon Kim, and Chang-Gun Lee, An End-to-End Tool for Developing CPSs from Design to Implementation, in The First International Workshop on Verification and Validation of Cyber-Physical Systems (V2CPS), Reykjavik University, Iceland, June 2016
  • …

Languages

  • πŸ‡ΊπŸ‡Έ English
  • πŸ‡°πŸ‡· Korean (native)
  • πŸ‡―πŸ‡΅ Japanese (JLPT N2)