For a more detailed resume, please feel free to email me.

Languages:

Java JDK1.0.2-1.5, Javascript, Ruby, VisualWorks, Squeak (Seaside), Dolphin Smalltalk, VisualSmalltalk, VisualAge Smalltalk, C++, C, SQL, XML, HTML, COM, Lisp
Engineering: Object-Oriented Programming And Design, Extreme Programming Methodology, Agile Programming Methodology, Unified Process Methodology, Object-Oriented Databases, Relational Database Theory, Garbage Collection, Java And Smalltalk Virtual Machine, Distributed Object-Oriented Designs, Gang of Four Patterns, Artificial Intelligence, Agent Technology, Persistence Frameworks, Concurrent Designs, Performance Tuning In Object-Oriented Systems, Use Cases, Workflow, Peer-To-Peer Networking Concepts
Java Protocols J2EE, EJB, AWT, JFC, RMI, JAXP, JDBC, JNDI, JavaBeans, Servlet, JSP, JINI, JXTA, and JMS
Industries: Healthcare, Insurance, Telecommunications, Claims Processing, Transaction Processing
Systems: Windows 98/NT/2000/XP,UNIX/Linux/Solaris/Motif/X Windows
Applications: VisualAge, Eclipse, NetBeans, Apache Web Server, Websphere, Oracle, Sybase, MS Office, StarOffice, DB2, SqlServer, Perforce, SourceSafe, CVS, Subversion, RationalRose, VISIO, Poseidon, Integrator, Bugzilla, Gemstone
Awards: Second place in 2006 Smalltalk Solutions Coding Competition
Third place in 2005 Smalltalk Solutions Coding Competition
Talks: "Seaside", 2006, Omaha Dynamic User’s Group
"Automated Standards Enforcement", 2006, Omaha Java User's Group
"Reducing Pain", 2006, Linux World Speaker
"Refactoring", 2006, Omaha Software Process Improvement
"Seaside", 2005, Omaha Smalltalk User’s Group
Projects: jNeedle, Thesaurus Eclipse Plug-In, Reflective Testing, Java Serialization/ClassLoader/Disassembler, SmallHttpUnit, Executable Comment Tests, and More
Community: President/Founder, Omaha Dynamic Languages User's Group, 2005-Present
President, Omaha Smalltalk User's Group, 2003-2005
President/Founder, Omaha Ruby User's Group, 2004-2005
Blog: Positronic Vibrations From Planet Alto Dorado
Education: B.S. Computer Engineering, 1994, Auburn University, Auburn, Alabama

Work Experience

Application Architect/Team Partner, FirstData Corporation, Present - October 2003
At First Data, I was part of several successful teams that delivered innovative technology solutions quickly to our customers. My department was cutting-edge in that it was self-directed and engaged in XP/Agile practices. We were the "go to" team for quickly delivering products to market across the entire organization. I distinguished myself as a team player by seamlessly moving between technologies as diverse as J2EE, Smalltalk, HTML, and Javascript and mentoring fellow team members in advanced OO and web design. I brought my prior performance tuning expertise to the project by modifying a major EJB implementation to make it run within user requirements. In order to foster greater community participation amongst developers, I founded Smalltalk and Ruby user groups and gave several talks on notable new technologies like Seaside.
Detail
  • Worked with a dynamic, self-managed team employing XP and agile methodologies.
  • Worked on gift card reconciliation product for several major franchises using Smalltalk, HTML, Korn Shell, and Javascript.
  • Worked on credit card disputes application using Java, J2EE, HTML, Javascript, and DB2.
  • Worked on healthcare insurance eligibility application using MQSeries, Smalltalk, HTML, Javascript, DB2, and Korn Shell.
  • Mentored fellow team members in CVS, Eclipse, Smalltalk, Java, Javascript, HTML, SQL, database design, and object-oriented design.
Consultant/J2EE Expert/Senior Application Architect, Lambert Technologies, October 2003 - June 2002
This project was one year late when I arrived. As lead architect, I was able to turn it around within four months and deliver all of the required functionality to the users, saving the project. Most notably, I architected an experimental system that allowed users to test market hypotheses using a mixture of J2EE, Blaze, and SAS. I also designed and coded a workflow system for insurance renewal that was in production for 6 months before the first bug was reported. Two years later, the user boasts that it is the most robust application that they have ever used.
Detail
  • Responsible for architecture and design of three large products (50+ developers) that allowed the business to outmaneuver their competition.
  • Mentored fellow team members in Java, J2EE, Eclipse, SQL, and Toplink.
  • Worked with senior architects and key business experts to synthesize a design that enabled the business to achieve greater profit.
  • Integrated legacy mainframe systems with new technology solutions via XML and MQSeries to leverage existing infrastructure.
  • Designed and implemented an insurance renewal product for major insurance company using Java, MQSeries, J2EE, Blaze rules engine, Oracle, HTML, and Javascript.
  • Designed and implemented an experimental product that enabled the business to investigate alternative paths using SAS, Oracle, Java, J2EE, Blaze rules engine, HTML, and Javascript.
  • Designed and implemented a work flow product to empower a previously paper bound department using Java, Oracle, J2EE, HTML, and Javascript.
