Table of Contents
David has been doing software development for over 20 years. He's been using Java since 1998 and involved in using Open Source almost as long. David has focused on Web and Enterprise development for most of his career, and started working with the Spring Framework in 2006. He started working with Spring 2.0 towards the end of 2006 and really enjoy working with the Spring Framework. He really enjoys it because it not only saves time, but encourages better design and code reuse through loosely coupled components.
David started Spring by Example to post different examples he had been doing, and also to become involved again with Open Source projects. Spring by Example is a general resource for Spring and should ultimately save developers time.
Currently David works at VMware on the VMware vFabric Application Director project. It enables developers and organizations to deploy applications to the cloud by having a logical abstraction for software services and application topologies. This allows an application to be easily deployed multiple times to different environments.
Co-author of Spring In-depth, In Context, which is a free, but incomplete (stopped due to time constraints), online book for the Spring Framework.
Co-author of the validation chapter in Struts in Action: Building Web Applications with the Leading Java Framework, Manning Publications (November 2002).
Speaker at NY Java SIG in January 2013 presenting Deploying Spring Apps to Amazon EC2 and VMware vCloud .
Speaker at Skills Matter in London, December 2012 presenting Automated Provisioning of Spring Apps to EC2 & vCloud .
Speaker at SpringOne 2GX 2012 presenting Automated Provisioning of Spring Apps to EC2 & VMware vCloud .
Speaker at SpringOne Americas 2008 presenting Case Study: GWT & Comet Integration with the Spring Framework at NYSE .
Open Source Contributions
Architecture & Design
Scalable E-mail Framework with scheduling, retry process, template processing, and dynamic population processing
Keyword based E-mail Alert System for online articles
Scalable Publishing System with configurable publishing processes
Multi-threaded, multi-tier servers with custom thread pools and tcp/ip socket connections for a client entry prototype system.
JDBC, RMI, JavaMail, JMS, EJBs (Stateless, Session, Message Driven, Entity), RMI, JSPs, Servlets, Web Services, XML, JTA
Jetty 6.x, Tomcat 3.x/4.x/5.0/5.5/6.0/7.0.x, Spring dm Server, JBoss, BEA Weblogic Application Server 4.0/4.5/5.1/7.0
Oracle 8i/9i, DB2, MS SQL*Server 6.0/6.5/7.0, MySQL, PostgreSQL, MS Access, FoxPro
Open Source Frameworks
Spring Framework, Spring Security, Spring Data JPA, Spring Web Flow, Struts, GWT, Hibernate, Velocity Template Engine, Axis, OSGi
Open Source Projects
Ant, Maven, AspectJ, Dozer, Jakarta Commons BeanUtils, Jakarta Commons Betwixt, Jakarta Commons Collections, Jakarta Commons Digester, Jakarta Commons IO, Jakarta Commons Lang, Jakarta Commons Validator, Jakarta ORO, Jakarta POI, Jakarta Regexp, Tiles, Log4J, LOGBack, Xalan, Xerces, JUnit, HttpUnit, Cactus, XDoclet
Windows 2000 Server, Windows XP, Mac OS X, Solaris, Linux, Eclipse IDE
Lead Architect: Designing systems/frameworks, preparing projects and frameworks for developers on new projects, providing instruction and assistance to developers.
Ability to interact with Business Analysts, and Clients to gather requirements and implement.
Performance Enhancements: database performance, adding multi-threading, optimizing code.
Interaction with clients to define specifications, gather requirements, and communicate & resolve issues.
Documentation: Javadocs, Wiki based documentation for developers, technical specifications.
Interpreting specifications and requirement documents into working systems.
Ability to learn new technologies, investigate issues, resolve development issues.
Working with distributed team environments.