Mina Lee

minalee_profile

Ph.D. Student
Computer Science
Stanford University

minalee@cs.stanford.edu
Resume [pdf]


News


Last updated: 30 July 2018


Research Interests


Program Synthesis, Neural Code Search, Computer-Aided Education

Understanding programming languages based on their semantics and usage.
Using machine learning and natural language processing techniques
to improve developer productivity.


Publications


Mina Lee, Sunbeom So, and Hakjoo Oh. Synthesizing Regular Expressions from Examples for Introductory Automata Assignments. In the GPCE 2016: Proceedings of the 2016 ACM SIGPLAN International Conference on Generative Programming: Concepts and ExperiencesBest Paper Award [pdf|code]

* More details available here

AlphaRegex

AlphaRegex: automatic synthesizer for regular expressions from examples

Acknowledgment

Kihong Heo, Hakjoo Oh, and Kwangkeun Yi. 2017. Machine-Learning-Guided Selectively Unsound Static Analysis. In the ICSE 2017: Proceedings of the 39th International Conference on Software Engineering. [pdf]


Education


SU_New_BlockStree_2color.png
Stanford University
Computer Science
School of Engineering

Ph.D. Student, September 2017 – Present
Advisor: Percy Liang

I am greatly fortunate to have been advised by Professor Alex Aiken, Emma Brunskill, and Percy Liang as a part of the rotation program at Stanford.


Korea_University_Global_Symbol.svg

Korea University
Bachelor of Science in Computer Science and Engineering, Spring 2012 – Spring 2016
Bachelor of Engineering in Software Technology and Enterprise Program (Interdisciplinary Program), Spring 2014 – Spring 2016

Total GPA of 4.39 / 4.5 (98.7 / 100)
Adviser: Hakjoo Oh

Courses: Compiler, Theory of Computation, Data Science, Machine Learning, Information Retrieval, Natural Language Processing, Probability and Random Processes, Computer Network, Database, Computer Graphics, Software Engineering, Software Project Management, Computer System Design, Data Structure, Discrete Mathematics, Logic Design and Experiments, Introduction to Computer Programming, Introduction to Internet Practice, Introduction to Cryptology (Total Number of Credits: 140.0)

Audited Courses: Programming Languages, Programming Language Theory, Program Analysis


logoUBC

University of British Columbia
Computer Science
Exchange Student, Fall 2014 – Spring 2015
Teaching assistant for Basics of Computer Systems in Department of Computer Science, Spring 2015

Total GPA of 88.89 / 100

Courses: Intermediate Algorithm Design and Analysis, Computer Hardware and Operating Systems, Basics of Computer Systems (TA), Internet Computing, Human Computer Interaction Methods, Software Construction, Basic Algorithms and Data Structures, Introduction to Computer Systems

Preview

Essay about exchange program at UBC

Download essay


State University of New York Korea
Software Technology and Enterprise
Summer School, Summer 2014

  • Took enterprise-related courses: How to Build a Startup, Marketing for Engineers
  • Enhanced my understanding of startups, business, and marketing

Research Experience


Research Intern at Translational Molecular Imaging and Theranostics Laboratory, Graduate School of Convergence Science and Technology at Seoul National University
July 2017 – August 2017 (Summer Internship)

  • Participated in projects on deep learning applications in medical imaging
    • Predicted progression of Parkinson’s Disease from DaTscan images by using convolutional neural networks
    • Harmonized PET quantification by using generative adversarial networks

Research Intern at Programming Research Laboratory, Korea University
November 2015 – August 2016

  • Led a project on automatic synthesis of regular expressions, won the Gold Prize in the Graduation Project Competition with a poster based on the work
  • Participated in projects on program synthesis, static analysis, and machine learning
    • Program Synthesis: Synthesized simple regular expressions from examples
    • Static Analysis: Reduced false alarms by selectively applying soundness to programs
    • Machine Learning: Learned feature programs from results of static analysis
  • Gave a poster presentation on synthesizing regular expressions at SPLASH 2016
  • Gave a presentation on selective static analysis at SIGPL Winter Workshop 2016
  • Took Compilers and audited Programming LanguagesProgramming Language Theory, Program Analysis courses
  • Used OCaml and Coq

Teaching Experience


Teaching Assistant at the University of British Columbia
January 2015 – April 2015

  • Worked for Basics of Computer Systems in the Department of Computer Science
  • Covered basic C programming, assembly language (X86-64), pipelined CPU, caching, memory hierarchy, virtualization, processes and threads, file systems, and networking
  • Ran laboratories for over 50 students twice a week, had office hour every week, answered questions in person and online, marked assignments, and proctored exams

Work Experience


Software Engineer Intern at Facebook
June 2018 – September 2018 (Present)

  • Used machine learning techniques to jointly model code and natural language
  • Built plugin for Jupyter Notebook which takes code context and natural language query and performs contextual semantic search to suggest most relevant API calls

