Eric Schnoebelen

P.O.Box 868013
Plano, Texas 75086-8013
eric@cirr.com
http://www.cirr.com/~eric/resumes/general.html


Summary

Experienced in all aspects of the software design, development, integration, release maintenance and support processes.

Strong interest in application systems and operating system internals.

Skills Inventory

Languages/Experience:
C - 25 years Bourne/Korn Shell - 23 years
Perl - 22 years C++ - 10 years
Informix 4GL - 3 years Oracle PL/SQL - 2 years
PHP - 6 years Java - 2 years
Python - 2 year C# - 1 year

Operating Systems:
23 years experience with a wide variety of UNIXen.
  • HP-UX 10.20, 11.0, 11.11, 11.23, 11.31
  • NetBSD 1., 2.x, 3.x, 4.x, 5.x
  • FreeBSD 2.2.5, 2.2.6, 3.x, 4.x, 5.x
  • SunOS/Solaris 4.1, 5.4, 5.5, 5.6, 5.7, 5.8, 5.10
  • BSD 4.2, 4.3, 4.4
  • Linux (Slackware; RedHat; Debian; CentOS)

Software Systems Installed, Enhanced, Maintained and Managed:
  • Domain Name System using BIND 8.x, 9.x
  • SMTP using sendmail 8.x, postfix, and qmail
  • USENET news systems using B news, C news, and INN
  • UUCP (Version 2/HDB/Taylor)
  • Apache Web server
  • University of Maryland's Amanda
  • PostgreSQL 7.x, 8.x; Oracle 7.3, 8.x, 9.x, 10.x; Informix; MySQL;
  • Zebra; Quagga
  • CVS, Subversion (svn)

Experience

Independent Contractor
Dallas, TX; June 1998 - Present

Central Iowa (Model) Railroad Plano, TX; January 1999 - Present

Providing Internet web hosting and connectivity services. Maintaining connectivity via multiple T1's to tier 1 providers. Using OSPF on the internal networks, peering using BGP with connectivity providers.

Provide network connectivity consulting for numerous clients. Clients have set up connectivity ranging from dedicated dial service through ISDN to T1 speeds.

Provide development services for web enabled application suites. Provide general software development services on POSIX.1/POSIX.2 (UNIX-like) systems using C, C++, Perl, Python, Bourne/Korn shell and other languages/facilities as appropriate.

Provide anonymous CVS repository access for a number of Open Source/Free Software systems, including NetBSD and FreeBSD. Anonymous CVS repository is listed with the NetBSD project as anoncvs3.us.netbsd.org.

Note: this is my consulting company.

NTT America, Dallas, TX; October 2008 - Present

Work on a nationally distributed staff of developers on NTT America's Global Management Platform, developing, enhancing, and maintaining the code base and doing level one testing, as well as level 3 end user support.

The Global Management Platform is developed on UNIX platforms (specifically Red Hat Enterprise Linux), managing data in a PostgreSQL SQL database, and interfacing with the customer using a large set of Perl modules integrated into the Apache web server using mod_perl.

Projects included resolving memory leaks in the home grown Perl database access object; specialty reporting of assets allocated per customer; specialty reporting of customer assets in support of the sales organization.

EF Johnson, Irving, TX;
April 2008 - September 2008

Research DIACAP and Information Assurance processes and requirements for integration into the EF Johnson software development processes for the Netelligent IP25 systems.

Research and design implementations of multi-site interconnections of the Netelligent IP25 systems using the IP Security protocols.

September 2007 - March 2008 (via DISYS)

Documenting the existing manufacturing process and the software it uses, as part of a process to stabilize the software, formalize the software delivery process, and transition the day to day support of the software from a small engineering organization to the IT/Support organization.

Hewlett Packard Company, Richardson, TX
March 2006 - September 2007
Re-targeted Hewlett-Packard's Utility Storage and Computing metering software system (present on an HP owned server located at the customer site to gather usage information for service billing) from CentOS Linux 3 to HP-UX.

Project involved moving applications written in Java, C++, and Bourne Shell from Linux on the x86 platform to HP-UX running on both the PA-RISC and IA64 (Itanium) platforms; including adjusting the applications to the idioms of HP-UX.

The final component of the project was to package the result using HP's SD-UX, (an implementation of IEEE POSIX 1387.2 Software Administration) as a multi-architecture, multi-OS release product, for release on HP's quarterly Application Release DVDs.

