Note: The names of the consulting clients in this list are considered proprietary information of Sharp Programmers, Inc., and as such, under no circumstances is this list to be disseminated to any persons or party without expressed permission from Sharp Programmers, Inc. ANDREW SHARP CONSULTING PROJECTS SUMMARY BY CLIENT/DATE Accrue Software, Sunnyvale, CA 8/97 - 12/31/98 Modified two platform versions of a network sniffer/collector program: created one portable architecture program that built and ran on 4 platforms (Solaris, IRIX, FreeBSD and NT) without the use of #ifdefs. Ported Accrue's web site tracking enterprise application ("Insight") to Windows NT from Solaris. Large body of C, Perl, Java and shell scripts. Completely replaced the data warehouse accessing method in the large number of Perl CGIs as well as modified the entire product line to be installable in any abitrary directory on the target system. This application included an embedded Apache web server and the Redbrick Data Warehouse system (now owned by Informix). Several other sundry projects including redoing the build process and Makefiles for the entire product to achieve a 4:1 reduction in build time. Veritas Software, Mountain View, CA several projects from 4/96 on Conversion of existing file systems commands and utilities to manipulate multiple filesets feature of Veritas' VXFS file system product for HP-UX. Porting of Veritas' VXFS high performance Unix file system and HFS (Heirarchical File System) product offerings to SVR4.2-MP kernel running on a MIPS-based MP platform. Implementation work to convert and subsequently test the VXFS filesystem to 64 bits. HP-UX platform. Hewlett-Packard, Cupertino, CA 11/95 - 2/96 Assisted kernel development engineers in the implementation of user threads. "Davis" (10.?) and "Sacramento" (11.0) releases of HP-UX. Digital Video Art, Cupertino, CA -ongoing- Sundry projects: kernel, NFS and SCSI driver development and consulting work on SGI workstations; developed and taught Windows/NT device driver writing class; Windows/NT programming. Marble Associates, Baltimore, MD 2/95 Smalltalk mentoring and programming for USF&G. First time conversion of large team of COBOL IS programmers to Smalltalk programmers. Consulted on the enterprise application architecture as well as one-on-one advising and mentoring to the USF&G managers. FirePower Systems, Menlo Park, CA 4/94 - 10/94 Member of Windows NT bring-up team for FirePower's (formerly PowerHouse) single and dual PowerPC-based PCs. Windows NT HAL development and debugging. New processor silicon (PPC 603 and 604) debugging. Developed Windows NT (kernel) drivers for SCSI (miniport), ethernet(NDIS), serial, parallel, and floppy. Sun Microsystems, Menlo Park, CA 1/5/94 - 3/18/94 Fixed customer reported kernel bugs in four different versions of Sun's two different operating systems, BSD-based SunOS and SVR4-based Solaris 2.3. This group at Sun provided a bridge between top level Answer Center tech support people and Sun software development engineering. We would develop fixes for the bugs and then send the fixes to engineering for inclusion in the next release. Marble Associates, Dayton, OH 2/93 - 9/93 Headed a ten person consulting team providing NCR with technology consulting in the areas of application architecture design and development and enterprise system architecture. NCR's computer division was engaged in a massive effort to reengineer its order entry, customer service and demand planning business processes which would require that all new supporting applications be developed simultaneously and quickly. Primary responsibilities included mentoring client executives on infrastructure software architecture and development planning issues. Ability to program in Smalltalk and C++, design enterprise-wide network/computer systems, and extensive knowledge of object-oriented design and development methodologies was required. as well as the ability to mentor NCR's executive committee on the issues surrounding and effort of this kind. NeXTStep, Solaris 2.1, DOS Windows, Unix SVR4.3. Wyse Technology, San Jose, CA 9/92 - 12/92 Contracted as a temporary member of the kernel engineering staff to help the client release their new kernel on schedule. Kernel was a modified version of SVR4.2 MP with a custom multi- threaded Streams implementation. Primary duty was to fix bugs from weekly bug problem lists which were generated by SQA staff, Technical Support and also Engineering. Problems ranged from driver bugs to virtual memory bugs to file system bugs, but main responsibility was for problems that caused kernel panics or hangs. Most dealt with MP related issues. Client had two distinct i486-based SMP architectures as well as a uniprocessor architecture utilizing the EISA bus. Marble Associates, San Jose, CA 10/91 - 12/91 Designed and implemented Unix SVR4 and SVR3.2 drivers for an OCR board in a 386 ISA bus hardware environment. Designed and implemented client-server NeXTStep program similar to email for distributing, storing and organizing phone messages. Other sundry NeXTStep software projects. Soulbourne Computer, Boulder, CO 7/91 Member of a three person team that conducted performance analysis of customer's multiprocessor-modified SunOS. Produced a consultation report for kernel enhancements and modifications to increase system performance. UNISYS/Convergent, San Jose, CA 1/90 - 6/91 Wrote ethernet drivers (SVR4-MP streams-based) for several different controllers for customer's under-development 486-based asymetrical MP platform. Included debugging the new hardware and new MP Unix software in the lab to get drivers working. Ported asynchronous tape driver to Unix kernel to allow QIC and DAT tape drives to stream when backing up disks with the cpio(1) and tar(1) utilities. Performed extensive performance evaluations and enhancements of SVR4- MP (Intel consortium) kernel. Became quite familiar with industry common benchmarks including Whetstone, Dhrystone, AIM, Neal Nelson Business Benchmarks, SPEC, TP-1 and others. Developed custom benchmarks for analyzing I/O system performance. System tuning and kernel changes increased AIM system benchmark results anywhere from 50 to 100 percent. Official benchmarks performed by AIM rated customer's machines in three out of the top five spots of the best price/performance Unix servers in their class, including the number one slot. UNISYS/Convergent, San Jose, CA 12/88 - 1/90 Contract software engineer of Unix based PC networking product which included two different types of network file systems and ethernet drivers for five different controllers. Engineer responsible for the release of the product on the client's i386-based server product line. Ported release to client's 68040-based server product line and managed all aspects of release cycle. Hewlett Packard, CA 8/88 - 12/88 Developed real-time test programs to exercise and verify the features of an eight port real-time serial communications driver for a real-time intelligent I/O interface in a PA-RISC based mini- computer running HP-UX (Unix). Developed real-time programs with a cross C compiler on host mini. Intelligent real-time I/O controller featured an Intel 80186 microprocessor and 1/2 MB of RAM, the pSOS operating system and a custom I/O system. Dataspec, San Jose, CA 8/86 - 1/89 Developed assorted Unix based applications for client's customers. C, lex, yacc and make programming, often using advanced Unix features, such as shared memory, messages and semaphores. Developed and implemented such applications as SNA 3270 terminal emulators, large database applications, custom user interfaces. Designed and implemented a Unix application to activate electronic pagers. Application was spooled and very user-friendly (used by secretaries to page field service personnel). Developed several DOS interrupt-based drivers, mostly so we could implement communications and networking to DOS clients. DataSpec, San Jose, CA 12/87 - 1/89 Designed turnkey computer systems for client's customers. Provided advice and analysis for 641user computer systems including cost/profit and "best-fit" analyses for a variety of turnkey computer system installations. Sun Microsystems, Federal Division, Milpitas, CA 11/87 - 1/88 Backported C2 secure Unix kernel features from a pre-release SunOS kernel (SunOS 4.0) to the current version (SunOS 3.5). Included adding new system calls, C library calls, and new utilities. Backported C2 code features to many Unix utilities. ADS, Inc. (now Verity), Mountain View, CA 11/86 -4/87 Member of a three man team implementing an advanced rule-based text retrieval system (now called "TOPIC" and marketed by Verity, Inc.) on the IBM PC-AT architecture. Implemented a stack machine "compiler" internally into the application that translated a program into 80286 machine code and then transferred execution flow to that new code. Advanced MS-DOS and C language programming, and 80286 assembly and machine language programming (hand assembly). KLA, Inc., Santa Clara, CA 8/86 - 9/86 Updated and debugged large Unix application. Included debugging custom communications protocols for interfacing with KLA's wafer mask inspection equipment. Application gathered and stored large amounts of numerical data using C-ISAM interface to Informix database. Provided customer with modern software development strategies and methodologies to help them raise the productivity of their development group.