Testing

Objective

A position where I can leverage my development experience and advance my skills in a growth oriented organization.

Work Experience

4/05 - present Peopleclick, Inc. Raleigh, NC
Director of Native Development

I currently manage a team of 6 local developers and 12 offshore developers. My team is responsible for all Next Generation development efforts. Our first project was a system for creating client career sites. There is a single instance of this application serving over 30 clients with very different career sites. Our second project is to create a basis for all future Java projects. This is a security application allowing people to login to any of our applications, and we have created a flexible administration system, allowing the admin application to be developed with minimal development time. My responsibility is to review all technical specifications and design documents. I then work with the development team to create a project plan. I have instituted regular code reviews for the team, and I have created a system for the management team to track our progress and measure our quality. I also work to ensure that my team has the answers they need to develop the software quickly. As development progresses, I work with QA management to triage bugs and find resolutions. Finally, I work with product management to help schedule projects for release.

3/04 - 2/05 Red Hat Inc Raleigh, NC
Senior Software Engineer

Red Hat was rewriting the Red Hat Network, a web based application, from perl and python to Java. I architected the Java solution to allow a single back-end implementation for both the web and SOAP interfaces. This application used Struts as our MVC system with JSP and HTML based pages. We wrote a collection of JSP taglibs to reduce duplication of HTML tags. This system needed to work both as a stand-alone system using Java Sessions, and it needed to integrate with the Sessions created from the perl web site. We used Tomcat as our application server, because we didn't need a full blown application server. For our persistence layer, we used Hibernate talking to an Oracle database.

8/02 - 3/04 TechLink Systems San Francisco, CA
Consultant

Covalent was beginning work on their Covalent Application Management system when I returned as a contractor. I was asked to create the Response Time measurement system, which was responsible for measure response time in all major web and application servers and reporting those times in a JSP-based GUI. This was a client/server based model, where the server was JBOSS with EJBs, and the client was a home-grown multi-threaded Java application. SOAP was used for all communication between the agent and server. I worked on agent bugs, and created all of the agent plugins for measuring Response Time. I also created the server-side architecture for storing the measurements. This application was ported to both Oracle and Pointbase databases.

1/00 - 7/02 Covalent Technologies San Francisco, CA

Core Services Manager (5/01-7/02)
As Core Services Manager, I was responsible for a team of 5 people. My team was responsible for doing all open source-based development within Covalent, including Apache, mod_perl, mod_ssl, and Tomcat. We were also responsible for creating all of Covalent's installers. As a manager, I was the liaison between Engineering and the rest of the company, which included creating an escalation policy for bugs to be reported from Professional Services to Engineering. As a world's expert on the Apache web server, I was asked to perform monthly web seminars for our marketing department.

Senior Software Engineer (1/00-5/01)
I was responsible for Covalent's Apache 2.0 work. This included continuing my work on the Apache Portable Runtime, and adding functional improvements to Apache 2.0, such as filtering and multi-threading. I reviewed all OEM deals in order to determine the required engineering resources for the project. I also provided on-site training about Apache to a variety of fortune 1000 companies.

01/1998 - 01/2000 IBM Research Triangle Park, NC
Software Engineer

I started at IBM working on the Lotus Domino Go web server, but IBM quickly moved to an Apache based solution. I was part of a three person team that worked to turn Apache from a multi-process web server to a hybrid multi-process/multi-threaded web server. I began a new open source project, the Apache Portable Runtime, which was a C wrapper library for all operating systems.

Publications

Selected Conferences

Software and Computer Languages

C/C++ Java Enterprise Java Beans
Perl CVS Linux
Windows (all versions) AIX MS Project
gcc vi Apache
InstallShield Multi-platform XML (xerces, xalan) Tomcat
Autoconf Oracle SQL
Jakarta Struts BCEL Emma
Hibernate Junit Ant
Eclipse Log4j SOAP (axis)
Solaris FreeBSD  

Education

1994 - 1998 Worcester Polytechnic Institute Worcester, MA

* B.S. (honors) Computer Science
* Member Upsilon Pi Epsilon

Affiliations

08/1999 - present Apache Software Foundation

* Member, Apache Software Foundation
* Core contributor, Apache Portable Run-time (APR) project
* Vice President, Apache Portable Run-time project (2000 - 2002)
* Core contributor, Apache Software Foundation's http project (emeritus)