Research and Development Intern at Smart and Innovative Technology
January 2016 – February 2016

  • Researched industrial protocols and their specifications for automatic control systems
  • Evaluated open source libraries for protocols such as Modbus TCP, OPC UA, and BACnet
  • Developed prototypes for networking simulation using Java for development, MariaDB and MyBatis for database management, and Maven for project management

Software Developer Intern at Trap Danmark
June 2015 – August 2015

  • Built up digital strategy for national Danish topographic encyclopedia
  • Designed interactive UI tailored for map-related features using Mapbox API
  • Developed Android application for prototyping and suggested markup language
  • Used HTML, CSS, JavaScript, jQuery, Ajax, PHP and Java for development and Editplus and Eclipse for development tools
Picture1

Application ‘Trap Danmark’

Reference letter from Trap Danmark


Software Developer (Contract) at Korea Forest Service
May 2014 – June 2014

  • Developed an Android application showcasing wilderness lodges in Korea and its administrative console for maintenance
  • Led a project throughout initiation, planning, execution, and closure
  • Had official meetings and presentation, analyzed similar applications, created contents, designed UI/UX, developed the application, ran usability tests, and made administrative console
  • Learned project management, web programming, communication and documentation skills
  • Used HTML, CSS, JavaScript, jQuery, Ajax, PHP, and Java for development and Editplus and Eclipse for development tools

Download the application

사립자연휴양림

Application ‘사립자연휴양림’


Software Developer (Contract) at Korea University
July 2014 – August 2014

  • Developed an Android application and its administrative console for mentoring system in College of Medicine at Korea University
  • Implemented various functionalities: automatically re-sizing images on server, support for excel files to import/export students information, quick access to reports, statistics derived from existing data, etc.
  • Developed as a hybrid application using PhoneGap for better performance of hardware-supported functionalities such as taking pictures with camera, retrieving pictures from gallery, recording audio, etc.
  • Learned project management and how to deal with constantly changing requirements

Media


Stanford School of Engineering Spotlights Interview
July 2018  Facebook | Instagram | Twitter


My Little Story on Applying to Graduate Schools
July 2017

Cover

 

지금 알려줄게요, 미국대학원
이민아 지음 | 푸른들녘 | 목차

Related posts:

박사과정 지원을 준비하며
박사과정 지원 Q & A
스탠퍼드에서의 한 해를 마치며

Referred in:

머신러닝 해외 취업 준비

 


Honors and Awards


minalee-ku

Graduation project competition at Korea University

  • Best Paper Award, Generative Programming: Concepts and Experiences (GPCE) (2016)
  • Gold Prize in Graduation Project Competition, Korea University (2016)
  • Dean’s List, Korea University (2016)
  • Semester High Honors, Korea University (2012, 2013, 2015, 2016)
  • Semester Highest Honors, Korea University (2013)

Scholarships


minalee-kfas

KFAS Scholarship Award Ceremony

  • Doctoral Study Abroad Scholarship, Korea Foundation for Advanced Studies
    • This program was established in 1974 to support talented young students to pursue and successfully complete their doctorates at leading overseas research universities
  • Scholarship for PLMW@PLDI 2016, PLDI (June 2016)
    • This scholarship supports qualified students to attend the 2016 ACM SIGPLAN Programming Languages Mentoring Workshop at the Conference on Programming Language Design and Implementation [report]
  • National Science and Engineering Scholarship, Korea Student Aid Foundation (Spring 2015 – Spring 2016)
    • This scholarship supports undergraduates with strong academic performance in science and engineering, with the purpose of developing future leaders in those fields.
    • Merit scholarships with aids of full tuition and fees
  • Study Scholarships, Korea University (Spring 2013, Fall 2014)
  • National Scholarships, Korea Student Aid Foundation (Fall 2013 – Fall 2014)
  • Venture Internship Program Scholarships, Korea University (Fall 2013)
    • This scholarship supports students for Silicon Valley trip to visit Google, Microsoft, Intel, Dropbox, KOTRA, Altos Ventures, Ooyala, Flow State Media, Plug and Play, Proof Ventures, etc.
  • Honors Scholarships, Korea University (Fall 2013)
    • This scholarship is awarded to students with outstanding academic achievement
  • Collegiate Honors, Korea University (Spring 2013)
    • This scholarship is awarded to a student in the first place in Department of Computer Science and Engineering
  • Best Honors Scholarships, Korea University (Fall 2012)
    • This scholarship is awarded to a freshman in the first place in Department of Computer Science and Engineering
  • Academic Excellence Scholarship for Freshmen, Korea University (Spring 2012)
    • This scholarship is awarded to freshmen with outstanding academic records
실리콘밸리연수

Silicon Valley trip in 2014


Technical Skills


