Andrew Sharp
= andy@netfall.com =

With more than 20 years in the computer business, I have garnered a unique variety of experience and expertise. This experience ranges from advising the executive committee at NCR on software development methods to Unix kernel engineering, and a lot in between.

Since 1986 I have performed a large body of consulting work that appears here under the heading of my company, Sharp Programmers. Those engagements are listed separately at Consulting Projects Summary. All other listings here are for permanent positions.


Continuous Computing, Mountain View, CA, 6/2002 to 11/2004

Linux Development Manager. Technical manager overseeing the porting of a High Availability middleware suite from Solaris to Linux. Designed the porting and conversion strategy to convert a heavily Solaris-targeted source and packaging environment to a portable code base, suitable for continued development on both the Linux and Solaris platforms. Personal development responsibility was to rewrite the kernel code to Linux. This code was a proprietary, multi-threaded, 32/64 bit replicating file system, fully developed in house. More than half the kernel code had to be replaced to port it to Linux, including re-architecting the streams-based networking code to standard Linux kernel sockets code, as well as creating custom condition variable and mutex implementations, and filesystem layer interfaces. Ported several of the HA user level daemons from the product to a heterogeneous code base able to support Solaris and Linux as well as multiple processor types including UltraSPARC, X86, and ARM/XScale. The design of the file system is multi-threaded (kernel threads), 64-bit kernel code that implements a replicating, highly available filesystem with sub-second failover capability between two nodes (shared nothing), with HA NFS capability, disconnect-reconnect recovery, and a fully custom, multi-threaded, concurrent repair/resync capability.

Sharp Programmers, Mountain View, CA, since 1986

Sole proprietor contracting and consulting business focusing on Unix and NT kernel development as well as server applications development. Clients include HP, Sun, NCR, Pacific Bell, Fujitsu, Solbourne, Unisys, Wyse, Sony, Veritas. See Consulting Projects Summary for a full listing.

Open Source Group, Santa Clara, CA, 2/00 to 8/00

Director of R & D and IT at open source centric startup consulting firm, joining the company as the seventh employee. Company provided software/web development and IT consulting services. IT: grew the company infrastructure from 6 employees spread amongst three single room offices to over 50 with one office in Santa Clara and one in San Francisco; designed and implemented the entire infrastructure strategy including the sourcing and purchase of all computer and network hardware (desktops, laptops, servers, printers, switches), and ISP selections; an incrementally expanded, completely heterogeneous network infrastructure was implemented entirely with Linux, achieving a vast cost reduction; chaired a steering committee to transition non technical employees from Windows to Linux. R & D: Responsible for creation of R & D plan and launching the group as well as kicking off the lab build out. Oversaw the initiative to create an R & D department to support the furtherance of Open Source software into the enterprise, foster growth amongst our technical consulting staff, and to research custom technical solutions.

iPass, Inc., Mountain View, CA, 1/97 to 6/97

Director of Engineering at internet software start-up, then the leading company in the development of an internet service that allows ISPs to share their PoPs. Hired the entire software development team; wrote, coordinated and implementing the development and release plans; ported the server software from FreeBSD and Solaris to Linux, HP-UX and Windows NT; re-architected the entire code base to a portable, multi-threaded software architecture that supported all flavors of Unix and NT thread models; designed and implemented a single, heterogeneous source code build environment for all 11 supported platforms. Software included five network services.

Dataspec, Inc., San Jose, CA, 4/87 to 12/88

Co-founded this three person Unix systems Value Added Reseller where we designed, implemented and delivered custom database applications on Unix minicomputers, primarily for Pacific Bell.

Convergent Technologies, Unix systems Division, Santa Clara, CA, 5/84 to 8/86

Senior Software Development Engineer. Accomplishments included Unix kernel development on Convergent's multi-CPU systems; design and development of a distributed source control system based on SCCS.
Senior Technical Support Engineer. Lead technical person in support of Convergent's single and multi processor computers. Authored the official support process for all of Convergent's Unix products; was the senior technical person in the department handling phone support from Convergent's OEM customers engineers, including Unisys, Motorola, NCR, AT&T, Harris, Perkin Elmer, etc. Manager of the beta release program for Convergent's newest minicomputer product.

Information Systems and Networks, Washington, D.C., 2/84 to 5/84

Senior Consultant for "beltway" consulting company. Implemented a custom BSD Unix driver for high end DEC SCSI disk drives including special programs to allow VAXs to boot from these unsupported (by BSD) drives. Managed installation and administration of the WAN connecting many diverse Unix-based computers.

Amecom Division of Litton Industries, College Park, MD, 5/82 to 2/84

Project leader in the Engineering Services department. Managed the group's capital budget (3 million annual); managed the administration of all of Engineering department computers. Defined and performed the systems analysis and administration tasks for DEC mini and micro computers, and provided programming services to Amecom's engineering groups. Amongst many programming tasks, wrote a Unix disk device driver for a PDP-11.

Education

Tufts University double major: Computer Science and Philosophy.