Welcome to my catch-all collection of personal pages. Don't expect a lot of ryhme or reason to the organization here; this is where I keep everything that isn't ready or appropriate for a book, paper, blog post, or even Usenet.

Obligatory Public Display of Narcissism

I have over twenty years of experience in a wide variety of software development roles, despite having a degree in chemical engineering. My job titles have ranged from software architect to global head of strategy, product manager to VP of engineering, and even, for my sins, have occasionally included the word "sales". Regardless of what's on my business card, I'm always hands-on building large distributed systems.

Much of my experience is in the financial services (clearing and settlement, risk analytics, market data, and automated trading), telecommunications (OSS/BSS), and broadcast video domains, although I've also done some projects in pharmaceuticals and manufacturing.

My understanding of both the business and technical sides of these domains has given me the opportunity to fill some hard-to-define roles. When my kids ask me what I do, the best response I've found is to say that I'm the equivalent of Larry Niven's Speaker-to-Animals .

Of course, the technical and business teams disagree on who are the animals.

I'm particularly interested in highly complex distributed systems. Many of the systems I've delivered include Service Oriented Architecture (SOA), Space Based Architecture, grid computing, intelligent agents, and autonomic systems. I've been doing cloud computing since long before it was cool.