Ursetto Consulting, Inc. / 10 S Wille St. Suite 605 Mount Prospect, IL 60056 / jim@ursetto.com Resume for James F. Ursetto < SKILLS > * Development: large applications and small scripts in Perl, Python, C/C++ and Lisp. * UNIX: deep knowledge of UNIX internals; years of experience solving production issues. * Performance analysis: identification of bottlenecks in hardware, software, and the network. * Optimization: acceleration of existing applications and workflows. * Bridging: facilitating collaboration between system administrators and developers. * Website design: HTML, CSS and Javascript for internal and client-facing applications. * Data transforms: XML, XSL and SQL for enterprise data parsing, validation, transformation and loading. * Documentation: clear, easy to understand descriptions of complex technical concepts. * Linux: Red Hat AS/ES 3 and 4, RHN Satellite Server, and Intel and AMD hardware. * HP-UX: HP hardware and software on HP-UX 10 and 11. < EXPERIENCE > 1/2009 - 5/2009 Ursetto Consulting, Inc. Chicago, Illinois Designed a streamlined SQL API and a database schema for Apache log analysis, along with a log data loading tool. Created HFS+ compliant backup solution from OS X client to Linux server. 9/2008 - 12/2008 Chicago Mercantile Exchange Chicago, Illinois Enhanced and extensively modified Perl CGI web application. Added progressive Javascript and AJAX with jQuery, improving interface and reducing CPU and network bandwidth. Implemented local database caching and DR failover to ensure high availability. Wrote a Java program which interfaces with UC4 job scheduler to automatically create UC4 folder objects. Wrote installer which deploys application to production, QA, DR and development systems with per-environment configuration. Supported application. 6/2008 - 8/2008 Ursetto Consulting, Inc. Chicago, Illinois Enhanced a forms-based, server-side web application with progressive AJAX. 4/2008 - 5/2008 Chicago Mercantile Exchange Chicago, Illinois Built a Perl CGI web app which moves UC4 scheduler jobs between environments. It accepts change request information and multiple XML file uploads, performs XML transforms using standard modules, and emails the results. Users receive feedback on progress and errors, and are asked to confirm selected changes. Application interfaces with Oracle and LDAP. 7/2007 - 3/2008 Ursetto Consulting, Inc. Chicago, Illinois Ported 32-bit HP-UX business app to Linux and Mac OS X and added 64-bit support. Migrated authorization from UNIX/NIS to PAM, enabling use with LDAP. Used Valgrind to fix buffer overflows and memory leaks. Developed content management system for web-based collaborative editing. 6/2006 - 6/2007 Acxiom Corporation Chicago, Illinois Development * Rearchitected 10-year-old C and Perl-based login and load balancing app to allow multiple user sessions. Replaced adhoc databases with one SQL database. Architecture * Conducted architecture review and audit of UNIX software and hardware in Internet and batch environments, producing reports for management. Audit included boot disks, firmware and drivers, system patches and applications, NFS, NIS and NTP. * Corrected systemic NTP sync issues by rearchitecting NTP environment. Optimization * Reduced shell script runtime from 50 hours to 25 seconds. Web * Upgraded Apache and custom modules from 1.3.9 on 10.20 to 1.3.37 on 11i. Legacy mod_perl install (Perl 5.5, 10.20) had to be retained and numerous Oracle issues resolved. * Traced webserver lockups to CGI database lock issue. Documentation * Introduced wiki as centralized documentation repository. * Diagrammed an undocumented batch workflow with Graphviz. Administrative * Wrote Perl framework to audit Linux systems and publish results to intranet. * Built and standardized Perl 5.8 environment and site modules. * Solved ext3fs corruption caused by EMC Powerpath on Linux. * Implemented QLogic HBA failover and networked install of Red Hat Enterprise Linux AS4. * Researched Red Hat Satellite Server and implemented custom channels and profiles. 5/2006 - 5/2006 Information Resources, Inc. Chicago, Illinois Migrated an undocumented in-house web application from Java 1.1 on HP-UX 10.20 to Java 1.4 on 11i. 11/2005 - 5/2006 Ursetto Consulting, Inc. Chicago, Illinois Developed an interface from Scheme to Objective C on Mac OS X. Created documentation tool for code and articles which transforms Scheme XML to HTML. Wrote tutorials and documentation (http://ursetto.com/docs). 8/2005 - 10/2005 Acxiom Corporation Chicago, Illinois Eliminated crashes and plugged resource leaks in legacy C app, a UNIX-to-mainframe job dispatcher. Repaired and standardized RPM environment on Red Hat Enterprise Linux servers. Rebuilt and packaged local Perl modules for upgrade to 5.6. Solved recurring production Java exception. Alleviated link saturation during backups. 7/2004 - 7/2005 Information Resources, Inc. Chicago, Illinois Optimization * Improved Perl CGI script response time from 60 seconds to 1 second. * Lowered shell script runtime from 60 minutes to 5-10 minutes, alleviating client timeouts. * Saved 60% disk space and 50% time in C++ application with algorithm and compilation changes. * Tripled speed of ksh/C++ batch application, saving three weeks of processing. Performance * Wrote software to collect and graph gigabytes of performance data. * Analyzed large NFS environment and identified bottleneck causing recurrent client timeouts. Recommended NFS filesystem reorganization and parallel servers, fixing the problem. * In-depth analysis of several systems, including Oracle database servers. System * Mitigated outage risk after an NFS server crash, by injecting new HP-UX 11i code into closed-source 10.20 binary. Required knowledge of UNIX application internals. * Wrote tools to map NFS locks to filenames and processes, utilizing UNIX kernel knowledge; fixed lock table overflow. * Diagnosed out-of-memory condition in client application; enabled 2 extra quadrants to fix. Networking * Feasibility study and benchmarking of jumbo Gigabit Ethernet frames. * Redesigned network architecture to improve system's backups from 36 hours to 9 hours. Web * Tracked down internal server errors in Tomcat application to outdated Java and Jakarta installations, then upgraded both. Architecture * Performed feasibility study on systemic changes required to convert batch jobs to a just-in-time architecture. 10/2003 - 2/2004 Information Resources, Inc. Chicago, Illinois Identified a severe disk bottleneck in a C application; rewrote the algorithm and instituted kernel parameter changes to achieve a 300% speed improvement. Analyzed performance of applications running on HP-UX 11i, using PerfView, glance, sar, tusc and tcpdump to examine system and NFS behavior. Supported Platform JobScheduler and LSF on UNIX. 12/2002 - 9/2003 Ursetto Consulting, Inc. Chicago, Illinois Authored GUI applications in Perl and Python with C extensions, using wxWindows and GTK. Wrote C, C++ and assembly code for Hitachi SH-4 platform. 6/2002 - 11/2002 Information Resources, Inc. Chicago, Illinois Client was managing their NIS environment with a large collection of shell, Perl and C code built up over several years. Replaced with a thoroughly documented, modular Perl solution using industry standard components. Eliminated security holes and file corruption; added detailed logging capability. Transition to new system was seamless. Rearchitected Perl-based server application that was tied to NIS master, by splitting NIS functionality into a separate program. Reimplemented Visual Basic client from scratch to reflect changed server, overhauling the interface and network protocol. Designed the system for gradual cutover and documented it carefully. 3/2000 - 1/2002 ABN AMRO Rosemont, Illinois Supported large HP environment including D, K, N, and V class servers. Implemented critical MC/ServiceGuard cluster and highly customized scripts. Audited and tested existing clusters. Upgraded production server from 10.20 to 11.00 in minimal time, via cold install and data restore; documented procedure for team. Assessed impact of security vulnerabilities. Deployed SSH widely for secure administration and auditing; diagrammed SSH infrastructure. 1/1999 - 2/2000 United Airlines Elk Grove Village, Illinois Worked with a team of architects and administrators to design and manage one of the largest HP-UX environments in the Chicago area. Technical support contact for Operations Control Center, comprising 8 J-class servers and 100+ workstations. Technical implementation of Business Resumption Project, comprising 6 K-class servers, 85 B180 workstations and 200+ users. Worked with developers to port and test applications. Physical setup and OS configuration; CDE interface design; NFS/NIS implementation; and documentation. Site was activated successfully for one month during August 1999 fire. Upgraded site as requirements grew. Received award for outstanding performance. < EDUCATION > B.S., Mathematics and Computer Science; minor, East Asian Languages and Cultures; University of Illinois at Urbana-Champaign, January 1999. GPA: 3.86/4.0.