Don Jones Jr. 9009 Great Hills Trail, Apt 1113, Austin, TX 78759 +1(502)418-3800 donnie@darthik.com ------------------------------------------------------------------------------- Objective Seeking a software engineer position with challenging, complex problems that will keep my brain buzzing all day and dreaming about algorithms at night. ------------------------------------------------------------------------------- Education University of Kentucky Aug 2006 - Current (Coursework finished; MS thesis to be completed.) Lexington, KY 40508 Computer Science of Engineering, Master of Science GPA: 3.9/4.0 University of Kentucky Graduated Aug 2006 Lexington, KY 40508 Computer Science of Engineering, Bachelor of Science GPA: 3.3/4.0 Master's Project Parallel Profiling Support for the Glasgow Haskell Compiler (GHC) July 2008 - Aug 2009 In collaboration with Dr. Simon Marlow and Dr. Satnam Singh from Microsoft Rearch at Cambridge, U.K. * Designed/Developed fast, extensible event logging framework for GHC. * Added parallel profiling events to GHC run-time system. * Developed ghc-events library to parse GHC event log files for visualizers. * Performed analysis of GHC parallelism using ThreadScope visualizer. Publication(s): * Parallel Performance Tuning for Haskell (Don Jones Jr., Simon Marlow, Satnam Singh) Haskell '09: Proceedings of the second ACM SIGPLAN symposium on Haskell, Edinburgh, Scotland, ACM, 2009 Relevant Coursework: CS441G Compilers for Algorithmic Languages CS450G Fundamentals of Programming Languages CS470G Intro to Operating Systems CS471G Networking and Distributed Operating Systems CS515 Algorithms CS541 Compiler Design CS575 Models of Computation CS585 Linux Internals CS670 Distributed Operating System Theory CS685 Model Checking CS686 Bayesian AI ------------------------------------------------------------------------------- Work Experience Compiler Verification Engineer Jan 2009 - Current Manager: John Storms NVIDIA, Inc., Austin, TX 78727 * Analyzed, reproduced, discovered causes of compiler build and test failures. * Assisted developers by narrowing down cause of failure, providing reproduction steps, and any needed files -- bug triage. * Significantly improved test reporting system to facilitate bug triage. * Created modular parsing library for searching log files for errors. * Developed generic results reporting library based upon XML results files to simplify the addition of new reports. * Documented step-by-step build process of compiler and tools to facilitate training of future members of compiler team. * Created tool to update a Perforce clientspec from a local file. * Resolved issues arising from out-of-date clientspecs by creating standard, version-controlled "gold" clientspecs. * Tool automates the update of user's clientspec from "gold" clientspec. * Performed weekly source code branch integrations with Perforce. Research Assistant Jan 2008 - May 2008 Advisor: Dr. William Dieter University of Kentucky, Lexington, KY 40507 * Project for U.S. Marine Corps. (Vagueness due to classified nature of the project.) * C++ programming for high-performance multi-threaded client/server. * GUI design/development using Qt toolkit. * Analyzed TCP/IP performance; performed memory profiling. Co-Founder, Lead Software Engineer, Server Administrator Jan 2006 - Dec 2007 ModernLend, Inc., Louisville, KY 40205 * Designed/Implemented website with Ruby on Rails web-framework, PostgreSQL database server. * Designed complex, scalable table relationships for home loan applications. * Implemented collapsable, sliding user-interface for home loan application. Received excellent usability ratings from user feedback. * Business exposure to housing market research, analysis of home loans, and online advertising. Research Assistant May 2005 - Dec 2006 Advisor: Dr. Hank Dietz University of Kentucky, Lexington, KY 40507 * Implemented Aggregate Function API (AFAPI) for Linux cluster supercomputer network communication with UDP multicast protocol. * Developed AFAPI library functions for efficient execution of parallel programs on Linux supercomputer cluster. * Improved performance with distributed algorithms that stored previous data for packet loss recovery and relied upon UDP multicast for packet replication by the network to decrease node overhead. Team Manager, Lead Software Engineer Oct 2003 - Aug 2006 Solar Car Team University of Kentucky, Lexington, KY 40507 * Guided multi-disciplinary team of 20-25 members to design/build a solar car for North American Solar Challenge competition. * Performed many presentations for fundraising -- $125,000+ donated. * Implemented solar cells Maximum Power Point Tracker (MPPT) and data acquisition system with two TI DSPs using TI DSP Real-Time OS, RS232 bus, CAN bus, motor controller, LCD display, and radio modem. Network Engineering Co-Op Jan 2004 - May 2004, Ashland, Inc., Lexington, KY 40509 Jan 2005 - May 2005 * Configured/Installed routers and switches for global network. * Extensive parsing of network data with Perl programming language. ------------------------------------------------------------------------------- Skills (Skill level: highest to lowest.) Programming Languages: C, C++, Haskell, Python, Ruby, CUDA, Perl, SQL, Java, LATEX, Lisp, Pascal, Fortran, Smalltalk. Software/Tools: Linux, GHC, Ruby on Rails, Apache, PostgreSQL, MySQL, GCC/GDB, Make.