Current Contact:



To contribute to an engaging software development team as a senior software developer with emphasis in financial engineering and/or information retrieval.

Summary of Qualification

  • Experienced in managing, processing, and analyzing large-scale financial data.
  • Experienced in object-oriented enterprise software design, including 3-tier software architecture, MVC, and design patterns using UML.
  • Knowledge of financial models, statistical methods, and machine learning algorithms including clustering methods, Bayesian classifier and text mining techniques.


Programming Languages

  • 5 years Python
  • 5 years Java, Perl, HTML, CSS, Javascript
  • 3 years C/C++
  • Some experience in R and C#

Numerical, Web, Networking, and Database

  • NumPy, SciPy, and Enthought libraries
  • CherryPy and Cheetah
  • HDF5, Sybase, MySQL, and PostgreSQL


  • Experienced in building cross-platform GUI applications using Python and Java.

Work Experience

(July 2007 - now) Convertible Bond Desk, Citadel Investment Group, Chicago, IL

Senior Software Developer/Financial Engineer/Tech Lead

  • Developed a standardized framework for running production tasks for the Convertible Bond Desk.
  • Developed a general library for storing, indexing, and retrieving large historical data sets in HDF5.
  • Developed an easy-to-use asynchronous framework that allowed Python code to run in parallel on multiple machines. Since its inception, the majority of tasks in the Converts group are converted to use this mechanism. Various tasks reduced their runtime by more than 10-fold.
  • Created a cross-platform visualization application to analyze time series data for the Quantitative Research team and portfolio managers. Other members of the Converts team have used this framework to develop views for managing and explaining risk of the portfolio, aggregating large cross-sectional data sets, backtesting CDS trading strategies, and visualizing historical volatility surfaces.
  • Developed an in-memory data grid viewer that can sort and auto-filter vary large data tables (with more than a million rows). Both the IT and QR team uses this grid to quickly inspect and filter large financial data sets.
  • Using models developed by the QR team, developed a scalable implied volatility and variance swap pricing engine that feeds real-time volatility data to the trading desk.
  • Developed a real-time volatility visualization application for displaying intraday volatility data.
  • Managed and processed intraday CDS quotes from various brokers. Created view for the trading desk to compare real-time model and market prices.
  • Mentored and managed junior members of the team who were in the Financial Technology Associate Program.

(July 2005 - July 2007) Financial Technology Associate Program, Citadel Investment Group, Chicago, IL

Financial Technology Associate

  • Worked with the statistical arbitrage team to analyze alpha signal from publicly available data. Simulated performance of hypothetical portfolios.
  • Created a pricing client and a web-based risk report for the mortgage-backed security group.
  • Created a framework in Python to extracted modeling data for the convertible bond desk.
  • Designed and implemented a web application to display pricing results and volatility data.

(July 2000 - July 2003) Server Management Team, Sendmail Inc., Emeryville, CA

Software Engineer / Project Lead

  • Maintained, supported, documented, and ported a web-based management application that could manage multiple Mail Transfer Agents and Mail Stores securely on heterogeneous platforms (Windows, RedHat Linux, IBM S/390 Linux, AIX, and Solaris).
  • Implemented a GUI framework that supports internationalization, easy skinning and rebranding using XML/XSL template transformation for style change, generated navigation, LDAP, Java Servlet and Apache Turbine architecture.
  • Leaded a team that created an application that enables administrators to manage mail user accounts through LDAP provisioning.
  • Created an application that enables email user to manipulate their server-side mail filters in the Sieve filtering language through an easy-to-use web-based GUI.

(Jan. 1999 - June 1999) Storage Systems Division, IBM, San Jose, CA

Co-op Java/Web Application Programmer

  • Designed, implemented, and supported a web-based application that analyzed the utilization of over 200 machines in the wafer manufacturing line producing hard drive components.
  • Managed over 20 Windows NT computers that collected utilization data running 24-7.
  • Assisted the managing team to streamline the application in order to increase productivity and lower cost.

Teaching Experience

(Aug. 2003 - May 2004) University of Illinois at Urbana-Champaign, IL

Teaching Assistant/Head TA for CS 105 (Introduction to Computing)

  • Responsible for teaching two lab sections with around 30 students each week on the subject of SQL, Excel, and Visual Basic for Application.
  • Received an Outstanding Teaching Assistant Award in the Computer Science Department


(2003 - 2005) University of Illinois at Urbana-Champaign, Urbana/Champaign, IL

  • M.S. in Computer Science. (GPA 3.86 / 4.0)
  • Thesis: Intelligent Access To Public Email Conversations

(1996 - 2000) University of California at Berkeley, Berkeley, CA

  • B.A. in Computer Science. Graduated with High Honors (GPA 3.80 / 4.0)

Other Skills, Awards, and Interests

  • Fluent in Mandarin and Cantonese dialect
  • Member of the UPE (UC Berkeley's Computer Science Honor Society), honor standing since Freshman year, member of the Golden Key Society
  • Certificate of Achievement from the Group for User Interface Research (University of California at Berkeley)

Work Status

  • U.S. Citizen


  • Will be provided upon request.