Ph.D. Computer Science Department New Jersey Institute of Technology, Newark, NJ 07102
Email: hwc1027atnjitdotedu | hyungwondotchoiatgmaildotcom
Last updated at March 2010
NOTE
I have recently joined a company as Research Engineer position (6/1/10). You can still reach to the above emails. Thanks.
PROFESSIONAL SUMMARY
Possess profound experience in designing and implementing dynamic and autonomous systems to maximize the use of data center resources using dynamic virtual machine migration.
Doctoral education in parallel and distributed computing on a cluster of Linux servers including multiple virtual machines.
Experience in developing software for a large-scale cluster of servers and managing graduate researchers, and being recognized by peers in publications and presentations.
Expert knowledge of Linux Kernel architecture with an in-depth internal analysis. Co-developed a graduate course in the Linux Kernel programming for my academic advisor.
Technical Knowledge: Linux Kernel, Virtualization, Virtual Machine, OS Migration, Autonomous System, Cluster, High Performance, Infrastructure, Middleware, Datacenter, Benchmark
EDUCATION
Ph.D. in Computer Science, New Jersey Institute of Technology, Newark, NJ, May 2009.
Dissertation: Autonomous Migration of Virtual Machines for Maximizing Resource Utilization - abstract , dissertation
Advisor: Professor Andrew Sohn
One-year study in Ph.D. in Computer Science, NJIT, Newark, NJ, September 2000 - May 2001.
M.S. in Computer Science, New Jersey Institute of Technology, Newark, NJ, May 2000.
B.S. in Physics and Computer Science, Sogang University, Seoul, Korea, February 1998.
RESEARCH EXPERIENCE
Autonomous Virtual Machine Migration, (Fall 2004 - Present)
Designed, developed, and implemented a framework of autonomous virtual machine migration for maximizing resource utilization in the Linux cluster environment.
Developed and provided the framework autonomously migrates VMs across the cluster to achieve the efficient resource utilization, and improved the overall resource utilization in the cluster.
Deployed hundreds of VMs in the cluster, and evaluated the proposed autonomous VM migration framework with developed benchmarking applications.
Applied the proposed autonomous framework to the distributed computing.
Analyzed virtual machine behaviors and resource utilization in the cluster environment.
Linux Kernel Analysis and Study, (Fall 2004 - Present)
Developed in-depth and hands-on, architectural level experience regarding the Linux Kernel.
Analyzed and studied all aspects of the Linux kernel (versions of 2.4.26 ~ 2.6.32).
Developed and modified Linux Kernel for the study and research.
Co-designed, developed the undergraduate and graduate courses for Linux Kernel programming.
Developed the cluster of Asterisk (Open Source PBX & Telephony Platform) for Voice over Internet Protocol (VoIP)
Built High Available and Scalable Web Server based on Apache Server using Message Passing Interface (MPI), (1999 - 2001)
PUBLICATIONS
Hyung Won Choi, Hukeun Kwak, Andrew Sohn, Kyusik Chung, Autonomous Learning for Efficient Resource Utilization of Dynamic VM Migration, in Proceedings of the 22nd ACM International Conference on Supercomputing (ICS '08), Island of Kos, Greece, June 2008, pp.185-194. [ACM portal , Local] [slide]
Hyung Won Choi, Hukeun Kwak, Andrew Sohn, Kyusik Chung, DRIVE - Dispatching Requests Indirectly through Virtual Environment, in Proceedings of the 10th IEEE International Conference on High Performance Computing and Communications (HPCC-08), Dalian, China, September 2008, pp.61-68. [IEEE Xplore, Local] [slide] (Outstanding Paper Award)
Hyung Won Choi, Hukeun Kwak, Andrew Sohn, Kyusik Chung, DRIVE - Dispatching Requests Indirectly through Virtual Environment, (Journal) in a Special Issue on "Advanced in Ubiquitous Computing and Networking" of Wiley Journal of Concurrency and Computation: Practice and Experience (CCPE), Published Online (Early View) at September 2009. [Wiley InterScience] DOI:10.1002/cpe.1502.
Hyung Won Choi, Hukeun Kwak, Andrew Sohn, Kyusik Chung, Impact of Proactive Learning on Autonomous VM Migration, submitted for publication.
In Preparation, Hyung Won Choi, Hukeun Kwak, Andrew Sohn, Kyusik Chung, Impact of Proactive (Extended) Learning on Autonomous VM Migration.
CCS Research Month Doctoral Student Presentations, "Autonomous Migration of Virtual Machines for Sustainable Computing Environment", NJIT, Feb. 18, 2008.
CS Ph.D. Student Research Day 2006, "Dynamic Migration of Operating Systems on a Cluster of PCs for Improving the Utilization", NJIT, April 25, 2006.
The 2nd Annual Graduate Student Seminar Day, "Autonomous Migration of Applications on a PC Cluster", NJIT, Nov. 23, 2004.
PROFESSIONAL & ACADEMIC EXPERIENCE
Research Assistant, New Jersey Institute of Technology, Newark, NJ (Fall 2003 - Spring 2009)
Designed, developed and led multiple research projects, including autonomous VM migration framework and Linux Kernel internals research.
Supervised Master/PhD students' projects and guided students.
Teaching Assistant (TA), New Jersey Institute of Technology, Newark, NJ (Fall 2004 - Spring 2009)
TA Courses: Linux Kernel courses, Computer architecture, Advanced networking and Internet.
Lab Instructor: Introduction to computer science, Data structures with Java.
Undergraduate Courses: cis485 (Kernel class, Fall '05), cis114A Lab (Java, Spring '06), cs114A Lab (Java, Fall '06 ~ Fall '07), cs113A Lab (Java, Spring '09)
Graduate Courses: cis650 (Comp Arch, Fall '04 ~ Fall '05), cis656 (Networking, Fall '05), cis786 (Kernel class, Spring '05, Spring '06), cs680 (Kernel class, Spring '09), cs505 Lab (Java, Fall '07 ~ Spring '09)
Software Engineer in Pumpkin Networks Inc. (intelligent switching technology), Sunnyvale, CA (May 2001 - June 2003)
Designed, developed and implemented tools for testing including statistics gathering, monitoring, analyzing, graphing utilities.
Developed installment tool for a large scale environment software as well as system integration software
Planned QA schedules, authored QA engineering documents, created test plans and test cases for complex Linux and Windows clustered environments.
Performance testing and functional testing for an array of distributed applications.
Created, managed, and coordinated a web based bug-tracking system to accelerate bug patches and product release times.
Aided the system Integration teams as well as wrote product manuals, technical support and deployment documentation.
Advising/Guiding Master Students' projects, New Jersey Institute of Technology, (Fall 2003 - Spring 2008)
Fall 2007~Spring 2008: Virtual Machine Analysis for the clustered environment
Spring 2006: SSL VPN Clustering using Splitted SSL Protocol