Advanced     Python, C, Java, HTML, CSS, PHP, JavaScript, jQuery, Ajax
Moderate     OCaml, Assembly Language (X86-64)
Novice          Coq


Language Proficiency


Fluent in English and Native in Korean

New GRE       Verbal (161, 88%), Quantitative (170, 97%), Writing (4.0, 59%)
IBT TOEFL     114 (Reading: 28, Listening: 30, Speaking: 26, Writing: 30)


Extracurricular Activities


Korea University Buddy Assistants
September 2013 – February 2014

  • Taught Korean and learned English by participating in language exchange programs
  • Helped exchange students adjust to Korean culture and campus life
  • Organized and participated in various activities and events such as welcoming party, weekly dinners, monthly field trips, and international student festival

Korea University Institute of Computer Security
March 2012 – December 2013

  • Taught C language to freshmen in Computer Science for a semester
  • Gave lectures and made assignments with own material on weekly basis
  • Participated in study groups for web hacking and system hacking

Projects


Paper Reading Assistant, June 2016 [report]

Recommended specific sentences in a paper to read by ranking sentences. Suggested similar papers based on nearest neighbor search and clustered them using word2vec/doc2ved. Visualized keywords with WordCloud.

Data Science, Korea University


Dialog System for Wikipedia, June 2016

Built a dialog system for Wikipedia using Wikipedia API and Wit.ai. Extracted keywords from users’ utterances in natural language, performed search with keywords, parsed and handled valid/invalid responses, and returned necessary results to users.

Natural Language Processing, Korea University


Editor, April 2016

Made a simple text editor with assembly language. Supported ASCII characters with some special keys such as Insert, Delete, and Esc as well as arrow keys to navigate text within the editor program.

Computer System Design, Korea University


Compiler for C–, November 2015

Built a front-end and a middle-end of a toy compiler by implementing a lexer, parser, translator, and optimizer for the given source language and target language definition, using OCaml.

Compiler, Korea University


Continuous Speech Recognizer, November 2015

Implemented Viterbi algorithm for continuous speech recognition as well as constructing hidden Markov model (HMM) for acoustic model probability with bigram for language model probability; an input speech is given as a vector sequence to be parsed.

Machine Learning, Korea University


Graphify Facebook, December 2015

Prototyped a system that explores the structure of one’s friend network on Facebook by constructing a graph with people as nodes and relationship (being friends on Facebook) as edges. Computed popularity and familiarity between two people by running various algorithms: degree centrality, closeness centrality, and betweenness centrality as well as visualizing the graph, using D3.js and vis.js.

Information Retrieval, Korea University


Web Proxy Server, March 2015

Built a simple proxy server which parses HTTP requests, filters hosts to block websites, sets up connection to machine identified by hosts, forwards the requests to hosts, caches responses, handles multiple clients with threads, etc. using Unix socket API in C.

Internet Computing, University of British Columbia


FAT Information, March 2015

Made a program in C, which interprets images of FAT file systems and prints out general information about the file system, directory entries, and sub-directories.

Computer Hardware and Operating Systems, University of British Columbia


Streaming Video, February 2015

Implemented a client part of a streaming video, which communicates with server using Real-Time Streaming Protocol(RTSP) and receives video data using Real-Time Transfer Protocol (RTP), and then measured quality of streaming based on packet loss rate, out-of-order packet rate, frame rate, etc.

Internet Computing, University of British Columbia


FTP Client, January 2015

Implemented basic FTP client functionalities such as open, user, cd, dir, get, put, etc. as well as handling errors in Java.

Internet Computing, University of British Columbia


Disassembler, January 2015

Made a disassembler which reads binary data and manipulates raw bytes to produce the corresponding assembly instructions.

Computer Hardware and Operating Systems, University of British Columbia


Course Registration System, Fall 2014

Redesigned SSC Course Registration system by developing medium fidelity semi-functional prototype and performing cognitive walkthrough, and wrote usability study report with a focus on the usability and user experience of the interface.

Introduction to Human Computer Interaction Methods, University of British Columbia


Christmas Tree, Fall 2013 [demo]

Created Christmas tree using fractal implemented with C++ and OpenGL.

7

Computer Graphics, Korea University


Testing a Program with JUnit, Fall 2013

Tested Jajuk which is an open source software that organizes and plays music. Made test cases and test codes with JUnit and wrote coverage report and bug report.

Software Engineering, Korea University


Software Requirement Specification, Fall 2013

Wrote up over 50-page-long Software Requirements Specification for a PC Cafe Management System to develop following IEEE STD 830. Made user cases, sequence diagrams, state diagrams, etc. of UML.

Software Engineering, Korea University


Client-side Socket Programming, Fall 2013

Implement a client-side (half-duplex) chat program with BSD (Berkeley Software Distribution) socket programming API.

Computer Network, Korea University