CTO

SBM Consulting (Contract w/Olleyes)
New York, NY

August 2018 - Present
6/13-Now
  • Worked with the founder of Olleyes to correct issues in a prototype medical device, a FOVE VR headset that performs visual tests, readying it for FDA class 1 medical device trials.
  • Transitioned the device from an all-in-one prototype to a secure cloud-based platform using AWS, readying it for pre-release to first clients.
  • Abstracted away platform-specific dependencies of different VR platforms behind interfaces using Unity and Zenject, and created a new product using that architecture on the Pico 4k (Android).
  • Audited a Django application and re-wrote it to support multiple users, accounts, offices, devices, managers, employees, and patients.
  • Leveraged UniRx (RxNET for Unity) and Unidux (Redux for Unity) to create a state-driven architecture that separated the data and network layer from the UI layer.
  • Ported an Electron application to a web-native Angular application, which included the addition of new API endpoints.
  • Customized and refined the Angular application for mobile phone and tablet usage in client settings.
  • Extended the Angular application to include real-time test monitoring with secure Websockets and Django Channels.
  • Created a Docker Compose setup for local development that boots all required services and additional development services (such as a fake mail server).
  • Deployed the new application to the AWS platform using ECS on Docker Compose.
  • Worked closely with vendors to establish technical specifications and debug hardware issues.
  • Wrote basic installation scripts (.bat) for Windows using the AWS CLI and PowerShell.

Founder

Wandermight, LLC
New York, NY

January 2019 - Present
1/19-Now
  • Worked with a business partner start work on a 3d "real-time survival" game in Unity3D, which stands at over 380+ classes and 50k lines of code at this point in time.
  • Created a system to procedurally generate a overland map representing a large, futuristic city with random encounters [Image].
  • Created a system to procedurally generate a city mesh, complete with roads, building placement, zoning, cars, and lights [Image].
  • Created a system to dynamically generate buildings based on zone, intelligent placement of doors/windows, and splitting floors into rooms [Image].
  • Worked with a 3d artist to design asset pipelines for all of the above systems so that they could create resources that could be used dynamically.
  • Interviewed musicians and other contributors to work with the company.
  • Wrote hundreds of tests to verify game functionality using NUnit and NSubstitute.

Senior Platform Developer

Paperless Post
New York, NY

January 2017 - January 2018
1/17-1/18
  • Helped complete the transition from Rails 2 to Rails 4 for a large Rails codebase (250k+ lines in one major component) with a great deal of technical debt.
  • Worked with a small team to develop a complete mobile version of the website, including virtual card creation, in React/Redux (using RxJS and Redux-Observable)
  • Created a developer setup for the application and all required services (13+) using Docker, which included charting dependencies.
  • Performed fundamental, decoupling changes required to Rails and Go services to facilitate Dockerization.
  • Worked on a team to migrate our production environment from AWS EC2 instances to Docker on Kubernetes, using the dependency chart I created as a guide.
  • Worked extensively with the QA team to create a suite of NightmareJS tests, including instructional sessions and code review, to facilitate service integrity during these transitional periods.
  • Made new API endpoints for the Rails application for mobile-specific purposes for our new React app and existing iOS app.
  • Worked with the iOS Team Leader to ensure API consistency across versions, experience consistency between mobile app and mobile web, prevent service disruptions, and agree on new changes/additions.
  • Wrote many tests to cover critical previously uncovered parts of the Rails and desktop React applications.
  • Worked with load response teams to prepare the application to handle high volumes of users during the holidays and Valentine's Day.
  • Developed an internal reputation in the company as a problem solver by reducing the complexity of previous solutions.

Director of Engineering

SBM Consulting (Contract w/ FarmersWeb)
New York, NY

