Summary

Overview

Tech Lead / Senior developer with a passion for delivering high quality, highly polished user-facing software on a tight schedule using the best of Agile development methodologies. Strengths lay in the early part of the life cycle - recruiting the team, cracking the hard problems, getting the ball rolling and shaping the direction.

Well versed in using UNIX / LINUX, Windows, and Apple operating systems.

Specialties: Mobile / Rich Client Applications (primarily on an Android platform), RESTful API services, Wordpress, Java, Groovy, PHP, JSON, HTML, Javascript and CSS.

Contact

8 Lindbergh Place Court
St Louis, MO 63146 USA

Email:

Online:

Professional Experience

Tech Lead / Senior Engineer with Asynchrony Solutions, St Louis, MO
Oct 2012 - present

Primarily hired for Android development, the project-based work at Asynchrony allowed the opportunity to utilize a variety of other technologies, including WordPress, Python on Linux platform, and Java thick client.

Senior IT Consultant with Bradford & Galt.
on assignment at RGA - Reinsurance Group of America, St Louis, MO
July 2011 - Sept 2012

While at RGA I took a lead developer role, developing a new web-based claims administration system. Data was served through a RESTful JAX-RS web-service tier utilizing services written in Groovy/Grails. The web-tier of the application was a mix of Object-oriented Javascript, AJAX and a very slim Groovy/Grails portion server-side. The team had a very strong commitment to Agile practices, developing code test-first where possible with an emphasis on code quality and delivery.

Android Engineer
Square Inc., St Louis, MO & San Francisco, CA
September 2010 - June 2011

Square's innovative hardware and software solution turns an Android or iOS (iPhone/iPad/iPod Touch) device into a mobile credit-card processing machine.

Every engineer on the Android team was expected to write world-class, high quality, user-facing software where every line of code is peer-reviewed for quality and adherence to agreed team standards.

My primary focus was on the merchant experience, delivering features such as sales-tax calculations, item and inventory management, along with working on the "Card Case" mobile wallet product.

The St Louis based Android team maintained a regular travel schedule that rotated members through the main San Francisco office. The Android team had an emphasis on quality: using unit and integration testing with jUnit, and ruthless peer code-reviews.

Technical Specialist
BJC Healthcare, St Louis, MO
September 2008 - September 2010

While a part of the Emerging Solutions team I held the role of SCRUM master alongside my primary day-to-day role as a senior developer on the “Patient Touch” project. As the need arose, I also had the opportunity to work on the “Pharmacy Kiosk” and “myBJC.org” projects.

“Patient Touch” is a touch-screen bed-side kiosk application for patients at a number of BJC hospitals, to provide information regarding their treatment, their care-team and access to meal-ordering services. It was written in a mixture of JavaFX and Java, utilizing a RESTful webservice back-end that integrated with a number of hospital information sources. Administrative level users could use its web-based administration tool to tailor the application to any given hospital.

The “Pharmacy Kiosk” was an older project, utilizing a Java Swing GUI talking to RESTful webservices, to give visitors a self-service checkout option at BJC hospital out-patient pharmacies.

The “myBJC.org” web portal offering patients online access to their BJC medical data including medical test results and secure messaging with their healthcare provider.

The Emerging Solutions team was highly collaborative, and all projects shared a common emphasis of Agile development, unit and integration testing with jUnit, deep dependence on the Spring framework and high-quality Java, JavaFX, HTML and CSS coding with regular peer code-reviews.

Senior IT Consultant with Comsys
on assignment at Monsanto, St Louis, MO
August 2002 - September 2008

Initially part of the “Rubicon” project, creating custom software to support the Marker Assisted Breeding program within Monsanto's Field & Breeding Services division. Rubicon provided a rich GUI for plant breeders in the form of a Java Swing applet communicating via a RESTful XML web services layer to an Oracle data warehouse of raw genetics data, with upwards of 20 million datapoints in some tables.

The software was written entirely test-first using JUnit, XML Unit, JFC Unit and HTTP Unit testing frameworks, along with JDepend and Clover code quality metrics integrated into the test-suite. Agile (“eXtreme Programming”) development methodologies were used, thereby allowing the team to flawlessly hit the aggressive milestones required by the natural breeding/planting cycles.

On assignment on the commercial side of the company, I was involved in migrating an old ASP web-application to Java using JSP/Servlet technologies, development of Java web-applications used by the Marketing department for tracking financial incentives (which had to be Sarbanes-Oxley compliant) and the creating the rich-client Swing desktop “SeedTrak” application.

SeedTrak was delivered to seed dealers via Java WebStart and was written entirely test-first using an Agile development methodology utilizing JUnit, XML Unit, JFC Unit, and HTTP Unit testing frameworks, along with JDepend and Clover code quality metrics integrated into the test-suite.

