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 intellectually-dishonest 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.