The initial release became available on Hewlett-Packard's December 2006 Application Release.

Two subsequent releases occurred during the contract as well, integrating additional functionality for gathering data on storage systems, and changing the mechanisms used to gather Pay Per Use CPU utilization.

Follow-on work has revolved around the back end systems used by the Utility Computing Systems programs, including the Instant Capacity on Demand (iCAP) and Pay Per Use (PPU) programs. Work has included maintenance of the existing customer facing Pay Per Use portal, written in C++ and Java, using Oracle 10g (via OCCI) as the database tier; and redesign of both the customer facing Pay Per Use portal and the internal iCAP Administration portals as part of the Data Center consolidation projects within HP.

The Data Center Consolidation project architectures are multi-tier, using Java Enterprise Edition servers as the web and application tiers, and Oracle 10g (via JDBC) as the database tier.

March 2004 - June 2004
Revised and extended existing build environment to support multiple architecture builds. Revised the existing packaging to better support the delivery needs of the product.

Provided general software portability knowledge to the project.

June 2003 - October 2003
Enhanced the Workload Manager Toolkits Utility Processing Toolkits to work with more recent versions of the Instant Capacity on Demand software.

Reviewed and updated the Workload Manager sources to conform to redefined system services interfaces expected to be released with a future version of HP-UX.

July 2001 - August 2001
Designed, implemented, and packaged for release a component of HP's Workload Manager Toolkits to inter-operate and enhance HP's Utility Computing product set.

The Toolkit, using information from HP's Workload Manager product will enable and disable Instant Capacity on Demand processors in L, N, and V class systems.

February 1999 - June 2001 (via King Computer Search)
Continuing maintenance and end of life transition support for HP's edition of UniTree Software, Inc's UniTree Central File Manager. Tasks involved include problem report categorization, analysis, resolution design, implementation, testing, and product patch packaging of both the user-land UniTree components and of the kernel components of HP's CVDM (Convex Virtual Disk Manager) which used UniTree as the storage system. CVDM used the DMIG standard interface, as implemented in HP's SPP-UX.

Development support for HP's Workload Manager product. Tasks involved include software development and testing, product packaging development and testing, and product integration with other HP products, such as Service Control Manager

June 1998 - August 1998 (via King Computer Search)
Updated the Exemplar SPP1200/1600 system diagnostics and scan test software for Year 2000 compliance. This project involved porting the Exemplar test station software from HP-UX 9.05 to HP-UX 10.20, testing for functionality, testing for Y2K compliance, packaging, and release to manufacturing.

Esposito Partners, LLC, a branch office of WFG Investments, Dallas, TX; April 2006-May 2006
Assisted in the software and network establishment and configuration of the Esposito Partners FlexTrade trading system, running on Red Hat Enterprise Linux servers (paired DELL PowerEdge systems.)

Designed and implemented: first generation automated trade preprocessing and entry into the FlexTrade trading system; first generation automated post trade reporting architecture; first generation end of day processing. Integrated preprocessors and reports written by other developers into the system (a task made easier by a well designed, generalized pre- and post-processing architecture.)

Assisted configuration of the network connections to NASD, Fidelity, and other data feeds, both sending and receiving.

Worked extensively from verbal requirements from the partners and the traders for the above designs.

Provided general UNIX and Internet networking knowledge and assistance.

Fluke Networks, Carrollton, TX; November 2004 - December 2005
Maintain and enhance Fluke Network's NetServer software package. NetServer is written in Oracle's PL/SQL, Perl (for CGI database access via DBI), and HTML (using embedded JavaScript and style sheets for page formatting and form validation) and provides a web based interface for dispatching telephone operating company outside plant qualification and verification activities, as well as providing reporting on verification updates and changes.

Involved in the continuing development of the product, as well as deploying the system to several major customers. Deployment involved basic configuration of the target system (HP-UX), installation of required software bundles, configuration of the Oracle database instance for the NetServer software, and installation/testing of the actual NetServer product.

Additionally, provided design, implementation, and debugging assistance on other projects beyond the NetServer product. Projects were being developed in C++, C, UNIX shell, Perl, Java, and Delphi (Pascal) on Oracle and Sybase relational database systems. Several of the projects made extensive use of BLOBs and LOBs containing test result data from the outside plant test systems. Oracle and Sybase access were via Perl's DBI modules, and Oracles OCCI interface libraries.

