Ted Bonkenburg

Removed For Privacy
Mountain View, CA 94xxx
Status: U.S. Citizen
Phone: (xxx) xxx-xxxx
Email: resume@inaddrany.com
Website: http://resume.inaddrany.com/

Profile

I offer over five years of experience across a broad range of topics, from programming kernel modules for Linux, Solaris, and Windows NT to database driven user interfaces. I enjoy working at all layers of a system and have the ability and drive to learn new technologies extremely quickly. I am seeking a full time position in a company that can provide rewarding and challenging work.

Work Experience

Google, Member of Technical Staff 05/05-Present
To be determined.
IBM Research, Staff Advisory Engineer 06/02-05/05
Managed a team of three technical interns on a project to implement real-time content and meta-data indexing of the Linux file system. This technology is similar to Apple's forthcoming Spotlight and Microsoft's WinFS technologies. The project included kernel modifications, database programming, user interface programming, and overall system design. Implemented a tamper-resistant Windows kernel driver used for DVD Audio playback in a major sound card vendor's product. Designed and implemented a comprehensive anti-debugging library that can detect and disable both user and kernel level debuggers and complements the tamper-resistant technology. Received a Research Division Technical Group Award for this work. Worked on a team of five to implement rescue and recovery technologies for IBM's PC division. Our technology has become the revised version of the IBM Rapid Restore Ultra product that ships on the service partition of every IBM PC and notebook. Our approach combines backup and restore for recovery and a stripped down Linux environment that enables the user to perform rescue tasks such as web browsing, email, instant messaging, trouble ticket resolution and so on in the event of a system crash. Received a Research Division Award for this work. Worked with another researcher to make the Apple iPod a backup, rescue, and recovery device by adding a bootable Linux-based service operating system on the iPod. The original music-playing functionality of the iPod is unaltered. Created a web services toolkit for mobile devices based on the OSGi (Open Services Gateway Initiative) platform. This was a joint research project between the Almaden, Watson, Zurich and Japan labs that enables OSGi services to be automatically exposed as web services, as well as enabling them to transparently make web services invocations. The work is now part of IBM's WebSphere development suite. Designed and implemented the storage management system for an appliance product aimed at small and medium businesses. This makes use of Linux logical volume management and RAID to create a system where storage can be dynamically added to the appliance while the file system is in use and provides data protection via RAID mirroring.
Ensim Corporation, Member of Technical Staff 08/99-06/02
Worked in the kernel group on operating system virtualization technology that partitions a server into multiple "Private Servers" that perform as independent servers. This revolutionary technology is the first of its kind. Led and participated in design meetings for the product. Wrote kernel modules to implement core components of the system as well as per Private Server memory, process, and pseudo-terminal limits. Aided in a port of the virtualization technology from Linux to Solaris. Created a set of libraries for writing cross-platform kernel modules that significantly reduced both porting and maintenance time. Wrote a Solaris streams module that maintains network statistics for each virtual server. Researched a port of the operating system virtualization to Windows 2000. Aided in the design of a prototype with team members at Ensim India. As a solo project, created a device driver that recognizes incoming HTTP requests and places the handling process and its children in a CPU scheduling node that corresponds with the domain. This provides quality of service guarantees at the domain level, preventing any domain from exceeding its CPU quota and affecting other domains on the server. Ported the product between Linux, Solaris, and Windows 2000. Worked on a team of four people to create a customer management and billing product. Wrote the billing back end scripts as well as a large portion of the product's GUI. This involved programming in C, PHP, Perl, and Python. It uses both MySQL and Postgres databases. Worked closely with another employee to start a recycling program within Ensim.
Intel Corporation, Summer Intern, Server Software TechnologySummer 98
Aided in the development of a performance suite for the Virtual Interface Architecture, a high speed interconnect for server clustering. Worked on the Intel VI Architecture Conformance Suite software for determining the conformance of a Virtual Interface Provider Library (VIPL) implementation to the Intel recommended VI interface.

Selected Projects

Master of Engineering Project 02/99-08/99
Created a protocol stack for use in building reliable network applications. It provides an endpoint abstraction so that multiple endpoint types, such as IP or VI, can be communicated with using the same upper layers. Implemented an endpoint failure detector using a gossip-style failure detection service. This algorithm scales well in detection time and network load as the number of nodes increases. Created a protocol layer that implements the probabilistic broadcast protocol. The probability of message delivery failure approaches zero exponentially as the number of participating nodes increases.

Education

Cornell University, College of Engineering, Ithaca, New York Masters of Engineering in Computer Science, 08/1999 GPA: 4.23 / 4.3 Bachelor of Science in Computer Science, 05/1999 GPA: 3.81 / 4.3

Skills

Languages: C, C++, Java, Objective-C, C#, Assembly, SQL, PHP, Python, Perl
Tools:CVS, gcc, make, gdb, Xcode, Eclipse, MS Visual Studio, SoftIce, WinDBG, KADB, various GNU/Unix tools, and so on.
Platforms:Mac OS X, Linux, Solaris, Windows