Hey there, the name's Mike.

Download Resume

Highland Park High School

Science Festival

  • HPHS Science Festival
  • 2009–Present
  • Scifest_thumb_1
  • Scifest_thumb_2
  • Scifest_thumb_3
  • Scifest_thumb_4


When it came time to replace the pen-and-paper approach to tracking student involvement in a local high school's STEM-focused career day, I whipped up a simple web app to streamline the process. While the design was handled by a third party, I tackled both front and back-end development. Over the years, the project evolved as my skillset grew; what started as a sloppy mess of PHP is now a svelte, maintainable Rails app.


  • Ruby on Rails 3.2.x with MySQL data store
  • Devise + Cancan for authentication and authorization, respectively
  • Paperclip for uploads; WickedPDF with wkhtmltopdf for PDF rendering of rosters and schedules
  • Transactional e-mails delivered via Postmark API
View Project



  • Neurology Information Services
  • 2010–2011
  • Dashboard_thumb_3
  • Dashboard_thumb_1
  • Dashboard_thumb_2
  • Dashboard_thumb_4


Neurology faculty members needed an easy way to keep track of their performance. I handled front and back-end development of a thoroughly modern tool that put these metrics within reach. Built with HTML, CSS, Ruby on Rails and MySQL, Dashboards also offers administrators a clearer picture of the department and its employees. As Dashboards grew in complexity, I used RoR's native fragment caching and a dose of some Redis goodness to keep things speedy.


  • Ruby on Rails 3.0.x with MySQL and Redis data stores
  • Devise for authentication, Cancan for authorization, and Omniauth + 37Signals ID for SSO
  • Sunspot and Solr for full-text search and PDF + Word document indexing
  • Paperclip, Docsplit, and Tesseract to handle document uploads (and OCR of PDFs when appropriate)
  • RSS feed consumption, web scraping, and Highrise API integration custom-built on top of Nokogiri
  • Intuitive keyboard shortcuts for interacting with content

The Internet

Stroke Center

  • Neurology Information Services
  • 2011
  • Sc_thumb_5
  • Sc_thumb_4
  • Sc_thumb_3
  • Sc_thumb_2


The endless collection of static HTML files associated with the old Internet Stroke Center wasn't going to cut it; we had a complete relaunch planned and I knew implementing a CMS was key. After marking up a custom theme and extending some core functionality, I rolled out a WordPress-based site that suited our new information architecture. Front-end work for the Trials Registry followed, and I lent a helping hand on the back-end when possible. My knowledge of Redis came in handy when a key feature necessitated the construction of a scalable job queue.


  • WordPress-driven main site with custom theme and extensive modifications
  • HTML5+CSS3 front-end
  • MacGyver-ed version of gmaps4rails gem to support site's extensive mapping needs
  • Redis-based job queue for handling distributed geocoding work
View Project

Internet Stroke Center

Neurology Image Library

  • Neurology Information Services
  • 2011
  • Image_thumb_1
  • Image_thumb_3
  • Image_thumb_2
  • Image_thumb_4


Our collection of deidentified radiology studies had always been a great resource, but it needed a facelift. Drawing inspiration from real-world medical systems, I created a jQuery-based slider to fluidly navigate through image sequences. With a sharp design and new back-end in place, we soon had an intuitive and educational tool that showcases the sizable number of scans in our library. Plus, it's fun as hell to use and a blast on the iPad.


  • Ported from ASP and Access to Ruby on Rails 3.1 and MySQL in only a few days
  • HTML5+CSS3 front-end
  • jQuery to emulate DICOM viewer
View Project

Side Projects & Concepts