JOHN QUIGLEY www.jquigley.com jquigley@jquigley.com 1111 S Wabash Ave, 907 Chicago, IL, 60605 (312)351-3671 Objectives: Lead a team of powerful developers. Create great software. Explore important problems. KNOWLEDGE Areas: Distributed systems, file systems, Linux kernel, network communication, programming languages, information retrieval, machine learning Languages: C, C++, Java, ANSI Common Lisp, Python, Erlang, OCaml, Scheme, Io, Lua, Perl, Latex, Bash Tools: vim, Emacs, Eclipse, gmake, gdb, kgdb, valgrind, ant, JProfiler, sed, awk, flex, bison, grep, svn, git, VMware Workstation, slime, nmap, netcat, wireshark, bdb, mysql, screen, ssh, rsync Platforms: Linux, BSD, Solaris, Windows EMPLOYMENT Cleversafe, Inc. - www.cleversafe.com, Chicago, IL, Oct 2005 - Present Senior Developer and Development Team Leader - iSCSI target: Co-lead on design and implementation of the commercial iSCSI block device target that allows a user to interact with a grid as if it were a standard UNIX block device. Full project life-cycle involvement, with major development responsibilities: - Development lead of a SAM/SBC/SPC-compliant SCSI device target fully native to Java - Project and development lead of a RFC3720-compliant iSCSI device target, transport protocol and message parser - SCSI target integration with the Cleversafe grid layer, allowing all device I/O to be performed on the dispersed grid - Dispersed storage core: Worked with ten developers on full life-cycle design and implementation of Cleversafe's core Java-based dispersed storage software. Major development responsibilities: - Personally designed and implemented the entire asynchronous network communication stack, co-designed grid protocol as ASN.1 presentation layer, designed and implemented application and connection session management - Research, design and development of data transformation stack and pluggable codecs which performed information dispersal via Cauchy Reed-Solomon forward error correction, block encryption and full integrity verification. R&D using linear time fountain codes. - Co-developed distributed data store facility and event-based storage server - dsgfs: Personally designed and implemented a POSIX-compliant prototype file system for Cleversafe's unveiling demo at LinuxWorld. Allows a user to interact with a Cleversafe dispersed storage grid as if it were a UNIX file system. Built in user-space in C with FUSE and supporting most standard operations. Ongoing R&D to turn prototype into production product, including research into distributed cache coherency and locking. - DSAPI: Co-lead on the design of the dispersed storage API, a public interface providing full access to core operations on a Cleversafe grid. Implemented and documented actual C++ interface. - Autodeploy: Personally designed and led team to implement Python-based application for centralized management and operation of a heterogeneous grid of Linux machines. Used internally to deploy Cleversafe software, with features implemented including: - Fully autonomous installation and bootstrapping across a wide grid via the ssh protocol - Allows operator to interact with the grid through a single console, and issue standard commands as if dealing with the local machine only - Custom logging and monitoring facilities allowing for fault-tolerant interaction and grid healing - Build system: Implemented the comprehensive build system for the original C++ core software using gmake, autoconf and libtool. - IT Infrastructure: Personally designed and created initial company infrastructure, including public data dispersal grid. Major services: load-balanced web server cluster (Apache), company-wide secure SMTP and IMAP services (Postfix, Courier), development resources (svn, websvn, Dart), monitoring (Nagios, Cacti, awstats) and community research grid comprised of 11 grid nodes running Cleversafe's software. AD INK, LLC - www.adinknetwork.com, New York, NY, Jan 1999 - Jun 2003 Software Developer - Inkydoo: Personally designed and implemented company's content delivery system in Python. Provides simple WebDAV content management and a 'RESTful' software interface providing facilities for complex aggregation and data sharing with the back-end. - Advertisement ordering: Personally designed and implemented company's online magazine advertisement purchasing system, including integration with our back-end for fully automated purchase processing and intelligent auditing. - Content management: Designed, implemented and maintained the original outward-facing web site content management system, written in Perl. - IT Infrastructure: Designed, built and maintained the original high-availability back-end on which the company was founded. Setup and management including RDBMS, MTA, web server, Samba CIFS server, Cisco VPN and DNS. TS Empire State Bronx, NY, Jan 2001 - Jan 2002 Assistant Navigator - Responsibilities included hourly acquisition and plotting of positions, watch duty and standard ship maintenance. - Trained as a naval fireman and acted as a first responder in the event of emergency while on-board. - Maintained various legacy on-board navigation machines and communication equipment. RESEARCH IIT Coordination in Open Dynamic Environment Group - sunrise.cs.iit.edu, Chicago, IL, Mar 2007 - Present Researcher and Developer - White Programming Language: Conceived, and currently leading design and development of an ambient-oriented programming language for mobile networks based on the actor model. System inspiration taken from Erlang, Self, LISP, Io and Smalltalk. Prototype-based and deeply reflective. IIT Information Retrieval Laboratory - ir.iit.edu, Chicago, IL, Jan 2004 - Sep 2005 Researcher and Developer - Diesel Search Engine (Northrop Grumman contractor): Lead engineer performing development and statistical analysis of recently declassified, distributed and highly-concurrent search engine for multi-tebibyte datasets. Developed test and result metrics analysis tool chain in Python and R. - SQLGenerator (BIT Systems, Inc. contractor): Development of the custom XML-QL grammar, parser and query compiler, allowing for XML documents to be indexed into a RDBMS and queried via XML-QL and XPath. - Mediator Search Engine (US Holocaust Memorial Museum contractor): Development and integration work with the Java- and Python-based Mediator search engine, a data mediator that integrates searching structured, unstructured and semi-structured data sets. Development focus on the natural language query parser and result filtering chains. EDUCATION Illinois Institute of Technology - www.iit.edu, Chicago, IL Bachelor of Science, Computer Science - expected 2008 COMMUNITY Chicago Linux - www.chicagolug.org, Chicago, IL Founded group in 2004, now a vibrant community of hundreds of Midwest technologists, with monthly meetings. Tekniks - www.tekniks.org, Chicago, IL Founded group in 2007 to host weekly community development sprints.