Java J2EE Architect, Argus Health System, Inc, June 2002 - September 2001
During my tenure, I introduced breakthrough technologies by demonstrating a workflow application for transferring files written in JINI and using a custom XML file database. Later, I implemented the application using J2EE and Oracle. After saving a project written entirely in VBScript and SQLServer, I was responsible for moving the code to VB.Net for ease of maintenance while also making sure the existing product did not interrupt this vital portion of their business. In the order to ease the development of more robust systems I encouraged fellow team members in Agile/XP processes, mentored them in good OO design practices and introduced the Eclipse IDE.
Detail
  • Designed and coded XML object persistence framework and database using JAXP.
  • Designed and coded workflow web application for transfering files across businesses.
  • Mentored fellow team members in Extreme Programming and Unified Process methodologies.
  • Mentored fellow team members in J2EE, Java, and OO Responsibility Driven Design
  • Established OO Design And Agile Practices for new technology group
  • Designed and coded JINI prototype for workflow application.
  • Designed and coded persistence framework for accessing DB2 relational database.
  • Redesigned and coded conversion of high demand production application from VisualBasic.NET to Java.
Chief Architect of The Integrator, OSG Tools, August 2001 - February 1999
The Integrator was a tool that harnessed the power of use cases. It allowed users to build a repository of use cases, actor descriptions, business rules, and test cases. The main features were ease of editing use cases, graphical modeling, automatic test case generation, link integrity, and web publishing.
It was entirely written in Java/Swing and I was responsible for all areas of design and development. The entire application was built around a sophisticated meta-model architecture that I designed and wrote which allowed us to focus on the domain objects. Everything worked off of the meta-model and it allowed us to create inventive features like test cases generated from use cases and an innovative text editor that used the domain to build itself. As chief architect, I was able to deliver immediate turnaround times on bug reports (always less than 24 hours).
Detail
  • Designed architecture for The Integrator product using Java.
  • Designed and coded a complete text editor with object back-end using Swing and JavaBeans.
  • Designed and coded XML object persistence framework and database using JAXP.
  • Designed framework to have GUI objects react to domain objects using a sophisticated meta-model architecture.
  • Designed extensions to JavaBeans for greater flexibility.
  • Responsible for selection of tools to use in development.
  • Designed and coded system for detecting multiple illegal copies in a network.
  • Coded unique obfuscation mechanism to protect code using a custom class loader instead of simply mangling names.
  • Responsible for all areas of development and design.
  • Designed and coded mechanism to publish use cases in HTML.
Consultant, Object Systems Group, February 1999-February 1998
I consulted at a large telecommunications firm and wrote a reporting framework that allowed reports to be designed using the VisualWorks GUI builder. The framework allowed me to quickly create new reports for the user. Later, I designed and built a bridge between Gemstone and a legacy persistence system. I wrote a demo for another client written in Java, Jess, and Oracle to prove that a rule-based system would be the best choice for their project requirements.
Detail
  • Designed and coded reporting framework for ATM telecommunications system built around existing GUI architecture in Smalltalk.
  • Designed and coded bridge between Gemstone and legacy telecommunications database.
  • Performance enhancements for large-scale telecommunications project.
Consultant, ObjectShare, Inc. (formerly ParcPlace-Digitalk, Inc.), February 1998 - October 1996
With barely two years of Smalltalk experience, I was hired as one of the youngest consultants at ParcPlace-Digitalk. I spent most of my time performance tuning Smalltalk applications, writing code to interface Smalltalk to external systems, and mentoring in object-oriented design. With only three months of experience, I was given a VisualWorks assignment at a major client who offered nothing but praise for my contribution. In fact, I was able to ramp up so quickly on the technology that I was fixing the persistence layer that was used to interface with Gemstone almost immediately. I later wrote a framework to fix the problems of the previous persistence layer.
Detail
  • Designed a persistency framework for use with VisualWorks and Gemstone.
  • Reengineered various subsystems using Wirfs-Brock methodology.
  • Performance tuned various subsystems of insurance claims system in Smalltalk and Sybase.
  • Responsible for Smalltalk connection to various C DLLs.
  • Mentored customer users on object-oriented analysis and design, Graphical User Interface design, and performance tuning in Smalltalk.
Software Engineer, Imonics Corporation, October 1996 - October 1995
I was hired as a junior Smalltalk developer to fix bugs and quickly was given the entire billing subsystem of a hospital application written in Smalltalk. I rewrote the billing subsystem because of poor performance and usability. To do this, I came up with a technique that allowed the mainframe developers to feel more comfortable in a GUI environment by making navigation and training easier. I also increased the performance by 400%. Later, I was given a buggy C++/Perl GUI builder application where I fixed several memory leaks and major architectural design flaws. While there, I mentored other junior developers in Smalltalk, C++, and Java.
Detail
  • Various bug fixes of health care billing system using Visual Smalltalk and Sybase.
  • Various bug fixes and speed improvements on rules-based expert system written in Smalltalk.
  • Redesigned cash posting subsystem in order to make processing faster and more user-friendly.
  • Designed GUI developer aids using Perl and C++/Motif/X Windows.
  • Mentored fellow team members in Visual Smalltalk, Java, and C++.
Programmer/Analyst, United States Fidelity and Guarantee, September 1995 - August 1994
Shortly after arriving, I embrace the challenge of getting Smalltalk and Framemaker to communicate for back-end report processing. The task had previously fallen on a seasoned Smalltalk consultant and two Ivy League graduates. It was deemed impossible. I was able to complete the task shortly after having it assigned to me, by exploiting a clever trick with the Windows API. Notable is the fact that I did not know Smalltalk, Framemaker, or Windows before taking this job. Later, I debugged and helped fix a problem with a custom C DLL that was used to communicate with the Sybase database. At every opportunity, I proved myself to be a valuable team player that persisted until the job was done.
Detail
  • Designed and coded print subsystem using Smalltalk and Wirfs-Brock design methodology.
  • Implemented parser for FrameMaker4 and MS Word documents.
  • Interfaced Visual Smalltalk with FrameMaker4 and MS Word using C.