Generalist with interests in web and mobile development, AI/ML, hardware, distributed and embedded systems and operations infrastructure. Extensive experience as a software developer, manager and entrepreneur. Able to learn new technologies quickly, and work at all layers of the software stack.
Experience
September 2020 - May 2021
Senior Principal Architect
7Geese was acquired by Paycor in September 2020. I stayed on for 9 months to assist with integrating the 7Geese software into Paycor's platform, and to transfer knowledge about the 7Geese application. After the successful integration, I left for a "sabbatical", to recharge and learn new things.
August 2014 - September 2020
Senior Software Developer -> Director, Engineering -> CTO
- Responsible for engineering team, technical direction and operation of product
- Member of the executive leadership team, setting company strategy;
- Developed goal-tracking and social performance management web application, using Python, Django, Javascript, GraphQL, React, Redux, etc..
- Worked on deployment and operations processes in an AWS environment (using tools such as Terraform and AWS ElasticBeanstalk);
- Coached engineering team members, conducted regular 1-on-1's and performance reviews, etc..;
- Defined, iterated and improved on engineering team processes;
- Contributed to product management/product strategy process;
- Wrote (in Swift) and partially designed the products first native iOS app;
March 2006 - August 2014
Senior Developer -> Program Manager -> Engineering Manager
- Managed engineering team, responsible for product development, releases and project implementation. Also contributed to overall company strategy and management;
- Certified Agile scrum master, led sprint planning and retrospectives;
- Designed, implemented and maintained HTML and javascript-based single page app for control and monitoring of software defined networking product. Also utilized LESS, require.js, Grunt and backbone.js;
- Developed system for deploying scalability tests to AWS using Docker, Salt, git, syslog and rsync;
- Designed, implemented and maintained REST-based API for product using Go and the Gorilla framework;
- Extensive experience developing and debugging network software and communications at several layers (TCP, UDP, IP, Ethernet);
- Implemented various other components of the product, such as Python language bindings, and various parts of the core infrastructure using C and C++;
- Developed drivers for robotic sensors and actuators, and integrated TCP/IP module into embedded platform using C. Wrote initial network implementation for core product using C++, running on QNX;
- Created many internal and external web applications, such as the software licensing system for the product, using Python and either Django or Flask;
- Managed and maintained IT infrastructure for company of up to 20 people, including remote employees;
- Designed, implemented and maintained graphical software design and debugging tools for core product offering, using Python and wxWidgets. Among other things, the tool was able to automatically generate C, C++, Java or Python code;
- Designed, implemented and performed demonstrations to aid in the sales process;
- Provided technical customer support, both remotely and on-site;
- Met with clients to determine requirements, then implemented software to fulfill professional services contracts.
AdmitFive Technologies
January 2009 - January 2013
Co-founder
- Created a web-based event registration system for organizers of small events;
- Integrated the site with an online payments processor to accept credit card payments;
- Technology stack included Python, Django, SASS, jQuery;
- Deployed, configured and hosted site on several virtualized servers running Linux, Apache and MySQL;
- Met with potential clients, developed project plans, handled invoicing and customer service.
Tophat Development
January 2003 - January 2007
Co-founder
- Setup, co-located and maintained two FreeBSD based servers, hosting over 100 clients;
- Designed and developed a database driven e-commerce website using PHP and MySQL;
- Developed, planned and maintained many other websites using PHP and MySQL.
Pivotal Corp
January 2005 - August 2005
Software Developer (Co-op)
- Researched and developed a prototype Treemap visualization utility and integrated it into Pivotal's CRM product. Utilized C#, XSL, XML and SVG;
- Wrote several data manipulation utilities, using C# and Perl;
- Re-designed internal process documentation website;
- Assisted with various implementation and troubleshooting tasks to support the sales team.
Can-Auto Inspections
June 2004 - August 2004
Software Developer (Co-op)
- Wrote several C++ applications to assist with day to day operations. These included a report conversion and formatting tool and an online data-mining tool;
- Configured and maintained a suite of programs at offsite storage yard;
- Wrote scripts for a Linux server to solve various problems;
- Assisted with troubleshooting and fixing database problems.
WebCT Inc
May 2003 - December 2003
Quality Assurance Specialist (Co-op)
- Wrote and executed test cases for many aspects of an e-learning application;
- Organized meetings and review sessions to improve the testing procedure;
- Investigated customer issues to determine the source of problems.
Burrard Technologies Corp.
August 2000 - August 2001, May 2002 - August 2002
Software Developer
- Tested the hardware and software for an automated ticket dispensing machine. Implemented a web-based bug tracking system and trained team members in its use;
- Designed and implemented Visual Basic software to automatically perform credit card authorization requests received from a network of automated ticket dispensing machines;
- Worked in a team to enable wireless, remote connectivity for a network of ticket dispensing machines using wireless links and modems;
- Designed and implemented a Visual Basic/XML based Quote/Work Order application on contract for a third party.