Appendix B. Author Bios

Table of Contents

B.1. David Winterfeldt
Technical Expertise
Sites & Blogs
Contact Info

B.1. David Winterfeldt


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.

David is also a committer on Struts and Commons Validator, but is no longer active on either. He was also the creator of Commons Validator.

Technical Expertise

  • Publications

  • Conference Speaker

  • Open Source Contributions

  • Architecture & Design

    • Struts Validator & Commons Validator with matching client side JavaScript validation

    • 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.

  • Programming Languages

    • Java 1.0/1.1.x/1.2.x/1.3.x/1.4.x/1.5/1.6, Perl, JavaScript, SQL, PL/SQL

  • Java EE

    • JDBC, RMI, JavaMail, JMS, EJBs (Stateless, Session, Message Driven, Entity), RMI, JSPs, Servlets, Web Services, XML, JTA

  • Application Servers

    • Jetty 6.x, Tomcat 3.x/4.x/5.0/5.5/6.0, Spring dm Server, JBoss, BEA Weblogic Application Server 4.0/4.5/5.1/7.0

  • Databases

    • 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 Web Flow, Spring Web Services, Struts, GWT, Hibernate, Velocity Template Engine, Axis, OSGi

  • Open Source Projects

    • Ant, Maven, AspectJ, 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

  • Miscellaneous

    • 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.

Contact Info