Erik Johnson

resume@erikj.me

Full-Stack Software Engineer Specializing in Ruby on Rails

Experienced software engineer with a passion for providing human-friendly, robust solutions built with contemporary technologies and practices. I have been developing advanced web applications and other software since 1998 and with Ruby and Rails since 2006. I enjoy working with technical and non-technical staff, engineers and non-engineers. I strive to provide robust solutions that people find useful and enjoy using, whether it’s application end users or fellow developers that work with the software and documentation.

Education

Master of Science, Physics, West Virginia University

Bachelor of Science, Physics, Departmental Honors, Mathematics Minor, Truman State University

Experience

National Center for Atmospheric Research (NCAR), Boulder, CO

Software Engineer III, 2013 - present

Software Engineer II, 2011 - 2013

Designed and developed a complex suite of customizable Rails applications for National Science Foundation (NSF) research field projects. The Field Catalog displays data products, project information and widgets and can be customized on a per-project basis. CatalogMaps displays geo-referenced data products in a geo web interface using OpenLayers and OpenStreetMaps. CatalogModels is a gem that consolidates the ActiveRecord models that are used across several Ruby and Rails applications. This suite of software was developed using Ruby, Rails, Rails generators, Rspec, Ruby Minitest, Cinch IRC-bot library, Docker, Docker Compose, MySQL, JavaScript, CoffeeScript, AJAX, Haml, Bootstrap, OpenLayers, OpenStreetMaps, jQuery UI, Twilio, Backbone.js and third-party HTTP APIs.

Designed and developed Project Requests Online (PRESTO), a web application for requesting NSF scientific facilities, using Ruby on Rails, third-party REST API, Nginx, Docker, PostgreSQL and CoffeeScript.

Developed and supported Docker images following a number of different patterns and for a variety of use cases.

Supervised and mentored junior staff, providing guidance in Ruby, Rails and software-engineering practices.

Zeitbyte, New York, NY

Systems Engineer / Administrator, 2009-2011

Developed log-processing application in Python with FTP, Geo-IP, MySQL APIs and regular expressions to download and parse CDN log data. Refactored MySQL schema to optimize relational integrity and performance.

Administered database and web servers: managed and optimized daemon configurations. Developed Ruby-on-Rails application for popular social-networking site using social-networking API and mark-up language.

Developed and managed software to backup log files and database dumps and upload them to AWS S3.

Deployed software on AWS EC2.

medSage Technologies, Pittsburgh, PA

Software Engineer, 2007 - 2009

Developed HIPAA-compliant web applications and authentication systems via Object-Oriented Design and Test-Driven Development using Ruby on Rails, RESTful Authentication, AJAX, RSpec, Passenger and Capistrano.

Global Science & Technology, Fairmont, WV

Software Engineer, 2002 - 2007

Performed research & development for analysis of legacy / reused flight software systems, as Technical Lead and Senior Software Engineer for the NASA Legacy Project at NASA's Independent Verification & Validation Facility (2005-2007). Developed web application application for software-reuse analysis, using Ruby on Rails, AJAX, PostgreSQL and Open-Source libraries.

Developed software for analysis and geo-location of GOES-satellite GVAR-format weather data for the NOAA CLASS Project, served as GOES / GVAR subject-matter expert (2002-2005).

iPlayOutside, Morgantown, WV

Application Developer, 1999 - 2001

Developed web applications for content-driven web magazine and for timing / scoring of 24-hour mountain-bike racing events produced by client Granny Gear Productions, developed with popular web-scripting language, PostgreSQL and Apache.

Independent Consultant

Application Developer, 1998 - present

Developed and enhanced web sites and applications for clients using Ruby on Rails, AJAX, Passenger, Capistrano, Python with Twitter, RSS and social-networking APIs.

WVU Plasma Physics Lab, Morgantown, WV

Research Assistant, 1996 - 1999

Developed plasma sources, measurement instruments and software for WVU Q-Machine.