I'm grateful that in my career to date I've had the chance to do a lot of interesting and
challenging things. And every time out I learn a little bit more. I've been a code monkey,
an architect, a pro-from-Dover consultant, a CIO, a project manager, and nearly everything
else you can be in software development. I've written parsers, compilers, device drivers,
and lots of business-applications code. I've written in C, C++, Java, JEE, Oracle-ecosystem,
Microsoft-ecosystem, Python, PHP, Ruby on Rails, Node.js, and even a couple of mainframe-flavored
I've architected numerous systems from the modest to the 5-nines enterprise-class system. More to the point,
nearly every system I architected I also got to lead the building of, which has done a whole
lot to keep my architectures honest. Hand-waving has a way of coming back to haunt you in such
circumstances, and I'm glad I've always had organic forces at work to keep me from grabbing
easy but insufficient answers off the stack.
I've designed, built, tuned, assessed, and refocused software delivery organizations, from
individual teams up to entire shops. I've got a very pragmatic bent in such engagements, and
I like to focus on building what's needed in the near and middle-term, avoiding the temptation
to overengineer unnecessarily.
My resume has more specifics. Feel free to contact me if
you've got a horribly exciting challenge that you think I can help with.