Senior Software Developer
09.2023 - 10.2025 |Mudflap
Ruby on Rails, PostgreSQL, Sidekiq/Redis, AWS
● Worked on the Fraud & Risk team, developing systems to mitigate fraud and financial losses while keeping end-user friction low.
● Developed a rules engine for evaluating customer riskiness and systems for managing customer's ability to transact on the site.
Senior Software Engineer
11.2021 - 06.2023 |CoderPad
Okta, SCIM, Lever API, Ruby, Ruby on Rails
● Implemented GDPR data privacy features, multi-currency support, and other capabilities.
● Integrated the app and API with Okta, SCIM, Lever API, and other 3rd party apps.
● Upgraded Ruby and the Rails app from EOL versions to Ruby 3.1 and Rails 6.1.
● Mentored junior developers, introduced ensemble programming, and did code quality reviews.
Senior Software Engineer
10.2018 - 10.2021 |FabFitFun
Ruby, Elixir, Elm, JavaScript, TypeScript, Java, BASH, Arduino, Raspberry Pi, Rails, Phoenix, Ash, LiveView, Rack, React, i18n, l10n, A11y, CJKV, JSON, GraphQL, AWS, Okta, Postgres, MySQL/MariaDB, Redis, InfluxDB, Neo4J, SQL Server, Oracle, RSpec, MiniTest, ExUnit, Cucumber, BDD, TDD, TATFT, XP, SOLID, OOP, FP, AOP
● Transitioned all non-blog features away from PHP/Wordpress to Java.
● Rebuilt and extended their Invite-a-Friend functionality.
● Worked remotely with teams based in LA (HQ), as well as engineering/ops teams in Argentina, Vietnam and Ireland.
Principal Engineer
02.2016 - 10.2018 |Habit
Ruby, Elixir, Elm, JavaScript, TypeScript, Java, BASH, Arduino, Raspberry Pi, Rails, Phoenix, Ash, LiveView, Rack, React, i18n, l10n, A11y, CJKV, JSON, GraphQL, AWS, Okta, Postgres, MySQL/MariaDB, Redis, InfluxDB, Neo4J, SQL Server, Oracle, RSpec, MiniTest, ExUnit, Cucumber, BDD, TDD, TATFT, XP, SOLID, OOP, FP, AOP
● Managed handoff from Carbon5 (who built the prototype) to in-house technical team and launched their first public facing website, integrated with a decision-tree based on research partners from two European labs.
● Integrated with software for DNA & blood test analysis, as well as the logistics for delivering and processing test kits.
● Mentored junior and mid-level engineers, in Ruby/Rails, TDD and OOP in general.
Senior Software Engineer
04.2015 - 10.2015 |Mattermark
Ruby, Elixir, Elm, JavaScript, TypeScript, Java, BASH, Arduino, Raspberry Pi, Rails, Phoenix, Ash, LiveView, Rack, React, i18n, l10n, A11y, CJKV, JSON, GraphQL, AWS, Okta, Postgres, MySQL/MariaDB, Redis, InfluxDB, Neo4J, SQL Server, Oracle, RSpec, MiniTest, ExUnit, Cucumber, BDD, TDD, TATFT, XP, SOLID, OOP, FP, AOP
● Refactored to a 3x improvement in test suite performance and established improved Ruby coding conventions.
● Helped integrate ElasticSearch into a Sinatra based JSON API to drive web/mobile apps.
● Built event feed API using Grape and Amazon Kinesis.
Senior Software Engineer
03.2014 - 03.2015 |Teespring
Ruby, Elixir, Elm, JavaScript, TypeScript, Java, BASH, Arduino, Raspberry Pi, Rails, Phoenix, Ash, LiveView, Rack, React, i18n, l10n, A11y, CJKV, JSON, GraphQL, AWS, Okta, Postgres, MySQL/MariaDB, Redis, InfluxDB, Neo4J, SQL Server, Oracle, RSpec, MiniTest, ExUnit, Cucumber, BDD, TDD, TATFT, XP, SOLID, OOP, FP, AOP
● Re-engineered system for producing shipping labels and packing manifests from order/product data.
● Created first API for use with partners such as Twitch.tv and YouTube.
● Created automated end-to-end smoke tests using Cucumber/Capybara.
Senior Software Engineer
10.2012 - 02.2014 |New Relic
Ruby, Elixir, Elm, JavaScript, TypeScript, Java, BASH, Arduino, Raspberry Pi, Rails, Phoenix, Ash, LiveView, Rack, React, i18n, l10n, A11y, CJKV, JSON, GraphQL, AWS, Okta, Postgres, MySQL/MariaDB, Redis, InfluxDB, Neo4J, SQL Server, Oracle, RSpec, MiniTest, ExUnit, Cucumber, BDD, TDD, TATFT, XP, SOLID, OOP, FP, AOP
● Maintaining and refactoring a large, monolithic legacy Rails app, and moving it towards a SOA.
● Evangelizing TDD/BDD and pairing within the company.
● Mentoring developers/interns.
Senior Software Artisan
09.2011 - 10.2012 |ZOZI
Ruby, Elixir, Elm, JavaScript, TypeScript, Java, BASH, Arduino, Raspberry Pi, Rails, Phoenix, Ash, LiveView, Rack, React, i18n, l10n, A11y, CJKV, JSON, GraphQL, AWS, Okta, Postgres, MySQL/MariaDB, Redis, InfluxDB, Neo4J, SQL Server, Oracle, RSpec, MiniTest, ExUnit, Cucumber, BDD, TDD, TATFT, XP, SOLID, OOP, FP, AOP
● Working with agile team to develop new product lines and features for zozi.com.
● Introducing TDD/BDD best practices, and evolving the test suite for increased speed & confidence.
● Acted as Rails mentor for senior engineers new to Ruby.
VP Engineering
02.2010 - 08.2011 |Scoop St.
Ruby, Elixir, Elm, JavaScript, TypeScript, Java, BASH, Arduino, Raspberry Pi, Rails, Phoenix, Ash, LiveView, Rack, React, i18n, l10n, A11y, CJKV, JSON, GraphQL, AWS, Okta, Postgres, MySQL/MariaDB, Redis, InfluxDB, Neo4J, SQL Server, Oracle, RSpec, MiniTest, ExUnit, Cucumber, BDD, TDD, TATFT, XP, SOLID, OOP, FP, AOP
● Created the original application prototype for the founders.
● Responsible for setting technical direction and building new web features for the company’s group shopping application built on Rails, until it was acquired by BuyWithMe in Aug. 2011.
● Developed applications to support two new lines of business.
● Implemented quality control processes, including BDD (RSpec/Cucumber) and Agile.
● Managed infrastructure, first on Slicehost, and then on Heroku.
● Recruited additional engineering staff.
Senior Developer
08.2009 - 02.2010 |Sling Media
Ruby, Elixir, Elm, JavaScript, TypeScript, Java, BASH, Arduino, Raspberry Pi, Rails, Phoenix, Ash, LiveView, Rack, React, i18n, l10n, A11y, CJKV, JSON, GraphQL, AWS, Okta, Postgres, MySQL/MariaDB, Redis, InfluxDB, Neo4J, SQL Server, Oracle, RSpec, MiniTest, ExUnit, Cucumber, BDD, TDD, TATFT, XP, SOLID, OOP, FP, AOP
● Worked with team to develop web application that allows users to control and watch their Dish TV DVR remotely.
● Integrated work from local web developers and remote DVR API programming team.
Senior Developer
01.2009 - 06.2009 |NDA
Ruby, Elixir, Elm, JavaScript, TypeScript, Java, BASH, Arduino, Raspberry Pi, Rails, Phoenix, Ash, LiveView, Rack, React, i18n, l10n, A11y, CJKV, JSON, GraphQL, AWS, Okta, Postgres, MySQL/MariaDB, Redis, InfluxDB, Neo4J, SQL Server, Oracle, RSpec, MiniTest, ExUnit, Cucumber, BDD, TDD, TATFT, XP, SOLID, OOP, FP, AOP
● Worked with several clients to develop Rails applications, in the financial, home design, and group shopping industries.
● Built and launched scoopst.com.
● Built initial prototypes for thesweeten.com.
Senior Developer
10.2007 - 12.2008 |Reuters Insight
Ruby, Elixir, Elm, JavaScript, TypeScript, Java, BASH, Arduino, Raspberry Pi, Rails, Phoenix, Ash, LiveView, Rack, React, i18n, l10n, A11y, CJKV, JSON, GraphQL, AWS, Okta, Postgres, MySQL/MariaDB, Redis, InfluxDB, Neo4J, SQL Server, Oracle, RSpec, MiniTest, ExUnit, Cucumber, BDD, TDD, TATFT, XP, SOLID, OOP, FP, AOP
● Created a database backed web application for the analysis of the investment potential of various pharmaceuticals in development, using Ruby on Rails. The aggressive schedule and rich feature set was instrumental in convincing the company to port their main application from Java to Rails.
● Transitioned the main business application from Java/Struts to Ruby on Rails as a way to increase productivity and adaptability, while reducing developer overhead. Development went from a team of 10 in India to a team of 3 in the U.S. and the code shrank from approx. 40K lines of Java to 5K lines of Ruby while the feature set was expanded.
● Increased test coverage of the flagship application from less than 10% to more than 80%, while helping to establish more agile, behavior driven development processes.
Senior Developer
03.2007 - 09.2007 |NDA
Ruby, Elixir, Elm, JavaScript, TypeScript, Java, BASH, Arduino, Raspberry Pi, Rails, Phoenix, Ash, LiveView, Rack, React, i18n, l10n, A11y, CJKV, JSON, GraphQL, AWS, Okta, Postgres, MySQL/MariaDB, Redis, InfluxDB, Neo4J, SQL Server, Oracle, RSpec, MiniTest, ExUnit, Cucumber, BDD, TDD, TATFT, XP, SOLID, OOP, FP, AOP
● Worked with Ideeli.com to generate comprehensive test coverage for their Rails application, pre-launch.
● Worked as a consultant to Columbia House on their Java based web applications.
Application Architect
03.2006 - 02.2007 |Marketing Technology Solutions
Ruby, Elixir, Elm, JavaScript, TypeScript, Java, BASH, Arduino, Raspberry Pi, Rails, Phoenix, Ash, LiveView, Rack, React, i18n, l10n, A11y, CJKV, JSON, GraphQL, AWS, Okta, Postgres, MySQL/MariaDB, Redis, InfluxDB, Neo4J, SQL Server, Oracle, RSpec, MiniTest, ExUnit, Cucumber, BDD, TDD, TATFT, XP, SOLID, OOP, FP, AOP
Marketing technology Solutions is a direct marketing company providing services to pharmaceutical companies.
● Led development on a consumer oriented site which aggregates health information from a number of sources, and acts as a gateway into a consumer profiling system that generates leads for pharmaceutical companies.
Application Architect
01.2005 - 02.2006 |BMG/Columbia House
Struts, Velocity, Hibernate, JBoss
● Responsible for architecture of redesigned which allows customers to join the company’s DVD club via the web. The site was developed and deployed using Struts/Velocity/Hibernate on JBoss.
● Translated a complex set of business rules into application code and integrated with a host of legacy systems via EJBs and web services.
Application Architect
08.2003 - 12.2004 |Ashley Associates
CMS, Java
Ashley Associates is one of Japan's largest and longest established web consultancies.
● Developed a new version of a Cold Fusion based CMS and ported it to a Java platform.
● Developed several client projects using the prior version of the CMS and created extensions to that system.
Application Architect
07.2002 - 06.2003 |Access Technology
XML DB, MySQL DB
Access Technology is an IT recruiting company based in Tokyo, with offices in New Zealand and elsewhere.
● Designed and developed an intranet based business intelligence system to assist in the matching of candidates to job specifications.
● Integrated the legacy Filemaker database into the new system along with a Xindice XML DB and MySQL DB.
Senior Technical Specialist
04.2001 - 05.2002 |FullTilt Solutions
ASP, XML/XSLT
In 2001 FullTilt acquired assets and 6 key people (including myself) from Snickelways in 2001.
● Created demos and prototypes for sales support, and acted as sales engineer on visits to prospective clients.
● Personally responsible for retaining musicspace.com as a client upon demise of Snickelways.
● Completed development of musicspace.com and popshop.com using Microsoft’s Commerce Server 2000, ASP, and XML/XSLT.
Systems Architect
02.1996 - 03.2001 |Snickelways Interactive
HTML, JavaScript
Snickelways began as an ITV (interactive television) production company, and later used their e-commerce experience to develop web applications.
I was the first employee and the last of 175 to leave the building when the bubble burst.
● Assisted all pre-sales activity, including requirements gathering, presentations, and prototyping.
● Wrote technical specifications, created project architectures, created risk assessments.
● Managed teams of 4-10 programmers and web developers, locally as well as teams in India (on-site) and Brazil (remotely).
● Designed and developed application architectures for over a dozen web applications.
● Translated graphic designs into working prototypes using HTML and JavaScript.
Web Developer
02.1994 - 02.1996 |Snickelways Interactive
ASP, VB, VBScript, JavaScript, Photoshop, 3D Studio, HTML
● Programmed and unit tested web applications (ASP, VB, VBScript, JavaScript).
● Evaluated and evangelized new web technologies such as VRML, Real Audio, Quicktime VR.
● Created 3D animations, user interfaces, navigation systems and backgrounds for ITV prototype applications and early web sites using Photoshop, 3D Studio and HTML.