I am a software developer and have filled most roles on the software development team. Today, I spend my time researching and consulting on the technologies, trends, and market dynamics surrounding software development and architecture. A good share of my time has been spent researching and applying patterns that help increase architectural modularity.

In 2002, I authored Java Design: Objects, UML, and Process, published by Addison-Wesley. I also authored a chapter of the No Fluff Just Stuff 2006 Anthology. Java Application Architecture: Modularity Patterns with Examples Using OSGi is my second full book. I created the open source utility JarAnalyzer, which help teams manage the dependencies between Java modules. I regularly speak at conferences and blog on topics related to software development, architecture, and modularity.

Visit my blog.