Jon Loeliger jdl at this jdl.com domain Skills ------ OS: Linux, UNIX, FreeBSD Languages: C/C++, Perl, Shell, Python Networking: TCP/IP, DNS, 802.11 CMS: Git, Make, CVS Database: MySql, DBI/DBD Graphics: OpenGL familiarity Tools: OpenOffice.org, MS Office Suite Web: Apache, HTML, Django, PHP, Drupal Email: Exim, SMTP Authoring: Docbook Professional Experience ----------------------- Author * Wrote "Version Control with Git" o A 250p technical book on Git published by O'Reilly Media * Gave three conference presentations about Git * Wrote three Git technical papers * Wrote two compiler technical papers * Wrote a winemaking article Linux/UNIX and OS * Linux Community Maintainer o PowerPC 86xx U-Boot and Linux subsystems o Device Tree Compiler used by PowerPC Linux booting * Firmware Development o Ported U-Boot boot-loader to new Book-E PowerPC chips o Wrote SPD based DDR-II memory controller configuration code. * Porting o Contributed to Linux 2.6 port to Book E PowerPC parts. o Brought up Linux 2.4 on PowerPC, MIPS, and XSCALE architectures. o Used uClibc, buildroot and uClinux, for embedded environment. * Driver o Supported a network interface card and IP packet handling through Linux network stack. o Developed SW for an 802.11 b/g AP based on an Intel XSCALE platform using the Atheros AR5212 MAC/Baseband radio. o Added features such as Continuous Transmit to the Atheros AR5212 Linux device driver to support FCC testing. Compiler * Chromatic Research Multimedia Engine Compilers o MPACT and Tapestry chip-sets implemented full 2D/3D graphics pipeline, MPEG encode/decode, DSP for sound codecs, and modem support. o Ported Apogee C/C++ Compiler the Tapestry architecture as a member of a 3-person team. o Wrote the instruction scheduler for a multiple issue SIMD architecture including complete resource usage, pipeline modeling, and timing information. o Wrote part of direct inline assembly support including the register binding, use/definition interaction with the register allocator. * Inter-procedural and Parallelizing Compiler o Designed and wrote parallelizing compiler for a massively parallel architecture with one other person. Led a team through a ground-up development of an automatic parallelizer, o Wrote code to perform automatic parallelization of loops that contained function calls within the structure of an inter-procedural analysis. o Designed and implemented an inter-procedural compiler to achieve major performance improvements in dusty-deck Fortran code. * Vectorizing Ada Compiler o Ported the Verdix Ada compiler front-end to the Convex architectures. Extended and ported the code generator, machine packages and libraries as well. o Wrote code to convert DIANA intermediate representation to a new intermediate form necessary for the Convex vectorizing and parallelizing back-end optimizer and code generator. Client/Server Programming * Distributed Client-Server Messaging System o Wrote multi-threaded, multi-platform, fault-tolerant, distributed message passing engine (Cloverleaf) using a client-server model. o Routed messages through a central database server * Wrote multi-threaded client/server network communication library o Designed to replace an existing infrastructure. Project spanned entire life-cycle from design specification to delivery of proprietary code. * Distributed Routing o Developed an embedded, distributed OSPF implementation based on NetPlane OptiRoute product using separate processors for interface line cards, Neighbor processing and the Forwarding Information Base. Database * Billing System Architect o Designed and implemented a use-detection and billing system for users of high-speed internet service provided at Hotel and Airport properties. o Implemented back-end database in MySQL using Perl DBI. * Comic Convention o Hosted Comic Convention system and Website. o Wrote website content in PHP backed by MySQL. o Implemented website management of user logins, email lists, a contact database, guest information, event scheduling, and user preference editing. o Supported COPPA requirements. Tools * Wrote a generic testing framework in Python o Tested a simulated multi-cpu supervisor/linux codebase. * Wrote a configuration management and build mechanism o Linux-based multi-product source base. * Wrote an integrated source-control and build system in Perl o Used RCS, Make and DBM for source base of 500K lines. Game Programming * Demo o Client/Server based persistent world. o Animated MD2 models and OpenGL. * Chess Program o Quiescence guided flexible ply-depth alpha-beta pruning minimax search with various heuristics including iterative widening, move prioritizing and generation, "killer", and hashing. No opening book. Lousy endgame. Management * Software Manager o Managed SW team responsible for new product development as well as maintenance of existing 802.11 AP production software. o Led a team responsible for entire SW product life cycle. o Scheduled all development and production milestones. o Hired and managed resources as needed to meet company goals. * Software Team Lead o Lead the SW development for a Linux-based 802.11 b/g wireless Access Point. o Performed feature selection and project scheduling. o Contributing member of SW development team Publications and Presentations ---------------------------------- Version Control with Git O'Reilly Media, Inc., May 2009 Zinfandel to Zinfromhell: A homebrewer turns winemaker WineMaker Magazine, June-July, 2008 Putting the IT in Git Linux World Conference, August, 2008 Best Collaboration Practices Using Git Presented at MontaVista Vision Conference, October 2007 Git Tutorial Tour Presented at Ottawa Linux Symposium, July 2006 Collaborating Using Git J. Loeliger Linux Magazine, June, 2006 Embrace The Git Index J. Loeliger Linux Magazine, May, 2006. How To Git It J. Loeliger Linux Magazine, March, 2006 Pointer Target Tracking: An Empirical Study J. Loeliger, R. Metzger, M. Seligman and S. Stroud, Proceedings of Supercomputing 1991, IEEE Developing An Interprocedural Optimizing Compiler Jon Loeliger, Robert Metzger SIGPLAN Notices, Volume 29, Number 4, April 1994, 41-48 Employment History ------------------ * Software Engineer, Embedded Linux Team Bigfoot Networks 12301-B Riata Trace Parkway Suite 110, Austin, Texas 78727 May 2009 - Jan 2010 * Software Engineer, Open Source Team Freescale Semiconductor, Inc. 7700 W Parmer, Austin, TX 78729 Mar 2004 - April 2009 * Manager Software Senior Software Architect Vivato, Inc., 12610 E. Mirabeau Parkway #900, Spokane, WA 99216 Oct 2002 - Mar 2004 * Software Engineer Yotta Networks, 2201 Avenue K, Plano, TX 75074 Feb 2001 - Jan 2002 * Software Engineer Chiaro Networks Ltd., 269 West Renner Parkway, Richardson, TX 75080 Aug 2000 - Jan 2001 * Senior Software Architect Wayport, Inc., 8303 North Mopac Expressway Suite 300, Austin TX 78759 Feb 1999 - Aug 2000 * Senior Software Engineer Chromatic Research Inc., 615 Tasman Drive, Sunnyvale, CA 94089 Jan 1995 - Jan 1999 * Senior Software Engineer Healthcare Communications, Inc., 15301 Dallas Parkway Suite 950, Addison, TX 75248 Aug 1993 - Dec 1994 * Software Engineer Convex Computer Corporation, 3000 Waterview Parkway, Richardson, Texas 75080 Jan 1987 - Mar 1994 Education --------- MS Computer Science December, Purdue University BS Computer Science December, Purdue University High School June 1981, American School in Japan International Sommelier Guild Certifications for the First and Second Level