Ferguson Software Services at Invue Security Products, Inc.
Senior Software Engineer
April 2017 - Present
Cloud Infrastructure, DevOps, Full Stack Web, Android, IOT, Serverless
- Migrated a Node/React application from a physical server, deployed with bash scripts, to Google Cloud provisioned and deployed with Ansible under CI/CD with Travis
- Migrated Java application server communicating with embedded device with proprietary binary format over TCP sockets to run in Cloud environment.
- Added features and deployed an Android application to work with a new verion of NodeJS API.
- Features, bugfixes, performance enhancements, and systems administration on 'Microsigns'. A web application that leveraged a microservices architecture using Node w/ PostgreSQL on the backend and AngularJS on the frontend. Deployed to AWS using Ansible and Docker.
- Setup an IOT infrastructure in AWS for receiving messages from devices deployed in retailers and processing them using AWS Lambda deployed with the serverless framework.
Ferguson Software Services onsite at Mood Media
Data Engineer and Application Development Consultant
January 2015 - March 2017
Systems integration and web application development
- Assisted in development of web application using C# on the backend and AngularJS on the frontend.
- Integrated multiple systems using ETL framework, Python, and SQLAlchemy
- Migrated an existing data warehousing solution from MongoDB to Redshift
- Started a device outage monitoring solution using the Hadoop platform, Ambari, Storm, and Kafka
Ally Financial through OpenSystems Technologies
Web Development Consultant
August 2014 - January 2015
- Part of team that developed Ally's online banking frontend as an EmberJS application
- Customized and completed several variants of the build process used by whole team for development and deployment. Tools used included Rake Pipeline, RequireJS, Broccoli, Ember-CLI, and ES6.
- Reworked build process to create a mobile specific version of the online banking application. Added mobile specific customizations to the application.
Senior Software Engineer
February 2013 - August 2014
- Lead developer on call center application used by all of Technekes call center employees. Project used EmberJS on the front end, Ruby on Rails on the backend along with MongoDB, ElasticSearch, and Postgresql. Twilio was used for telephony.
- Developed a realtime dashboard using EmberJS and Ruby on Rails that allowed administrators to monitor the status and listen to ongoing calls. Pubnub was used for realtime communication between the client and server.
- Part of small developer team that was split off from Technekes to form a separate, product focused, startup 'Connexiolabs'. Developed several marketing focused applications and web services as a part of that startup using a Microservices architecture.
Mood Media/Muzak LLC
Senior Software Developer
July 2011 - February 2013
- Founding member of the New Product Development team. Designed and developed multiple web and mobile applications including OnlineDJ, Klikt, Sonictap, and the MyMuzak.
- Developed the backend of MyMuzak, Klikt, and OnlineDJ using Ruby on Rails. Used MySQL, Sphinx, and Solr for data storage and free text search. Applications were developed using BDD and TDD techniques including the use of Cucumber and RSpec.
- Developed mobile applications for the customer loyalty application, Klikt. Developed a native Android application in Java using SpringAndroid, Roboguice, Android Annotations, OrmLite, and Jackson.
- Used BackboneJS for developing rich client side features in OnlineDJ and MyMuzak. Developed the Klikt iPhone app using phonegap and BackboneJS.
- Used DevOps tools and techniques including Jenkins for continuous integration, Capistrano for automated deployments, and Chef for server provisioning.
- Integrated applications with several third party services including Facebook, Twitter, Mailchimp, AppFigures, and Google Maps.
Public Consulting Group
March 2008 - May 2011
- Lead developer on BehaviorPlus, a web app for tracking behavior issues in grade school students. BehaviorPlus integrated with EasyIEP, an existing application that helps school districts comply with laws around services for special education students.
- Assisted in creating stylesheets that defined interface standards for all commonly displayed elements in pages within the web app.
- Led the configuration, training, and release of the issue tracking tool JIRA within the company.
- Developed scripts used for common system administration tasks using Perl.
Business Systems Analyst
April 2007 - March 2008
- Maintained and acted as content expert for Institutional Ownership, Insider Trading and Short Interest datasets within the company.
- Communicated with third-party vendors for content and technical specifications related to datafeeds.
- Drafted technical specifications for converting manual collection and entry of credit ratings from three major credit rating agencies (S&P, Moody’s, and Fitch) to automated process including specifications for software used for feed maintenance.
- Derived dataset statistics for senior management and sales teams for use in contract negotiations and marketing materials using SQL and proprietary Excel plug-in, SNLxl.
- Troubleshot problems reported in SQL Server 2005 stored procedures used for calculating SNL’s internal market indices.
National Science Foundation
May 2002 - June 2006
- Led and assisted in various research projects interested in examining economic aspects of the emerging wireless technology cognitive radio.
- Conducted regression analysis on data collected in Economics Experiments in STATA. Results included in journal publications.
Economics Dept. at Virginia Tech
May 2002 - June 2006
- Development, analysis, and refinement of a system (WITS) that used Palm Pilots as clients and a central server to simulate market scenarios in Economics classes.
- Programming in C# and data collection and analysis.
- Web design for WITS project
Virginia Tech Transportation Institute
May 2001 - August 2003
- Extract and analyze relevant data from transportation focused human factors studies using Excel, VB.NET, and SQL Server.