Scroll To View More
Jongwook Kim

Jongwook Kim

Jeju, South Korea
Member since November 4, 2015
With over a dozen years of experience, Jongwook develops simple and robust software that delivers value to customers. Jongwook believes that showing the client a working software first and evolving that product together is important to the development process, so he welcomes changing requirements. He enjoys problem solving and communicating with motivated individuals.
Jongwook is now available for hire
  • Java, 6 years
  • MySQL, 6 years
  • Agile Software Development, 6 years
  • Machine Learning, 4 years
  • Python, 3 years
  • Apache Spark, 1 year
Jeju, South Korea
Preferred Environment
Linux, Git, IntelliJ, PyCharm, Hadoop, Spark
The most amazing...
...project I’ve worked on involved gathering users' feedback and modeling a rank algorithm for a social search collection.
  • Solutions Engineer
    2016 - PRESENT
    • Worked as a Solutions Engineer for Facebook in Korea.
    Technologies: PHP, React
  • Team Lead
    2008 - 2015
    • Implemented a blog post ranking algorithm using bloggers’ trusts, which was computed by their recommendation histories.
    • Created a personalized blog post feeder on Lucene.
    • Modeled news and image collection ranking algorithms.
    • Led a team to create a buzz search service from scratch, which gathers and evaluates users’ reactions to finding issues and related content.
    • Led a team that focused on developing search keyword services, including auto-completion, query suggestions, and trends.
    Technologies: Spark, Scala, Python, Java
  • Software Engineer
    2006 - 2008
    • Adopted Agile methodologies to decrease bugs and service failures.
    • Integrated Java frameworks such as Spring, iBatis, and FreeMarker.
    • Automated server managing and service deployment using Bash.
    • Implemented network servers for communicating with game servers and backed up authentication Oracle servers by using a memory database instead.
    • Worked as the technical lead for Hangame's web development center.
    Technologies: Java, Spring, MySQL
  • Web Developer
    2002 - 2006
    SK Communications and Unitel
    • Implemented a common JavaScript library based on Prototype.js.
    • Developed websites using Struts and MySQL.
    • Maintained and improved websites for online photo prints, online movies, and P2P sites as a lead developer.
    • Implemented a back-end server with pooling sockets from clients and synced events with an external server.
    • Worked with the Cyworld development team.
    Technologies: Java, JavaScript
  • Task Management System (Development)

    This web app is a private project for task management that is based on Django, SQLite, and Vue.js. All functions are covered by unit tests and functional tests.

  • Online Parser (Development)

    This is a private project for parsing TSV files. The project uses web sockets for bidirectional data handling. The Tornado web server is used for the back-end web socket, and AngularJS is used for the front-end.

  • How to Create a Simple Python WebSocket Server Using Tornado (Publication)
    The threaded model and global interpreter lock has always been in the way of Python handling thousands of concurrent long-lived connections. Modern web frameworks, such as Tornado, use non-blocking network I/O to make Python feasible for implementing WebSocket servers. In this article, Toptal engineer Jongwook Kim walks us through the process of implementing a simple WebSocket-based web application in Python using the Tornado web framework.
  • Languages
    Python, Java, SQL, JavaScript, Scala, CSS
  • Storage
    MySQL, Redis
  • Frameworks
    Django, Spring, Hadoop, Apache Spark, Machine Learning, Bootstrap, AngularJS
  • Libraries/APIs
  • Tools
  • Paradigms
    Data Science, Agile Software Development, Concurrent Programming
  • Other
    System Architecture, Leadership
  • Platforms
    Linux, AWS EC2
  • Bachelor's degree in English Language and Literature
    1995 - 2002
    Yonsei University - Seoul
I really like this profile
Share it with others