770 552 9394
670 Branch Valley
Ct.
Roswell, GA
30076-3003
OBJECTIVE:
A senior software
development position that allows me to continue to use my extensive real-world
experience of designing, building, and maintaining mission-critical software
applications with a focus on finishing each project in a timely manner with a
high level of quality, maintainability, and performance.
EDUCATION:
Georgia
Institute of Technology, Atlanta Georgia
B.A. Information
and Computer Science
Specialized in
Computer Systems and Data Communications
WORK
EXPERIENCE:
Senior engineer
involved in ongoing Metavante banking products and projects, with an area of
focus on timely delivery, quality, and performance.
Java, C++, XML,
XSLT, J2EE, Servlets, JSP, EJB, WebSphere 3.5.3, Twister, Gemstone, SecurID,
CSAPI (checkfree), ISAPI, SQL, Oracle, DB2, NT/Win2000, Solaris, AIX
Charter One Bank
Designed and built
with a group of 4 to 6 people a web retail banking application that offers
account statements, account transfer, OFX download, transaction history,
mortgage history, online enrollment, checkfree bill payment, checkfree bill
presentment, secure messaging, and many other features. This application is successfully supporting
over 250,000 active users and has formed the base for the basis for the
Metavante retail banking product.
Went into full
production in December 2000. Have
provided regular ongoing support since then in terms of small bug fixes and
enhancements as well as larger scale performance analysis and improvements.
Brown
Brothers-Harriman (BBH)
Did the technical
side of the BBH Estimation/GAP Analysis. Documented the technical effort
required to satisfy gaps, and provided detailed estimates that were made with
input from the product team. Ultimately
we did not win this deal because we learned the customer's abudget was less
even than the base license fee, but I was told it was the most thorough
estimation process we had done to date.
Refactored eCMS DB
layer
In the process of
gaining an understanding of the eCMS code for BBH, I discovered several quality
and reliability issues in the underlying database code that could not be
addressed with a couple of specific bug fixes but were rather an overall
implementation issue in the shared lower level database code. With the
permission of the eCMS team, I reimplemented the underlying DB code to improve
quality, reliabilty, and maintainability.
I also plugged in a flexible/configurable logging framework we had
created for Consumer so that we could see in a controllable way what was
happening in the DB code realtime.
US Bank performance
tests
We were requested
to do a "performance test" of the eCMS product on
AIX/Websphere/DB2. The folks that
promised the test did not realize that since e-CMS is developed and tested on
Sun/NT/Gemstone/ServletExec/Oracle, that in fact this performance test included
a port phase, with the most significant porting being from Oracle to DB2. I assisted some in the
"quick-n-dirty" port of just the parts of the code we needed to test,
but mostly focused one the performance test -- prepared a LoadRunner-based test
suite to test the reports, gathered test data, then went to Boston with an eCMS
architect to the IBM Solutions Partnership center for a week to get the code
working, run the performance tests, and gather detailed results data, which was
presented to the prospect.
In parallel, as I
was observing the DB2 compatibility issues, I got permission from the retail
product development manager to make updates to the consumer code as I saw fit
to eliminate compatibility issues as I came across them, and made quite a few
detail and framework changes to the Consumer code to eliminate
database-specific code.
e-CMS Competency
Through the BBH
efforts, the US Bank efforts, the UCB improvements, and rearchitecting the
database layer for e-CMS, I have become fairly competent with the inner
workings of the Metavante eCMS code base.
Help in winning
Metavante Deal
(Here I’m talking
about the successful effort to win Metavante as a licensee back in April 2001
when Metavante was a Brokat prospect)
Designed, ran and
documented extensive performance tests on the consumer product for the
Metavante deal.
Installed the
consumer product onsite in Milwaukee and demonstrated the ability to quickly
write "handlers" to interface to proprietary systems.
These two efforts
were cited by the sales/marketing team after we closed the deal as critical
steps to winning the business.
UCB/Sanwa
UCB detected a
performance problem in their reporting system.
I analyzed the specific set of product code related to reporting and
with LoadRunner and other measurement tools narrowed the bulk of the problem
down to the design of one product class.
I rewrote this class to use a different approach, and observed an order
of magnitude increase in database performance which translated on the UCB
combined system to what they've measured as a 60% performance improvement -
i.e. more than double and approaching triple the original speed.
Also helped in the
sales process by estimating effort for extending the consumer product to
interface with Sanwa/UCB internal systems.
I am unsure if they have signed up for the consumer product yet or not.
Charter One Bank
Small Business
Implemented/enhanced
several small business transactions for Charter One during the rollout of the
small business delivery for Charter One.
Also helped with
some framework issues related to a new menu and navigation system that was
created for the small business delivery.
UBOC
The UBOC project
required a C++ accessor and some client coding to support the RSA SecurID
card. We had part of the accessor from
a year or so ago, but it had to be ported to Solaris, and had to use a
different c API from RSA. I ported the
accessor and wrote some client code to aid in its integration, and consulted
with the UBOC team during the integration stage to help it to completion.
Metavante Consumer
Delivery
Implemented QIF/CSV
export so users can download to older PFMs and spreadsheets.
Enhanced DTD
handling for Metavante delivery.
Metavante has made proprietary extensions to the OFX standard to allow
some desired features. the consumer
code runs off of a DTD, and the Metavante extensions required some framework
enhancement to be able to handle the customized items in the DTD.
Button Maker
Anytime someone
needed a set of buttons for a site with a certain color or set of test, the web
design team would spend a couple of solid days in a manual design tool to
create the 60 or 70 buttons. In
addition, ongoing requests for "hey can you make me this button"
anytime a developer made a new screen were draining their time and requiring
extra coordination for the developers.
With a suggestion
made by Mark Thormahlen, I used the Batik SVG toolkit to write a tool that will
read an XML file of text and some attributes and spit out an entire set of
buttons for a website in a few seconds.
The time savings in initial and ongoing site maintenance is significant.
Consumer Banking
Performance tests
on Consumer after EJB conversion. After
Keith's team completed the porting of the Consumer code from Twister to EJB so
it can run on any platform, I was asked to look at the performance of the EJB
version as compared to the Twister/RDO version. The first take found a couple of performance issues that were small
in size but significant in effect (10x slower than the Twister version). With testing I was able to find these issues
and suggest changes. I then was able to
retest the fixes to confirm that the EJB version was performing similarly or
somewhat slower than the Twister/RDO version, but nothing dramatically slower
considering the increased flexibility.
OFX Certification
for Intuit.
I spent a month or
so deep in the Intuit OFX certification process for our OFX server which is the
certification required before you can bring live customers online with Quicken
OFX Direct Connect. We passed all
certification tests in the pre-FIAT phase which amounted to running a test
tool, finding problems, fixing them, submitting logs to Intuit, and repeating
until we passed the 800 or so different tests.
Harbinger Net
Services (HNS), Harbinger, Peregrine
Senior Software
Engineer, Member Technical Staff (MTS)
Senior Engineer
designing and developing complex EDI software for java, windows, and the web as
part of a team of 5 or 6 people. Focus
on quality, maintainability, and performance.
Java, C++, AWT,
XIPC, EDI, MFC, SQL, Sybase, NT, HP-UX, Solaris
SoftCom Systems,
Inc., Atlanta Georgia
Consulting
Systems Engineer
Provide technical
consulting to the Stratus Europe / Middle-East / Africa / Australia / New
Zealand Line Of Business (EMEA/ANZ LOB) for Network Express and all related
"SoftCom" software products. Until very recently, I was the sole
source for this type of consulting. For the first year-and-a-half of this
assignment, I was based in and lived in London, England, with frequent travel
worldwide. Finished this assignment based back in Atlanta, Georgia but
continued the frequent worldwide travel associcated with this assignment. We
since allocated and trained one other person based in Paris supporting the
EMEA/ANZ LOB with these efforts.
Specific
Accomplishments
SoftCom Systems
Inc., Atlanta Georgia (then called Scientific Software)
Software
Engineer
c, 68000 assembly,
X.25, SDLC, Bisync, SNA LU0/LU2/3270/LU6.2, Stratus VOS, Stratus FTX
Designed,
implemented, tested, and supported X.25, SDLC, and Bisync protocols in c and
68000 assembly language for UCOMM adapter cards running on Stratus
fault-tolerant minicomputers. Installed and supported complete custom systems
using our Network Express product with these and other protocols at customer
sites. Wrote line handlers for the Network Express product and made performance
and functional enhancements for Network Express. Wrote a UNIX Kernel-resident
device driver to duplicate Stratus VOS MPX_GCOMM hardware drivers, allowing
instant portability of all SSI UCOMM firmware to FTX. During this period as a
Software Engineer I was regularly and frequently involved as a technical
representative in front of customers on sales calls and meetings.
Here, I always had
a focus on the actual end-user implementations and paid constant attention to
the related sales and customer issues that came up both before and after the
sale. Despite the heavy technical focus, almost all parts of this job involved
significant (and increasing) end-user contact both as prospect and as customer.
This long-term, in-depth, top-to-bottom involvement with the technology and the
business process made me interested in as well as appropriate for my current
position.
Spectralogic
Inc., Atlanta Georgia
Software
Engineer
c, 80xx assembly
Implemented
software in c that emulated a heart monitoring device. The program was designed
to assist users of the machine in training. Also performed other tasks such as
designing and coding an interface from a pc-based health care system to its
database on an HP-3000 minicomputer.
The Computer
Group, Columbia, South Carolina
PC Training,
Installation, Support, Repair
Novell, PC
Hardware, ethernet, arcnet
Worked as part of a
6-person company that provided PC sales, service, networks, and training among
other things. I installed LANs, assembled and repaired PCs, helped sell
systems, and provided support for all of our work.
Software
Solutions, Columbia South Carolina
Software
Engineer
Microsoft BASIC,
Novell
With my supervisor,
I designed and programmed two custom business management systems on IBM PCs
using Novell Netware. Compiled BASIC was used as the language. The systems
automated all phases of the clients' businesses including order processing,
inventory tracking, purchase orders, invoicing, and all related reports.