Ian M. Jones
Ann Arbor, MI
Development practices: unit testing, integration testing, continuous integration, one-step deployment, version control (traditional and distributed).
Software Developer 2012 - present
Lead Developer 2011 - 2012
The Advisory Board Company
Crimson Services, Ann Arbor and Austin
Put the project infrastructure in place from scratch — automated testing, continuous integration, one-step deployment, release management, code reviews, issue tracking. Testing evangelist. Mentor to several younger developers. (Jenkins, Fabric, Redmine)
Senior Developer 2000 - 2011
Center for Health Communications Research, Comprehensive Cancer Center, University of Michigan
Designed and implemented a tailoring engine used for writing and delivering complex, context-sensitive health education messages. At the time of departure (Spring 2011), the engine was the foundation of some two dozen cancer communication research projects totalling roughly $10 million of funding; development and use continues today. The engine can run without modification either standalone — as a Python application or web service — or embedded within a Java application. The system was taught in a course at the UM School of Public Health in winter 2011 and was adopted by diverse research groups from Henry Ford Hospital in Detroit to Kaiser Permanente in Denver. (Python, Java, Jython, Django, MySQL)
Integrated the tailoring engine into an Eclipse RCP-based desktop application used for authoring messages. Reworked a key part of the application, the Publisher, for better usability and functionality. (Java, Eclipse RCP/SWT/JFace, Jython)
Introduced numerous modern development practices to the Center: automated testing (unit testing via JUnit and Python’s unittest and behavior testing via Selenium), bug tracking (Roundup and Jira), version control (CVS, Subversion, Mercurial), and continuous integration (Hudson). Mentor to a number of junior developers.
Vigorous advocate for users of the Center’s software. Special attention to software usability, simplicity, and design.
Web Application Developer 2000
School of Dentistry, University of Michigan
Developed and deployed several web-based applications: a survey creation and report tool; a decision tree creation tool; a website evaluation application and database; a permissions management tool for Apache; an LDAP-integrated Dentistry-specific student database. (Java, WebObjects, Apache, LDAP, Kerberos)
Developed and refactored school’s web scripts. (Perl, C, Java/JSP)
Performed system administration for school’s web servers: Red Hat Linux with Apache and ApacheSSL; Mac OS X Server with Apache and WebObjects. Supervised student developers and student technical support staff. Consulted with Dentistry faculty clients on their application needs.
Computer Systems Specialist 1998 - 2000
Department of Biological Chemistry, University of Michigan
Developed lab and departmental web sites. Assisted with molecular biology research by searching gene sequence databases and aligning sequences.
Computer Systems Specialist 1995 - 1998
Department of Pathology, University of Michigan
Designed and implemented patient blood test tracking database in conjunction with the departments of Psychiatry and Pharmacy; designed, implemented, and maintained departmental web site; graphic design work for scientific research publications (in Science, Nature, Cell, JAMA, and others); built image indexing system for publication and presentation figures.
BA, English, 1998
University of Michigan Residential College
- CodeMash 2014
- PyCon 2004-05, 2008-10
- Apple Worldwide Developer Conference 2001, 2007
- C4 2007
- MacHack 2003
- Occasional: EmberDetroit, CocoaHeads A2, Michipug