Motista.com
Senior Ruby on Rails Developer
May 2012 - Current
After 5 years of freelance I took a full-time job with Motista. In this year I've moved Motista's app from a languishing Rails 2.x app heavy in technical debt to a much more agile Rails 3.2 app ready just in time for whatever's next in a company that is now entering a period of rapidly accelerated growth.
- Narrowly avoiding the "big rewrite", I dug in deep, extensively refactoring and re-writing in the course of delivering several key new features
- Upgraded legacy application from Rails 2.3 to Rails 3.2
- Extensive re-factoring and re-writing towards better use of convention and loose-coupling of layers
- Developed a highly customized HighCharts implementation to replace the existing AMCharts
- Collapsed a full suite of legacy inline and server generated JS snippets into a cohesive and decoupled set of Coffeescript/Javascript "classes"
- Organized and managed workflow for our 3 "off-shore" / remote developers
#rubyonrails
#rails3-upgrade
#refactor
#highcharts
#angular.js
#coffeescript
#svg
CommissionMgr Pro
Best-of-breed commissions accounting application for insurance brokerages.
September 2010 - April 2012
Client wanted to extract their own commission accounting process currently facilitated by a Delphi-based desktop application into a web application which they could market to other brokerages. An insurance brokerage industry leader, they have the clout and resources to market and support a software-as-service application which would automate a manual and often error prone process. The automation of this process brings better accountability from the insurance carriers to the brokerage promising recovery of otherwise missed commission payments.
In arriving at the best implementation a couple of routes were explored beginning with full ExtJS-based single page Javascript app and ending-up with a more conventional Rails 3 application with extensive reliance and customization of the jQuery Datatables plugin and numerous mature Ruby Gems. The resulting implementation is elegant, flexible and ready for market.
- Exploration and optimization of existing business processes, leveraging the advantages of web technologies to more directly inform and involve the sales agents in the commissions auditing process.
- Full record change auditing and role-based authorization
- Employed a variety of very helpful Ruby Gems: authlogic, cancan, acts_as_audited, simple_form, haml, sass, wicked_pdf, simple-navigation, high_voltage, json_builder
#rubyonrails
#javascript
#jquery
#coffeescript
#datatables
#sqlserver
#extjs
#agile
ParentHelp123 - WithinReach, WA
Bringing public programs within reach to low-income parents in Washington state.
September 2006 - January 2010
This project began as a Rails 1.1 app which I was hired to bring up to Rails 2.0 standards. From there a much larger project was kicked-off which I was lead developer on for a year and a half. The ParentHelp123 product leads low-income parent clients through an extensive household, income and life situation interview which results in completed PDF forms which are submitted to the state of Washington to apply for various social programs. The resulting forms total over 20 pages in length and the user-friendly interview process facilitated by the application greatly ease the application process to these programs for clients. The program is funded by both the Gates Foundation and Paul Allen and is promoted extensively state-wide affecting a chartable increase in enrollment to otherwise under-utilized state programs.
This project included four separate Rails applications: the interview app, an admin app (now merged with the main application), the ResourceFinder app used locating nearby parent resources and a Radiant CMS based front-end site. The entire project was eventually migrated to a local Seattle-based team on which I was engaged as consultant to help complete the latest production version of the application which is now in Rails 3.
- Design and implementation of a new business process for managing generated applications for clients, including both business process consultation and the implementation of the associated application to facilitate and support this process
- Developed product, including extensive re-writing and re-factoring, from existing immature Rails 1.1 application into a robust Rails 3.0 application
- Develop a the new ResourceFinder application based on existing data from state systems integrated with Google Maps
- Generation of form-filled PDF application files
- Abstracted the handling of a "step-by-step" interview wizard complete with validations into an very flexible open source Rails plugin (see restful_workflow)
- Extensive customization and extension of Radiant CMS for front-end website
- Worked with UberMind, LLC as member of six person team in a strict Agile development process including daily stand-ups and bi-weekly Sprint reviews
#rubyonrails
#javascript
#jquery
#coffeescript
#radiantcms
#googlemaps
#agile
MexConnect.com
The leading online resource for Americans and Canadians retiring to Mexico.
April 2009 - January 2011
This project began with the objectives of: bring existing site and content consisting of over 30k of static HTML pages into a proper content management system, and two, integrate ad serving to better track and monetize site.
- Assembled and managed along Agile lines a team of 3 other developers
- Conversion of 30k static HTMl pages into a dynamic and not-looking-back ad server monotized site. Leading website for those living and retiring to Mexico from elsewhere intends to stay that way.
- Development of a sophisticated content management system in Rails
- Development of a ad hoc content conversion tool using Rails, ExtJS and Hpricot
#agile
#projectmanagement
#contentconversion
#adrevenue
#cms
#rubyonrails
#openx
#javascript
#prototypejs
#lowprojs
#googlemaps
#hpricot
#extjs
Creative Coast Initiative
Bringing Savannah, Georgia into the tech spotlight.
March 2009 - July 2009
- Re-factored and improved custom CMS design and architecture
- Integrate many new features including dynamically generated graphs through API data
#cms
#rubyonrails
#javascript
#prototypejs
#lowprojs
#api
#googlemaps
#projectmanagement
Ko's Journey - Imagine Education
Math is an adventure, this is not your usual middle-school math education.
2007 - Current (on-going consultation)
- Assist in conception and design of online middle-school math game
- Integrated Rails application with Flash app to make a cohesive and rich game experience
- Implemented front-end marketing, sign-up and game state management site in Rails
- Implemented test and assessment component of Flash-based game
#rubyonrails
#javascript
#actionscript
#flash
#gamedevelopment
#gamedesign
#projectmanagement
#agile
GoodGift - AffinityXM
Better gift giving
October 2010 - February 2011
A Facebook app to bring together giving to a cause for any given gift occasion.
#facebookapp
#graphapi
#rubyonrails
#javascript
#jquery
#agile
#projectmanagement
Essentials
- Agile Project Management
- Ruby, Rails (of course)
- Git
- Javascript
- jQuery
Likes
- Beautiful code
- Simplfying code
- The latest Rails 3 stack
- HTML 5
- HAML & SASS
- Spine.js
- Angular.js and Ember.js
- Dust.js
- Node.js
- Sinatra
- SublimeText2 (!)
I know well, but don't savor
- Legacy Rails 1.x or 2.x apps
- Upgrading Rails 2.x apps to Rails 3.x
- Prototype.js (you had your day)
- jQuery Datatables
- Ext.JS
I've had the privelage of attending the following conferences:
- RailsConf Portland 2013
- Mountain.rb 2010
- RailsConf 2010
- RailsConf 2008 (lightening talk on restful_workflow)
- RailsConf 2007
BA Computer Science, Business Emphasis
1993-1997 Seattle Pacific University
NOTE: This is currently incomplete, I have one quarter of classes to complete via coorespondence for a degree in the current academic year due to a final two courses which I didn't re-take in 1997.