Craig Berry

cberry@cine.net
(323) 687-1532

Objective

Seeks a technical leadership position utilizing a background in the design, implementation, and project management of web-fronted distributed applications, media delivery systems, process control systems, and a variety of other applications.

Skills

Languages Java (JEE), Perl, C/C++, DHTML, Lisp, FORTRAN, various assemblers, etc.
Operating systems Unix (Solaris, Linux, many others), Windows family, VMS, OS/400, etc.
Protocols and standards XML (XSLT, SOAP, RSS, etc.), LDAP, RMI, special-purpose protocols over raw IP, http, etc.
Database Oracle, MySQL
Embedded systems Set-top boxes, process control systems, autonomous vehicles
Tools and components Apache, Tomcat, Spring, Hibernate, Ant, JUnit, Struts, XDoclet, Eclipse, etc.
Experience  

5/2008 - present

Google

Software Engineer

Contributor to design and implementation of advertising management tools on the Google network.

2/2003 - 4/2008

PortBlue Corporation

Principal Architect and Technical Manager

Responsible for design, development, and team management for a J2EE web application using a three-tier architecture to deliver decision support and expert system services. Product makes extensive use of open-source components to deliver a low-cost, high-quality solution.

  • Managed development team, coordinated with other technical managers and remainder of company to refine requirements and schedules.
  • Led tool and technology search and selection efforts.
  • Coordinated scheduling and execution of product version deliveries on a quarterly cycle.
  • Produced both design documents (UML, conceptual narratives, etc.) and large amounts of implementation code.
  • Advocated adherence to standards and best practices, reuse of available third-party components, and commitment to maintenance of clean architectural component boundaries as a path to a maintainable, extensible product.

4/2001 - 1/2003

Vizional Technologies

Vice President of Platform Development

Responsible for design, development, and team management for an enterprise-scale J2EE supply chain management application. Product components include web display framework, data access objects, transaction processing flow manager, messaging subsystem. Heavy use of XML technologies, notably XSLT in both display and data mapping roles.

  • Managed team of 20 developers.
  • Led design of components and process flow model.
  • Evaluated and led integration effort for third-party components.
  • Built prototype for security subsystem, allowing single-point control of web user sessions and transactional agents, including granular visibility control for data elements based on security policies.

8/2000 - 3/2001

GlueCode

Vice President of Technology

Responsible for design, development, integration, and support of open source Java servlet-based enterprise application suite, including LDAP user management and authentication tools and an XML-driven web UI generation framework.

  • Managed team of 12 developers.
  • Coordinated schedules and tasks with tech writers, system support team, business development team, beta partners, and other groups within and outside the company.
  • Served as primary liaison to open source community.
  • Developed architecture for multiple product integration, security enhancements, and improved configuration and customization management.
  • Delivered product certified by National Software Testing Labs (NSTL) for inclusion with Red Hat Linux distribution (version 7.1), on time and under budget, despite extraordinary distractions from other projects and company difficulties.

10/1998 - 7/2000

Intertainer

Chief Architect

Responsible for system architecture and some component design and implementation of a broadband entertainment-on-demand consumer internet product. This product uses a database-backed Java Server Pages website, STB embedded application, or PC Java application to deliver movies, music, and ecommerce opportunities to homes via DSL, cable modem, or ordinary cable.

  • Developed end-to-end system architecture for multiclient application model.
  • Designed and implemented middleware modules allowing abstraction of page generation from DB details.
  • Educated development group and company at large on web issues and opportunities.
  • Managed architecture team responsible for security modeling and design and new-technology validation.
  • Adapted application architecture to support STB and Web clients using a single back-end server interface.

5/1997 - 10/1998

Americast

Software Architect

Responsible for portions of system architecture, component design, and some implementation for the client application in a cable-based Near-Video-On-Demand (NVOD) system, hosted on a very processing- and memory-constrained STB. Application software was implemented in C++ and assembly.

  • Worked with server group to specify interfaces, protocols, data formats, and other parameters.
  • Developed event-handling architecture capable of delivering acceptable responsiveness on slow STB.
  • Designed and implemented object persistence scheme to simplify memory management, storage, and separately compiled resources.

6/1992 - 5/1997

Candle

Senior Software Engineer

Responsible for design and implementation of various parts of a distributed, heterogeneous system management application, coded in C++ and with elements running on MVS, AS/400, Unix, NT, and OS/2 platforms. Lead project to design and implement user-programmable automation facilities, allowing flexible automatic response to unusual conditions detected by monitoring modules.

  • Served as "object orientation advocate" within company, conducting formal and informal training on OO principles.
  • Member of design review group, evaluating proposed changes and enhancements for feasibility and technical merit.
  • Contributed numerous tools for log analysis, system status checking, etc. which became standard toolkit items.
  • Identified software reuse and application combination design which saved person-years of work.
  • Developed new model for UI representation of user automation policies.

11/1988 - 6/1992

Rockwell International, Marine Systems Division

Member of the Technical Staff IV

Developed control system for autonomous underwater vehicle, including telemetry visualization tools. Contributed to application which identified ships using passive sonar signatures.

8/1985 - 11/1988

General Dynamics, Pomona Division

Senior Software Engineer

Developed distributed control system for plant HVAC, fault analysis software for shipboard weapon system.

Publications

"Rendering a Connected Tree Using XSLT"
XML Journal Vol. 5 no. 2 (February 2004)

Education

B.S. Chemistry, 1985, Harvey Mudd College