|Ruby on Rails||6 yrs||Ruby 1.8.x & 1.9.x, Rails 1.1.x – 3.2.x|
|HTML||13 yrs||Haml (4 yrs), HTML5 used on recent projects|
|CSS||8 yrs||Sass/SCSS used on several projects, CSS3, Compass|
|jQuery||4 yrs||Prototype.js was used previously|
|TDD||4 yrs||Rspec, Shoulda, Capybara, Cucumber|
|RDBMS / SQL||9 yrs||PostgreSQL, MySQL, Oracle|
|MongoDB||2 yrs||Used on five recent projects|
|Linux||8 yrs||Ubuntu, CentOS, Redhat for deployments; OS X for development|
|VIM||3 yrs||Left TextMate for MacVIM, never looked back|
|Git, Github||4 yrs||There's just no going back to Subversion|
For Pat Deegan PhD & Associates, my most signficant contribution was a system for their customers—mental health clinics—for gaining insight into how the members of their organizations are using and benefiting from the RecoveryLibrary product via collection, aggregation, and graphing various statistical data. This was a critical component of the offering as it will be used by these clinics to demonstrate its value to their funding sources. Additionally, PDA will use it internally to hone their product.
For Impact Fantasy Sports, I was solely responsible for developing one of their most important features, the scoring of drafts. Due to the complexity and processing required, their offering is previously unattempted in the fantasy sports market. As such, considerable planning and testing was required to ensure fault tolerance, scalability, and throughput.
Rewrote CustomInk's Product Management System to be more flexible and usable. The legacy system had an inflexible schema and a very tedious interface. Numerous UX improvements were made over the old system resulting in a more intuitive and faster UI which enabled the Products Team to significantly reduce the amount of time needed to add new products. One of the more challenging aspects of this project was the requirement to maintain parity with the data in the legacy schema to allow for many integration points to be migrated piecemeal to the new API.
Previously, employees tasked with finding a viable printer to fulfill a customer's order had to manually search through an 80 page Excel workbook. This data was structured and given a CRUD interface including another UI to replace the workbook. These employees are now able to search for printers via certain attributes rather than visually scanning spreadsheets resulting in gains in efficiency and correctness. This project is a core service of the system that has allowed CustomInk to automate the majority of its orders.
This service was created to DRY up redundant code for financial transactions into a single system and abstract away vendor specific payment processing idiosyncrasies. My responsibilities involved integrating SecureNet by developing a new gateway for use in ActiveMerchant and adding ACH capabilities for Payflow. The system was also capable of throttling transactions to multiple gateways by setting percentage thresholds per gateway.
My contributions to this project were numerous. I rewrote the system used for ordering blank products from CustomInk's many suppliers which resulted in fewer errors and increased productivity. This large project that makes heavy use of AJAX often had significant performance problems. Through profiling and utilization of techniques like multi-threading I/O operations, SQL optimization, and preemptively caching expensive requests, I was able to save several man hours per day.
Primarily responsible for development of the Voodoo Analytics product, a front-end to Voodoo Lunchbox's analytics database.
Development, support, and maintenance of various Ruby on Rails applications.
As a member of the Operations Technology software development team, I built and maintained software in support of the company's ability to fulfill orders. We were expected to be very autonomous, managing and developing products from start to finish using agile development principles.
Built and maintained various PHP and Ruby on Rails applications. I introduced KCI to Ruby on Rails and iterative development. This was my first time using Ruby on Rails professionally. Other responsibilities included system administration for web servers, Apache, Bind/DNS, email servers, and client project websites.
Built web applications with PHP for clients and maintained apps developed before I was hired. Often had direct contact with clients for demos and requirements clarification.
Wrote various web applications in Perl. Assisted with some sysadmin tasks using KornShell on AIX machines. This was my first experience with *nix and web applications.