Back in the research side of the company I was part of the Field Testing group writing rich-client (Java Swing) applications using a test-first iterative methodology using JUnit, XML Unit, JFC Unit, and HTTP Unit testing frameworks. Desktop applications communicated with web-services deployed on Apache Tomcat servers using open-source Xstream serialization. Java desktop integration components were utilized for close integration with the host Windows environment.

Senior IT Consultant with Comsys
on assignment at Transentric, St Louis, MO
July 1999 - August 2002

Initial project was RailHawk, a Java application providing a Swing GUI to an existing (legacy) mainframe application. My role on the team was user-interface design and coding of a large proportion of the GUI and application framework code.

I moved from a general programmer position on RailHawk to be Senior Programmer / Technical Lead for FuelHawk, a web-based application for tracking and projecting fuel usage in locomotives. FuelHawk was all new code, built from the ground up, and I was responsible for complete system design, user interface/web design decisions and mentoring of the rest of the team who were all junior level programmers. A FuelHawk prototype was initially developed using PHP, the final system used a mixture of HTML/CSS, JSP/Servlet and XML/XSL technologies on the client side, and Enterprise Javabeans storing data to an Oracle database on the server-side. XML messages, transmitted over IBM MQSeries JMS, were used for a real-time data feed from various external sites.

After FuelHawk I moved to the ItemVision application team where I was responsible for a number of bug fixes, enhancements, and performance improvements system wide, including streamlining XML/XSL transformations and switching the entire application to delivering data to the web browser using a compressed data format, thus greatly increasing visible performance.

Lastly, I was part of the team creating the next generation of the Agilink messaging engine, where I was responsible for designing and writing a web-based GUI interface for management of client profiles within the system. The client profile used a mixture of JSP/Servlets and XML/XSL on the client side, and Enterprise Javabeans storing data to an Oracle database on the server-side. I also created the Message Driven EJBs responsible for collecting billing information (upward of 300,000 rows per day) in XML document format from various parts of the Agilink messaging engine.

Senior IT Consultant with Comsys
on assignment at Anheuser Busch, St Louis, MO
May 1998 - July 1999

Performed as Senior Programmer/Technical Lead on the Automated Storage and Retrieval System/Parts Imaging (ASRS) project. Developed a user-friendly system that allowed plant maintenance workers to search, order, and collect parts from the brewery storerooms nation wide. The Parts Imaging System, a mixture of Visual BASIC and Visual C++/COM components, allowed users to search for parts and generate SAP goods issues. The ASRS, a VISUAL C++/MFC application that utilized VISUAL C++/COM components, received transactions and controlled the automated storeroom cranes to retrieve the parts.

Once the ASRS was installed at a plant, inventory accuracy improved from less than 50% to approximately 95%. I was responsible for improving the system performance from nearly complete system utilization to under 10% thus allowing all systems nation wide to access a single central database saving the cost of a database and machine per remote location. The client also experienced increased user acceptance of the corporate SAP system through the use of “user friendly” and intuitive user interface that tied together the various back-end systems as well as gained a significant reduction in support calls.

Software Engineer
Network Managers (UK) Ltd., Guildford, Surrey, UK
January 1996 - May 1998

Developing various applications using C, C++, and Java in Windows NT, Solaris, and SunOS environments.

Network management software for the “NMC Vision” range of network management products were written in C++ using the in-house class libraries. Class libraries licensed to 3rd parties were also enhanced as required.

The ZDS and Network Insight Projects utilized Visual C++ 4.2/5.0, MFC, ActiveX, OLE, COM, and Java running in a Windows NT environment, working with WBEM (Web Based Enterprise Management) components from Microsoft.

Performed as “Webmaster” for the company Intranet.

Software Engineer
Anaren Microwave Ltd., Frimley, Surrey, UK
October 1993 - December 1995

Supervised an HND trainee. Performed initial installation and ongoing maintenance of five user UNIX network. Responsible for C++ programming using Microsoft Foundation Classes (running under 16 bit Microsoft Windows) to port company's DOS based products to a GUI platform. Wrote ANSI compliant C code for source compatible, cross platform systems. Wrote user interface tools, filing system which was binary compatible across platforms, a Windows virtual device driver, and boot code for the embedded system, using the embedded OS-9 operating system.

Programmer / PhD Student
University Of Surrey, Guildford, Surrey, UK
October 1992 - June 1993

Developed software in C, using the Windows SDK covering the interactive 3D modeling of inorganic crystal structures. Performed as a Laboratory Demonstrator for first year undergraduate computing course.

Industrial Year / Co-op placement
Glaxo, Barnard Castle, County Durham, UK
August 1990 - July 1991

Worked for the Process Measurement Center. Wrote an automated Check Weighing System for production line QA. The project involved control of an electronic balance. DDE and graphical output was written in C using the Windows SDK, running on Windows 3.1x.

Education

October 2004 - June 2005
Two-year, part-time academic program in biblical studies and theology.
October 1988 - June 1992
Graduated with BSc (honors) Computer Aided Chemistry

Interests