Broadly experienced, hands-on Developer and Architect with a strong track record over the full product life-cycle, from
inception and design through implementation, deployment and operations. Highly proficient in Agile development, rapid
prototyping, deployment cloud infrastructure, distributed and service based systems, monitoring, and performance tuning.
Develops and maintains deep understanding of leading edge technologies, particularly within the Open-Source
- Java, Python, C, Perl
- Oracle, PostgreSQL, MySQL, Informix, Sybase, SQLite
- Emacs, Eclipse, Ant, Maven, CVS, SVN, Git
- MQSeries, SonicMQ, RabbitMQ, Qpid, ActiveMQ, SQS
- SOAP, XML-RCP, REST
- Spring, Django
- EC2, Hadoop
- Linux, BSD, Solaris, HP/UX, AIX, most major Unixes
| Perigee Software, Inc. ||
| Owner, President, and Principal Consultant ||July 2012 to Present
Provided software consulting and custom development for third parties. Clients include:
| Vertex || |
| Independent Consultant ||July 2012 to Jan 2013
- Implemented prototype internal data management tool in support of their Vertex Enterprise product line.
Front end was implemented in Flex with the backend using Spring, Spring-WS, and MyBatis.
| Navteq ||
| Lead Architect ||July 2011 to March 2012
- Along with other members of the Architecture team, designed and built Dempsy, an actor-like scalable
distributed event processing framework, recently open-sourced by Nokia/Navteq.
- Implemented distributed monitoring subsystem for Dempsy using Yammer Metrics and Graphite.
- Reimplemented core Navteq traffic processing applications on top of the Dempsy framework.
- Helped set the partner integration services direction, including API design of RESTFul interfaces for client
access to internal service, individual services using Spring and Mule and deploying an authentication and access
control framework using Sonoa ServiceNet along with a custom LDAP schema.
- Reworked Search internals to add support for multiple search servers, including Solr, partially in support of
- Led design and development of service oriented architecture, centered on Mule ESB and SonicMQ for next
generation e-commerce platform, integrating both COTS components such as Sterling Order Management,
Enfinity, Vertex, and ISD as well as in house developed components.
- Participated in the design and implementation of a demand side ad platform, using an array of technologies
including Java, Python, Hadoop, RabbitMQ, and memcached and deploying to Amazon EC2.
- Designed and implemented cluster monitoring and management system, using Zenos.
- Built analytics data layer using SQLAlchemy and PostgreSQL.
- Performed scale-out testing and optimization of high speed event based data capture subsystem, responsible
for capturing ad impressions and tracking pixels.
| GSI Commerce ||
| Principal Software Engineer and Architect ||2002 to 2008
- Maintained and enhanced e-commerce platform for a major e-commerce outsource provider.
- Responsible for architectural governance, design, and leadership for a wide range of projects with emphasis
on those involving the shopping cart, third party integrations, internal inter-system integrations, security,
scalability, and internal tools suites.
- Provided technical assistance and guidance to the business, including technical direction, project cost
estimation, and evaluation of third party technologies.
- Worked with launch teams and partners to help define solutions for new partners unique needs, while folding
them into a unified underlying platform.
- Led several performance and scaling related projects including distributed caching, memory reduction, and Q4
- Led, designed, and/or implemented a range of third party payment schemes including Google Checkout, various
Gift Cards, ACH, PayPal, Bill Me Later, and other similar systems.
- Primary application developer responsible for security, including PCI compliance for a level 1 service provider.
This effort included integration with FIPS-140 hardware security devices.
- Evaluated and led the implementation of new technology initiatives, including new platforms, application
servers, and application frameworks.
- Responsible for a number of internationalization project from data encoding schemes to selecting European
| Trintech ||
| Senior Software Developer ||2000 to 2002
- Built and maintained various banking and e-commerce applications, in particular eIssuer, an electronic wallet.
- Implemented extensions to eIssuer to support payment via Secure Electronic Transaction (SET), a public key
infrastructure (PKI) for credit card transactions.
- Application architect and web-tier development lead for the eIssuer product. Researched new features and
technologies. Worked closely with Product Marketing and Management in establishing product direction and
providing technical expertise. Prototyped enhancements using a range of technologies including Servlets, JSP,
EJB, RMI, and XML.
- Major areas of responsibility included: portability across a range of J2EE platforms including Tomcat, JRun,
WebSphere, Weblogic, and iPlanet, cardholder data security including design and implementation of schemes
for encryption of persistent data and key management, and internationalization (I18N) of a product sold in a
variety of non-western locales, including CJK support.
- Participated in re-architecting an website, that allowed users to shop and apply for individual health insurance
plans, from a proprietary solution to a web application based on Servlets and JSPs.
- Designed and implemented a data driven form processing package used for validating, persisting, and
transforming data on on complex forms, such as insurance applications.
- Maintained and extended the Enterprise Performance Management (EPM) product suite, which was a
performance monitoring application for Unix and NT servers, RDBMS servers, networks and applications.
- Extended the EPM core architecture, including re-engineering to allow the ad hoc loading of data collection
routines, thus providing for easier addition of new monitors better modularity and independent testing of
- Ported EPM to new platforms, eventually supporting 27 Unix variations.
- Supported and maintained EPM source base, serving as primary resource for issues involving portability, linking,
builds, shared libraries, interprocess communication, networking, and performance tuning.
- Built and maintained a reusable library of shared components which originated in EPM and were used by
other products as part of the POEMS architecture to provide system independent abstractions of common OS
- Designed and implemented, in Perl, a distributed auto-build system that built and tested EPM across
all supported platforms daily and reported any failures to preserve portability and to support continuous
integration among several distributed development teams.
- Responsible for database design and application interactions for Feith Document Database, a document imaging
system, which supported multiple versions of multiple RDBMS including Oracle, Informix, and Sybase.
- Wrote a series of test and support utilities for EasyJuke, a robotic disk management storage solution, in
TCL/TK that used TCL extensions written in C.
- Helped port and certify AT&T and NCR ports of Network for Unix, a Novel licensed Unix reimplementation
| Step-Saver Data Systems ||
| Support Analyst ||1987 to 1989
- Maintained modules for paper and electronic insurance claim submission to Medicare, Blue Shield and Medicaid
a number of states.
- Integrated various third party hardware and software products into Step-Saver’s turnkey medial billing systems.
- Master of Science in Computer Science. Independent study project Design and
Implementation of a Tuple-Space Server for Java.
University of Pennsylvania
- Bachelor of Arts in Astronomy and Astrophysics.
Member Usenix, ACM, and the IEEE Computer Society. Active in Philadelphia Area Java Users’ Group, Philadelphia Area
Scala Enthusiasts, and Conshohocken Ruby User Group.