K e i t h B e a t t i e | k s b @ i c d s . o r g |
4 2 4 6 1 s t S t r e e t O a k l a n d, C A 9 4 6 0 9 |
www.icds.org/resume Alternate formats: PDF (for printing), MS Word, OpenOffice, Text |
Lawrence Berkeley Laboratory, Berkeley | Aug 2002 - Present |
Computer Systems Engineer II:
Distributed Scientific Group,
Distributed Systems Dept. Icecube project - An NSF funded, international high-energy neutrino detector being installed in the clear deep ice below the South Pole. Managing the test, integration and release of the surface data acquisition (DAQ) software subsystem: set up Mantis for issue tracking, CruiseControl for continuous builds, wrote SQL/JDBC initialization & XSLT cluster configuration and sh/ssh deployment components, oversaw the build out of a local test/integration staging system, coordinate communication and planing between geographically and organizationally diverse collaborators. Akenti project - An authorization policy engine written in Java, C and C++, using digitally-signed certificates (PKI) to define and enforce an access policy for a set of distributed resources. Ported C/C++ side to gcc v3, eased development and distribution by reworking GNU Autoconf configuration and split out Java side to use Ant for building. PyGridWare project - A python implementation of the WS-Resource framework for interoperability with the Globus Toolkit. Wrote an initial implementation of the XMLDigSig specification in Python to provide message-level security via XML digital signatures. |
Bigstep, San Francisco | Jan 1999 - Oct 2001 |
Sr. Release Engineer, Build & Configuration Manager (Sept 1999 - Oct 2001): Solely managed all aspects of source code management, builds, release, related tools and communication needs for a development team of up to 40 contributors in two geographic locations. Managed multiple Unix CVS repositories of over 13K files, 700K LOC (8K source files), with up to 4 concurrent branched major releases. Managed up to 4 concurrent release cycles varying in frequency from twice weekly to once per 4 months for major releases. Responsible for all builds, releases and related tools in one production to two QA environments. Developed a release validation harness and various shell and SQL tools for build and release. Trained engineers via in-house courses and individual instruction on CVS use, internal tools and sandbox maintenance. Coordinated development and release planning between Product Management, Product Development, QA and Network Operations groups.
Software Engineer (Jan 1999 - Oct 2000): |
The Baan Company, Santa Clara | May 1997 - Jan 1999 |
Technology Engineer II, Internet/Connectivity Group, Baan Technology, Baan Development Designed and implemented Java-based middleware components for the Baan ERP system. Designed and implemented Java, C++, Visual Basic and COM interfaces to these middleware components. Assumed leadership role in their documentation, testing and internal distribution (to partners and other Baan developers). As member of the Baan Internet (BI) development team, designed and implemented a Java-based, thin-client GUI to the Baan ERP system. |
Lawrence Berkeley Laboratory, Berkeley | Apr 1994 - May 1997 |
Graduate Research Assistant: ALS Distributed Collaboratory Experiment Environment project Responsible for the analysis, design and implementation of an object-oriented interface to a fault-tolerant, ordered multicast communication protocol for use by project components. Played fundamental role in the analysis and design of a distributed resource management system for control and coordination of project components. Conducted live video-conferencing demonstrations of project progress and contributed to project documentation. |
General Services Administration, San Francisco | Sept 1991 - Apr 1994 |
Computer Programmer: Traffic Management Division, Federal Supply Service Bureau, GSA Responsible for the analysis, design, implementation, documentation, distribution, technical support and training for a freight carrier database system for the Traffic Management Division. This system consisted of a data entry tool, a data modification tool and a report generator which avoided the manual collection, storage and retrieval of commercial freight carrier rates resulting in a dramatic increase of Traffic Management Division's productivity. |
College of Notre Dame, San Mateo | Summer 1999 |
Lecturer: Mathematics and Computer Science Department: Instructor for 2nd Semester Java course covering advanced Java programming topics: Object-Oriented programming & design, Exceptions, Standard utilities & data types, Threads, Network & File I/O and AWT. |
Maximum Linux | Oct 1999 |
Contributing Writer: Wrote 2 articles for the premier issue of Maximum Linux: "12-Step: How to Install Linux" covering the installation of the Red Hat distribution and "X Window 101" covering the basic architecture of the Unix X window system. |
Boot Magazine | Nov 1997 |
Contributing Writer: Wrote its first Linux article: "12-Step: How to Install Linux" covering the installation of the Debian distribution of Linux. The popularity of this article, in part, led to its creation of the Maximum Linux publication. |
San Francisco State University, San Francisco | Jan 1991 - Jan 1993 |
Lecturer: Mathematics Department: Instructor of introductory and intermediate algebra courses. |