John Foley

Software Engineer

I specialize in building large-scale Ruby on Rails web applications. I strive to produce elegant, well-tested, and maintainable code that delights the end-user.

Email:
john@thefol.io
Phone:
(720)-352-3516
Github:
jfoley
Website:
thefol.io
Twitter:
@jw_foley
Skype:
john.w.foley

Technical Skills

Languages

  • Ruby
  • Javascript
  • Coffeescript
  • Python
  • C++
  • C#

Frameworks and Tools

  • Rails
  • Git
  • Capistrano
  • Chef
  • AWS Tools
  • RSpec
  • Jasmine

Systems Administration

  • Nginx
  • Apache
  • Unicorn
  • Mongrel
  • MySQL

Operating Systems

  • OSX
  • Linux(Ubuntu)
  • Windows

Experience

Victors & Spoils Boulder, CO

Software Engineer
August 2011 - Present
  • Upgraded site from Rails 3 to the Rails 3.1 asset pipeline seamlessly for end-users
  • Wrote Chef and Capistrano scripts to automate server build and deploy processes
  • Designed and implemented a system to rank users based on their activity in the system
  • Refined several major features based on stakeholder feedback
  • Instituted Agile development practices
  • Performed the duties of a lead engineer during transitional period

Victors & Spoils Boulder, CO

Junior Software Engineer
June 2011 - August 2011
  • Added test suite to existing Rails application, and in the process found and fixed several subtle bugs
  • Assisted in design and implementation of Fan Machine a spin-off Facebook application that integrates with the main V&S website

Tensentric Boulder, CO

Software Engineering Intern
May 2010 - May 2011
  • Designed and implemented custom internal web application using Ruby on Rails for project planning and time tracking
  • Installed, configured and adminstered all foundation software: Ubuntu Server, Apache, Passenger and MySQL
  • All software was tested and validated according to medical device software standards

Covidien Boulder, CO

Software Engineering Intern
March 2009 - January 2010
  • Designed and implemented a C# GUI application for Windows Tablet Edition to collect streaming data from an electrosurgical generator
  • Performed requirements analysis and refined the application based on stakeholder feedback
  • Assisted in writing unit tests for faulty translations in the generator's software

Con-X Boulder, CO and Tokyo

Software Engineering Intern
May 2008 - February 2009
  • Assisted in implementation of platform for remote mobile device configuration
  • Programmed, tested, and administered Ruby on Rails application along with a small amount of legacy PHP code
  • Helped oversee product demo at Wireless Japan 2008 in Tokyo
  • Wrote documentation for other engineers as well as end-users
  • Implemented localization of the application in both English and Japanese

Hobby Projects

NHK Scraper

A quick script to download NHK 高校講座 series of video lectures and re-encode them for iPad. The source files are all in WMV format, so this script re-encodes them with VLC. It also keeps track of which files have been downloaded and re-encoded with ActiveRecord and SQLite.

MD5 Viewer (Note this is unrelated to MD5 cryptographic hashes)

This is a program that I wrote for an Advanced Graphics class. It loads in an MD5 model file and displays it. It includes shaders and animation.

Asteroids Clone

A pure javascript clone of Asteroids. It uses the canvas tag for all rendering.

Education

Bachelor of Science in Computer Science

University of Colorado at Boulder. [Expected graduation May 2012]