Wireless Solutions International, Boca Raton, FL; May 2004 - October 2004

Designed and implemented a program to convert data dumps from an Ericsson Cellular Home Location Registry system into input data for a Nortel Cellular Home Location Registry system.

The program was written in Perl, and can process a million customer records an hour on a AMD Athlon 2200+ based system.

The program was developed using documentation describing the ASN.1 format of the Ericsson dump file, and the command format for the Nortel system.

SDF Public Access Unix Bellevue, WA; December 2003 - February 2004
Research an issue with vnlock problems within the NFS network filesystem code on NetBSD. Research was primarily via examination of NetBSD kernel crash dumps, as we were unable to reliably reproduce the situation under lab conditions. (although it appeared with some regularity under production conditions.)

RAVACS, LLC Fort Worth, TX; September 2002 - June 2005
Brought in to bring a IP based video archiving/surveillance system to software completion. Review of the existing system brought about a redesign and reimplementation of the system, moving from an MS-Windows based platform to a NetBSD (UNIX) based platform. Changing the underlying OS, and reducing the number of pre-installed components (that weren't used) greatly improved the reliability and the manage-ability of the system.

In the process of the redesign, the software moved from using a proprietary MS-Windows only viewer application to being viewable in any web browser supporting motion JPEG image streams.

Once the system was stable and using less resources, the hardware platform was respecified to provide much better remote management, from cold-start on up. Remote management capabilities were deemed extremely important as the systems were expected to be placed in locations with no local computer support of any kind.

North County Communications, San Diego, CA; November 2001 - January 2004
Enhancing the internal customer billing system. System modified to support multiple virtual companies, multiple service types and levels, and general bug fixing. System uses an Informix database, and is implemented in Informix's 4GL language.

Debugging and reimplementation of credit card processing server software. The software implemented First Data Merchant Services' Electronic Ticket Capture "Plus" (ETC+) processing protocols over modems. Software runs on a Solaris/x86 system. Client applications run on Solaris/x86 and Solaris/SPARC systems, and communicate via a proprietary network protocol.

Design and implementation of a telephone switch traffic monitoring system. The system logged trunk availability statistics to an Informix database using Perl's DBI module. Data was retrieved and visualized with CGI programs written in Perl, using the DBI module to retrieve the data, and the GD module to visualize for presentation via a web browser.

Yotta Networks, Inc, Plano, TX; September 2001 - November 2001
Implemented target platform specific code to integrate the NetPlane OptiRoute software suite with the Yotta Networks hardware systems. The target services implemented include the IPv4 forwarding information base to hardware binding and the MPLS label processing engine to hardware binding.

The hardware in use is based upon the Agere ASI/RSP/FPP chip-set, using Agere's PayloadPlus programming interfaces.

Communications Technology Corporation, Dallas, TX, October 1998 - February 1999 (via Brian Scott & Associates)
Porting of CTC's DaVaR® Gateway Software from SCO Xenix to HP-UX 11.0. The DaVaR® Gateway Software is written in C and Perl, with database interfaces (to Oracle) and X11 Windowing System graphical interfaces.

Recommended packaging methodology on the HP-UX platform, and produced example implementations of the packaging methodology.

Transitioned the source control from SCCS to PVCS on HP-UX, and outlined the transition from PVCS on HP-UX to CVS on HP-UX.

Info Connections, San Diego, CA, September 1998 - October 1998
Porting of Voice Conferencing applications suite from Interactive UNIX (System V, release 3.1) version 4.1.1 to Sun Solaris/x86 2.6. Voice Conferencing software uses Dialogic telecommunications peripheral boards installed on the ISA computer bus.

EGSner Enterprises, Dallas, Texas. April 1987 - December 1998
Maintain multiple T1 (high speed dedicated digital) links to my residence, peering with national ISP's for Internet connectivity.

Provided network connectivity consulting for numerous clients. Clients have set up connectivity ranging from dedicated dial service through ISDN to T1 speeds.

Provide web service for friends and non-profit organizations (such as the National Model Railroad Association, and the North Texas Water Garden Society).

Provider of low cost domain registration and management services.

Completed implementation of a device driver for an ISA T1 channel bank card under Interactive UNIX 2.02.

General TCP/IP networking consultant for several clients, predominately on BSD based systems.

iNetSpace, Inc
Dallas, Texas, May 1997 - May 1998

Network Administrator, May 1997 - May 1998
Configured and maintained HP-UX, Solaris, NetBSD and FreeBSD systems for iNetSpace.

Senior Software Engineer, May 1997 - May 1998
Implemented a design for web based document entry and management demonstration system, using Perl (using the CGI interfaces to the web server), HTML, and third party modules.

Implemented client and server portions of a client/server wireless telephony property management system, using C/C++ and Informix ESQL/C.

Implemented reporting programs using Perl's DBI modules querying Informix databases.

PLATINUM technologies, inc. (now part of Computer Associates),
Arlington, TX April 1996 - May 1997

Product Developer, April 1996 - May 1997
Project Leader/Designer/developer on the UNIX version of the AutoMedia media management system. Responsible for the architecture and design of the system, and the implementation of the user level mount request system. Also responsible for the kernel virtual tape device driver.

Ported PLATINUM's AutoAction system (written in C++) from Solaris/SPARC to Solaris/x86. The most notable changes were corrections in handling of data coming from the network.

Titan Information Systems,
Dallas, Texas. August 1994 - April 1996

Acting Manager of Titan UniTree Customer Support, Dec 1995 - April 1996
Responsible for training of customer support personnel for the Titan UniTree product.

Responsible for improving the quality of the support provided to customers of the Titan UniTree product.

Acting Manager of Computer/Network Operations, July 1995 - April 1996
Responsible for planning and execution of site growth.

Designed and implemented CVS source code management system within this division of Titan Information Systems.

Internet services administrator, August 1994 - April 1996
Designed and implemented the Internet connection for the facility. This included choosing a vendor, and setting up the connectivity.

Heavily involved in the design and implementation of a wide area network for the Client/Server division of Titan Information systems. This included configuring the name service and mail systems for the cst.titan.com domain, as well as providing name service delegations for each site within the division.

Installed and configured TCP/IP connection to customer network to aid development contract for the customer.

Senior Software Engineer, August 1994 - April 1996
Updated Titan tape device driver for SCSI tape on the SGI systems to work on all versions of IRIX from 5.3 on.

Modified above device driver to support IDRC compression on STK 4480 tape drives when controlled through a CNT 3100 Gateway SCSI to IBM Channel protocol adapter.

Designed and developed customer management and response system applications using a client/server architecture. The server components were implemented in C on UNIX hosts running Informix relational database engines. The server components embedded SQL into the C software using Informix's ESQL C preprocessor. (similar to Oracle's Pro*C.)

