Charles R. Karish    

1699 Middlefield Road (415) 317-0182 FAX: (650) 329-8583
Palo Alto, CA   94301 karish@well.com http://www.well.com/~karish/ChuckKarish_res.html

 
Summary: Provide a disciplined approach to the delivery of services and to management of the software life cycle. Maintain productive working relationships with both technical and non-technical client contacts. Excellent communication skills.

Strong working knowledge in these areas:
 

Code Management Release Engineering Software Quality
Account Management Test Suite Development System, Network Mgmt.

 
Tools/Environments: C, Perl, FORTRAN, Unix and Linux (sh, awk, sed, SCCS, autoconf, make, m4), Windows NT/2000, POSIX, TCP/IP networking, Java, Ant, InstallShield, InstallAnywhere, Perforce, VSS, CVS, Bugzilla

Professional Experience:

Build and Release Engineer   diCarta, Inc.     July 2003 - present

Projects:

    Designing and implementing a code management scheme to support new product development, maintenance of released product versions, and customization projects.

    Designing and implementing policies for parallel development, instantiated in a scheme of project branches and plans for integrating changes into the main development line.

    Maintaining and extending the product's installation scripts.

    Made the automated build system simpler, faster and more robust. Modified build scripts for better portability and error handling. Set up automated updates of the build system's configuration files, using Perforce.

    Implemented a departmental Web site, pushed up automatically from Perforce. Made released products and data from automated builds transparently accessible over the Intranet.

    Current project: Developing an Ant-bsaed build framework for separating customization work into a separate extensions layer.

Lead Engineer, Software Infrastructure   Safeweb, Inc.     October 2002 - July 2003

    I put a complete software life cycle management process into place, based on continuous integration and automated build and test.

    I modified the appliance's upgrade process for better reliability and less support overhead.

    I wrote software to support a new device on the appliance.

    I made the build system faster, more robust, and easier to use.

Lead Engineer, Software Infrastructure   Acero, Inc. (formerly Secant)      2001-2002

    I led the software development infrastructure team, providing tools development, build and release services (C++ and Java), installer development, and internal software deployment.

    I streamlined the development cycle so server developers and client application developers could collaborate more efficiently. I designed and implemented a branched code management scheme under VSS that made it easy to reproduce any version of the product.

    I identified and implemented tools and technologies for development and for project management.

    I documented tools and processes so they're no longer black magic, in a style suitable for incorporation into an ISO 9001 quality manual.

Senior Software Engineer, Infrastructure   BEA Systems     1998-2001

    Source Code Management:  I managed the substantial (250,000 files) massively-branched Weblogic code base under Perforce.

    Tool Support  I wrote and maintained tools to implement and monitor the integrated maintenance and development process, which involves continuous change integration and daily testing on multiple development branches. I made the first pass through daily test results, which required troubleshooting through multiple layers of Java code, shell scripts, build results, test results, and system activity logs.

    Release Engineering:  I automated the process of creating release packages for multiple configurations on NT and Unix platforms, using InstallShield and InstallAnywhere.  I managed the license update process and developed alternate licensing and registration procedures for CD and Web distributions.

    Developer Support:  I built and supported development tools and provided operational support and tools troubleshooting for developers.

Testing Services Manager   Mindcraft, Inc. Palo Alto, California      1987-1998

    Account manager and operations manager for testing services. I developed the ISO 9000-based policies and procedures for Mindcraft's prolific POSIX and X/Open testing services. I developed test suite automation tools. I provided consulting services to help clients such as Sun, SGI, HP, DEC, Apple, IBM, Microsoft, Unisys, and Data General modify their systems to conform to the relevant standards.

    Developer, Tool Builder, and Release Engineer for standards conformance test suites. I built source code management tools to make it easy for developers to manage large file trees under SCCS. I managed integration, validation, and release for test suite products.

    Web Operations: I created the operations manual and quality program for a Web site development and hosting service. I wrote CGI programs and HTML forms-based tools to allow non-technical users to manage virtual domains and client Web sites.

    System, network, and server management UNIX (Solaris, IRIX, FreeBSD, Next, A/UX, AIX, SCO), Windows, MacOS, mail, news, NFS, DNS, Web, firewall, routers, modems, ISDN.


Education: BS and MS, Geology, Stanford University


Member: IEEE Computer Society, USENIX, SAGE