I'm a contract software developer based in Denver, CO, with 6 years of experience with Ruby, Rails, JS and React. Previously, I worked as a database analyst and software QA-er for a mid-sized e-commerce company. I've long had a keen interest in business, the intersection of business and technology, and using software to create value.

I work with both new and existing projects, using a variety of tools, and taking care to write code that is easy to maintain and pleasant to use. I've worked for clients in diverse industries, including: manufacturing, real estate, education, social media, entertainment, e-commerce, mental health, and academia.

I'm open to contract work, sub-contracting, or part-time regular work. If you have development needs, drop me a line and we can see if it would be a good fit. If it's not, or if I don't have the availability to take on a new project, chances are I can put you in touch with someone who can help.



Some common elements: Rails versions from 2 - 5, either PostgreSQL or MySQL, jQuery, ReactJS, either Minitest or RSpec, Capybara, and in most cases, a customized version of Bootstrap.

In addition to the projects below, I've been doing some short engagements with various clients needing a few weeks of work to fix some bugs or add some features that have been on their to-do lists. I've also been tutoring newer programmers, both through the Firehose Project as well as independently for those who either want to learn more about how their applications work or who are newer programmers building applications to test a business idea.

Greenfield projects

CACS Risk Assessment Tool (Jan 2017 - present), for a mental health practice
Product: Mobile-friendly platform for mental health professionals to aid in preforming patient risk assessments and recommending appropriate resources and follow-up.
Responsibilities: All architecture and development, incorporating brand images and colors from designer, working with founders to refine product design, and working within unique requirements due to liability and confidentiality concerns. It's only open to professionals in the mental health field, but the landing page contains a demo video if you want to see how it works.

NoCurve Analytics (beta testing phase, work ongoing as time allows), for myself (side project)
Product: E-commerce analytics dashboard using interactive charts (Highcharts) and tables to visualize various financial and marketing metrics.
Responsibilities: All architecture, development and design. Still in the pre-launch stage, but the app can be run with demo data, or if you're a Shopify merchant, you can try it out with store data. https://nocurveanalytics.com/begin_demo

unnamed project (Jan 2018 - Mar 2018), for an individual client
Product: Single-page app for importing content, then organizing, tagging, and exporting it
Responsibilities: Design and development according to well-defined specs.

name TBD (Aug 2016 - Feb 2018), for a social media content marketing startup
Product: Fully-responsive MVP application to help test an improved idea in a relatively new space.
Responsibilities: All architecture and development. Working with founders to refine product design and requirements to arrive at a true minimum feature set, working with designers to integrate brand elements.

name witheld (Sept 2014 - Apr 2015), for an opinion measurement and analysis startup
Product: Survey creation, administration, and results analysis application
Responsibilities: Making architectural decisions, developing core functionality (including survey results analysis and display tools), working alongside another Rails developer and a UI/UX firm to bring it all to life, and being on hand for staged launches and live demos.

Work done on existing projects

Apr 2018 – present
Client: Regional residential real estate valuation and report generation company
Product: Valuation application that draws on its extensive database of property comps to value properties using a variety of measures, and generates reports of its finding for each property. Large datasets and complex operations make performance a key concern.
Responsibilities: Performance improvements, bug fixes, new features, upgrading the applicatin from Rails 3 to Rails 5, and responsive HTML/CSS improvements.

Mar 2016 – Oct 2018
Client: Six-sigma engineering quality control company
Product: QC app that allows users to track their production processes and record manufacturing quality issues.
Responsibilities: Bug fixes, new features, responsive HTML/CSS improvements, and assissting developers with troubleshooting issues with unusual / unorthodox legacy code.

Jun 2016 – Jan 2018
Client: Specialty email design, management, and delivery company
Product: An email templating and contact management application that had been on a development hiatus for the better part of a year.
Responsibilities: Bug fixes, new features, and building HTML/CSS email templates from PDF proofs.

November 2013 – October 2015
Client: 200+ employee education services company
Product: Mature application that handles the company's ERP and CRM needs and provided the main point of interaction for customers in terms of managing their services and tracking their results and progress.
Responsibilities: Designing and implementing features based on business requirements and design patterns currently in place, writing and maintaining tests, refactoring application and test code, identifying and fixing bugs.

August 2014 – December 2014, July 2015 – November 2015
Client: Large entertainment company and venue
Product: An application with customer-facing event and ticketing functionality and internal CMS and ERP functionality.
Responsibilities: Working with another Rails dev to take over a botched upgrade attempt, upgrading application from Rails 2.3 to 3.2 (as an intermediate step on the path to upgrading to 4.1), some initial server configuration, implementing features, identifying bugs and implementing fixes, and refactoring and improving test coverage where appropriate.

Experience with...

  • Best practices for creating understandable, reusable, and maintainable code
  • Always being mindful of end users' needs and expectations
  • Advanced ActiveRecord
  • Extracting objects from the model layer, avoiding using models as catch-alls
  • Most of the standard Rails testing tools and strategies
  • Opportunistic (and occasionally planned) refactoring
  • jQuery, AJAX, ReactJS (and some CoffeeScript) to enhance user experience.
  • MySQL, PostgreSQL, and relational theory and design
  • Responsive layouts and testing / troubleshooting on mobile devices
  • Standard Git team-oriented workflows, continuous integration, and various agile tools and practices
  • Miscellaneous tools (in no particular order, with varying levels of familiarity): Github, Pivotal Tracker, Bootstrap, various small JS plugins, Mini-profiler, Highcharts, Mocha, ThinkingSphinx, Code Climate, RailsAdmin, various CI tools, Unicorn, Passenger, Kaminari, VCR, Zeus, Rapidfire, ChartJS.