April 2013 - January 2017
6/13-Now
  • Using Rails 4.2, PostgresSQL 9.1, and Angular JS 1.3, I developed a robust e-commerce platform for FarmersWeb, a B2B food sales portal between small food producers and restaurants.
  • Conceived new features directly with the co-founders and CTO, using feedback from the farmers and buyers, to develop our product around the needs of the modern small farm and restaurant.
  • Rewrote and modernized features from a legacy PHP codebase onto the new Rails platform.
  • Developed a scheduled ordering system with the leadership team to permit buyers to place orders on specific dates.
  • Partnered with the CTO of the company and several contractors to make sure that the technological foundations of the business were solid.
  • Created prototype component designs using CSS3, Slim, Suzy and Compass that became final designs over several iterations.
  • Created an order life-cycle using a state machine which ensured the integrity of the business processes.
  • Authored an extensive suite of background tasks and workers in Sidekiq to manage the data life-cycle.
  • Wrote over fifteen hundred tests for the application using Jasmine, RSpec, Capybara, and PhantomJS.
  • Supported processes that made our development cycle more efficient, such as continuous integration via CircleCI, issue tracking with Pivotal Tracker, code tracking via Github, and collaboration and integration hooks via HipChat, leading to an average time between deploys of 4 days.
  • Integrated with Braintree, a major credit card processor, to validate, authorize, and capture credit card transactions.
  • Engineered a role system at the controller level using CanCan, in order to accommodate a multi-tiered subscription model which was integrated with Braintree.
  • Developed, extended, and maintained an order accounting system which integrates with the Xero API.
  • Using the Google Maps API, developed a delivery zone management module which allows sellers to control exactly where and when they deliver their products in a custom geometric zone or on the state, county, or city level.
  • Used a location-aware database using PostGIS that filtered sellers for the buyer based on delivery zones and distance from the buyer.
  • Designed and built a thick front-end application layer for using AngularJS, Restangular, and RABL.
  • Designed an easily-extendable REST API for robust client-server interaction.
  • Created a product inventory system with tiered categories, characteristics, catch weight, inventory limits, multiple packaging options, and dynamic profit previews.
  • Implemented a powerful order interface which supported order viewing, editing, creation, and conflict resolution ( crediting, refunds, messages ), for the seller, all with dynamic previews.
  • Developed and extended a multi-cart checkout system which allowed for purchasing of several orders at once.
  • Created a group delivery system which allowed for sellers to pool logistics resources and have multiple farms' orders be delivered by the same delivery agent, with no assistance from the buyer.
  • Extended the ordering system to deal with order substitutions, weight changes, date changes, and route changes.
  • Created a logistics management dashboard which controlled delivery prices, minimums, and additionally facilitated the coordination of third-party delivery solutions.
  • Developed a product browsing section with two modes, "grid" and "list", which included product filtering and quickly adding products to an order.
  • Designed an administrative backend which synthesized information for orders, including Braintree transaction codes and Xero invoice records.
  • Found and hired developers within the New York area in order to further the development of the product.

Senior Developer

The Barbarian Group
New York, NY

June 2011 - April 2013
6/11-4/13
  • Modified Refinery CMS to use CouchDB instead of a SQL database, which included forking several gems, to be used extensively in-house as a ready client solution for content-oriented CMSes.
  • Designed a server solution with Rails 3 for a major retailer’s central style portal, including integrating an undocumented and mostly legacy inventory system that responded in XML and changed formats regularly.
  • Built a Backbone JS application for Bloomberg Philanthropies.
  • Performed load tests using JMeter to make sure that projects met contractual obligations, and operated at 99.99% uptime.
  • Maintained large test suites using Cruise Control.
  • Developed several "give away" mini-sites using JavaScript, Facebook Applications, the Twitter API, and the Facebook Graph API.
  • Performed analysis of commercial vendors and made recommendations based on technical assessments.
  • Advised projects on early technical requirements and pitfalls.
  • Assisted teams in brainstorming creative technical solutions to meet client needs.
  • Bound an in-house open source graphics library, Cinder, to the JavaScript programming language via V8, Google’s JavaScript engine.
  • Acted as Technical Lead to develop long term schedules for major client projects, between 3 months to a year in length.
  • Lead teams of 2-4 people in developing long term projects and acted as the main point of contact for all non-developers.

