What I do

I am a classically trained Software Engineer with a degree in Computer Science who practices the art of Software Craftsmanship. The bulk of my full-stack experience is in Ruby on Rails and React / Redux. I value working with forward-thinking companies who value cooperation and are driven to make a difference in the world. I work on a remote, part-time, freelance arrangement with distributed teams using agile methodologies and collaborative tools.

Increasingly, my interest is moving towards progressive, reactive applications built using serverless technologies such as AWS Lambda, Kinesis, DynamoDB, Elasticsearch, and Websockets. I value balancing the old and the new — using decades old insights from architecting J2EE enterprise applications, in conjunction with new tools and paradigms developed for the modern unit of compute. I believe that users expect more today from web and mobile applications than they did five years ago, which requires a paradigm shift in the way we develop software.

Experience

Education and Employment

Experience

Technologies

How I do what I do

Technologies

Blog

My professional opinion

Blog

Find me around the interwebs

Why I do what I do

I am a web-dev software engineer. I like what I do, very much. I like creating, learning, and problem-solving. I like taking an idea or feature and (systematically and conscientiously) making that idea a (digital) reality. I like deconstructing nouns into their component parts (their data), storing them, retrieving them as needed, then re-assembling them according to governing constraints and aesthetics. I like creating things that people use, and creating these things with the users in mind.

I like to think that what I am able to create can make a difference in people's lives, if I let it. At this point in my life, though, I am re-realizing that my potentiality for affect is inextricably linked with the domain in which I am creating. If I am solving a problem that does not directly help others, to what end am I spending my time and efforts? Lately, I have been struggling to answer that question to my own satisfaction.

I don't have that answer, yet, and perhaps that's because the question is not really technical in nature, but perhaps a part of humanity ourselves. Perhaps by creating technology that fades into the background and helps automate parts of our everyday lives, we can instead spend more time with the people we care about, doing the things we care about doing. Perhaps that is the next wave of the technological revolution -- a shift back to the analog and human-scale. It's all about relationships.