Designed and implemented the CVS source control system used by Titan for all software development, both commercial and contract.

CONVEX Computer Corporation (now part of Hewlett Packard Company),
Richardson Texas, September 1989 - August 1994.

Designed, implemented, and tested a tool to rebuild the MACH micro-kernel and servers from an object only distribution for CONVEX SPP/UX on the CONVEX Exemplar systems.

Enhanced the CONVEX installation software suite to include an integrated, layered, device driver installation environment first released with ConvexOS 11.0.

Assumed maintenance and enhancement of GIP, CONVEX's software installation suite after the original author left the organization.

Reworked the product packaging and production scripts to ease final product manufacturing, as well interim product generation. Extended the existing product generation system provide for a completely hands off, automated test system of the kernel and utilities product set on a weekly basis.

Lead utilities engineer in the design and implementation of "large" files and file systems (greater than two gigabytes) under ConvexOS.

Responsible for adding inter-procedural optimizer support to the ConvexOS loader (ld) and assembler (as), as part of the development of CONVEX's pioneering Application Compiler suite. As part of this project, assumed responsibility for the loader and assembler, as well as the standard C library.

John Bridges and Associates, Lewisville, Texas.
April 1987 - August 1989


Publications

Published Papers

An Implementation of Large Files for BSD UNIX,
Shaver, D., Schnoebelen, E., and Bier, G., USENIX Winter Conference Proceedings, January, 1992

Periodicals

BSD Magazine
Issues 1/2008 - Present
Linux Magazine: Compile Time column
September 2002 through January 2003.

Internet References

References via Google Search

Associations

USENIX Association, since 1990.

Dallas/Ft Worth Unix Users Group

National Model Railroad Association, since 1994


Education

Bachelor of Science in Computer Science
Minor in Heterodox Economics. Iowa State University, Ames, Iowa 50010

Copyright 1985-2009, Eric Schnoebelen
Unauthorized use prohibited
$Id: general.html,v 1.61 2009/04/11 03:19:17 eric Exp $