Developer

The Barbarian Group
New York, NY

June 2010 - June 2011
6/10-6/11
  • Designed and developed a recommendation system with Rails 2 for a major cereal company that guided its users to more relevant content.
  • Developed a "Static Search System" using Elasticsearch to respond to a client need for all content on a site to be searchable, which involved creating an XML pipe from .HTML documents present in the repository.
  • Engineered and maintained a server setup for a large website ( 1m+ users ) involving three dedicated application servers on Passenger, two dedicated database servers, and four asset servers.
  • Managed a code base with several branches via git, some environmental, some topic based, and deployed production code during major feature releases using Capistrano.
  • Responded to crisis events resulting from an underestimated user and load turnout with system diagnostic tools and fixed the production environments within 24 hours.
  • Held daily scrum meetings to prioritize tasks, discuss stories, milestones, tickets, and go over outstanding work in Pivotal Tracker.
  • Worked with Account Services to do what was best for clients by accommodating their requests while also pushing back where necessary.
  • Worked with Producers on scoping major features ( beyond a sprint or encompassing several tickets ) as they came on the radar.
  • Helped to migrate several ancient applications backed by MySQL, and their aging tests, from Rails 1.* ~ 2.1 to Rails 2.3.6.

Developer / Analyst

RecycleBank
New York, NY

January 2010 - June 2010
1/10-6/10
  • Employed RSpec, Cucumber, and Selenium to write user features and scenarios for software components with business analysts and then used the Red-Green-Refactor development cycle to complete those components in true Behavior Driven Development style.
  • Reverse engineered, improved and re-wrote an interactive address validation web interface in jQuery, originally written in Dojo, which confirmed the existence of an address entered by the user refined input errors over interaction iterations to arrive at a valid address.
  • Inherited, maintained, re-factored and optimized a JSON interface to a Drools Rules Engine running as a web service that exposed abstracted database queries through predefined calls and then responded to action instructions given by the Rules Engine.
  • Constructed a “To Do” list in the user’s profile page, which gave users ideas of things to on the website to engage them on a daily basis, based on previous user activity.
  • Designed and developed a functional demo of a system in which individuals could report their individual recycling efforts without the need for specialized hauler equipment in five days with another developer, and then fleshed the system out into full functionality.
  • Took project technical specifications and screen mocks from business analysts and translated them into architecture and attractive interfaces.
  • Worked with the Web Producer, Rewards Manager, and Rules Engine lead to quickly produce solutions to emerging business needs in ‘hot fix’ releases.
  • Fixed many long-standing JavaScript and CSS bugs (several years old) in the front end of the website.

Founder

Kazoo Interactive
Southbury, CT

March 2008 - Oct 2010
3/08-10/10
  • Developed an educational Facebook application targeted specifically at students, Posit, which gathered user information to deliver a better content experience.
  • Authored modules that enabled the specific functionality of the application using Rails 2.1 and the Facebooker Ruby gem.
  • Constructed a UI framework within the application using mooTools and Flash to produce an integrated application-like cross-browser GUI in a non-traditional web environment (e.g, an iFrame inside Facebook).
  • Designed a normalized database using PostgreSQL, which holds all of the application’s data and monitors user activity while adhering to Facebook Privacy Guidelines.
  • Formulated a plan for future development that transitions the application into a multi-interface application, and developed an internal architecture that laid the foundations for future development.
  • Used a distributed source control system, git, to safely manage over sixteen thousand lines of code (not including 3rd party code) across five separate environments.
  • Devised an advertising-free monetization scheme for our product in the educational social networking space and beyond.
  • Worked with a business partner in creating an initial vision for the company: its logo, slogan, business plan, site design, and overall mission.