Web

http://tianyicui.com

Email

me@cuitianyi.com

Phone

+8613958103659 (It’s a prime number!)

Address

Room 918, Dorm 30, Yuquan Campus
Zhejiang University, Hangzhou
China, 310027

Objectives

  • Overcome cognitive biases and practice the art of human rationality

  • Reach mastery in computer programming and build tools to make programmers' life more fulfilling.

Skills

Algorithm design, analysis and implementation
  • I am quite proficient in ACM/ICPC-level algorithmic problem-solving.

  • I am experienced with implementing algorithms based on textbooks and research papers, especially in Natural Language Processing and Compiler Construction fields.

Programming skills
  • Writing clean code in C, C++, C#, Python, and Ruby with practical experiences.

  • Interested in functional programming languages such as Haskell, Scheme, Common Lisp, Clojure, Scala and F#.

  • Web development with Rails and Django.

  • Domain specific language design and implementation in Ruby.

  • Software testing with RSpec and NUnit.

  • Embedded Linux development in C, especially device driver implementation and system integration.

  • Lexical analysis and parsing with flex, bison and treetop.

Programming tools
  • Source code management: Git, Mercurial, Subversion, Visual SourceSafe.

  • Editor/IDE: Vim, Visual Studio.

  • Operating systems: Mac OS X, Windows, and Linux (especially Debian, Ubuntu and ArchLinux).

  • I also have rich experience with common Unix command line utilities.

General skills
  • Excellent quick learning and problem-solving ability under time constraints.

  • Critical thinking and effective communication.

  • Pragmatic English technical writing skills.

Academic Achievements

ACM International Collegiate Programming Contest
  • Harbin Regional, Gold Medal, 2008

  • Hangzhou Regional, Gold Medal, 2008

  • Hefei Regional (team leader), Gold Medal, 2009

  • Wuhan Regional (team leader), Gold Medal, 2009

Zhejiang Provincial Collegiate Programming Contest
  • 1st place, 2009

  • 1st place, 2010

Commercial Project Experience

  • In January to February 2012, I helped to build a prototype of P2P video-on-demand Flash client in ActionScript at Research Group of Hulu.

  • In December 2011, I helped to build a automatic testing framework for Flash applications in C# using WebDriver at Engineering Excellence Group of Hulu.

  • In April to May 2011, I improved the demo program of TransCut project by adding Natural User Interface at Internet Graphics Group of Microsoft Research Asia, where I designed and implemented the body gesture UI using Kinect.

  • In February to March 2011, I participated in the development of the desktop client of Bing Dictionary at the Lingo group of Innovation Engineering Center of Microsoft Research Asia. I designed and implemented some core algorithms being used in both client and server side, mainly in Natural Language Processing field.

  • In June 2010, I built a customized version of WebKit for Hercules (part of Guillemot Corporation) with the main purpose of reducing memory footprint to be used in an embedded environment.

  • In August 2009, I ported the Linux kernel along with uClibc and BusyBox userland to a customized embedded board based on AT91RM9200 chip for Sinostride Technology. I also wrote the essential device drivers as loadable kernel modules. The system is now widely deployed as the monitoring system in China Unicom's 3G base stations.

  • In July 2009, I developed the prototype of a Facebook application using Ruby on Rails and Apache Thrift for RomanLogic LLC.

  • In June 2009, I developed a .Net RPC framework using Protocol Buffer and implemented the multithreaded socket server in C#, for a client of TopCoder, Inc. codenamed SP-14.

Open Source Experience

  • In 2010, I made significant contribution to the Homebrew project, a package manager and porting system for Mac OS X entirely written in Ruby. More than a dozen software packages are ported to Mac OS X and carefully packaged by me.

  • I submitted patches to various open source projects; most of them got accepted. The notable projects are RVM, RSpec, SimpleCov, highlighting-kate, and Redcar. More details on https://github.com/tianyicui.

Education

  • I am an undergraduate in College of Computer Science and Technology at Zhejiang University.

Hobbies

  • Enjoying classical music, especially Bach.

  • Reading books on psychology and philosophy, especially cognitive science and pragmatism philosophy.

  • Watching Japanese animation, especially with others.

Notes

  • This resume was created using Vim and AsciiDoc, then spell checked with Aspell. The process of generating HTML and uploading it to my server is automated by using Make, Git and OpenSSH.

  • The latest version of my resume is always available online in plain text and HTML.