Programming is what I do. Ever since I was young I've loved technology.


Since 2003 I've worked as a professional programmer, and I've worked with a lot of different technologies.



                   




Experience


  1. Senior Software Developer
    Nudge/BuyPD — May 2014 to Present
  2. Director of Information Systems
    The Ready Project — Nov 2012 to May 2014

    Responsible for overseeing all internal IT projects from provisioning through deployment and ongoing operations. Developed cloud-backed solutions using Rackspace Cloud, Digital Ocean and Amazon Web Services; including Amazon Glacier. Developed internal and external facing applications for various business needs including the following:

    Subscription Management — Backend system for managing monthly subscriptions; including recurring order creation, referral tracking, customer notifications and shipment processing. (Ruby, MongoDB)
    Shopify Integration — Produced multiple systems to integrate back-office concerns with Shopify’s e-commerce platform; including inventory synchronization with outside suppliers. (Ruby)

  3. Contract Web Developer
    Oct 2011 to Mar 2013

    Worked with numerous clients to develop custom web solutions using Ruby on Rails and PHP.

    Ligonier Ministries — Developed back-end administration for Reformation Network using Ruby on Rails. Administered deployment environment for Ruby on Rails and Node.js application components.
    Arrowhead Dental — Refactored and optimized internal Ruby on Rails projects.
    Orabrush — Provided PHP back-end development for Oraclub beta phase.
    Panteao Productions — Built Ruby on Rails e-commerce and video streaming platform using Spree.

  4. Technical Leader
    Orabrush — Jun 2010 to Sep 2011

    Responsible for developing, improving and maintaining all web properties; including optimizing online commerce using Magento and building custom integration solutions for YouTube and Facebook. Developed an online retail store finder using Ruby on Rails to promote the company’s entry into retail distribution around the world. Maintained multi-tier server deployment using Nginx, Apache, and MySQL.

  5. Web Administrator
    New Orleans Baptist Theological Seminary — Jan 2009 - May 2010
  6. Web Developer
    Prima Supply — Mar 2008 - Jan 2009
  7. Web Developer
    Stewar & Associates — Dec 2006 - Oct 2007
  8. Director of Information Technology
    Oneida Baptist Institute — May 2006 - Dec 2006
  9. Webmaster
    The Southern Baptist Theological Seminary — Oct 2005 - May 2006
  10. Web Administrator
    New Orleans Baptist Theological Seminary — Nov 2003 - Sept 2005

Education


  1. Master of Divinity
    The Southern Baptist Theological Seminary — Enrolled
  2. BA Christian Ministry
    New Orleans Baptist Theological Seminary — May 2006

Open Source Projects


  • OData for Ruby

    Gems for interacting with OData services from Ruby.

  • Hypostasis

    Hypostasis is a project to provide multiple data model support on top of FoundationDB.

  • Renewable Objects

    Provides frozen by default objects for more Functional style in Ruby.

  • IDService

    A Ruby implementation of a distributable ID generator, similar to Twitter's Snowflake service.



Technology Expertise


I have worked with Ruby since 2006. I originally sought it out as a replacement for Perl, but eventually I started using Ruby on Rails for web applications. Since starting with Ruby I have chosen to make it a specialty of mine and it is now my primary programming language.

TDD
BDD

With beginning to use Ruby on Rails in 2007 I became acquainted with Test Driven Development and its cousin Behavior Driven Development. Since then TDD & BDD have become a defining aspect of my craft and an invaluable tool in producing high quality code.


FoundationDB is a technolgy I recently came across and have been experimenting with. It's a next generation NoSQL database solution with all the scalability of solutions like MongoDB or Cassandra, but built with full ACID transaction support and the ability to support many data models across a single cluster.

 

 



Favorite Presentations


Think twice, code once
Bill Chapman
MountainWest RubyConf 2013
Domain Driven Design and Hexagonal Architecture with Rails
Declan Whelan & Eric Roberts
RailsConf 2014
Advanced Ruby Class Design
Jim Weirich
RubyConf 2007


Copyright © 2014 — James Thompson