Open Source Contributions
- Contributed to multiple OpenStack projects for multiple years
- Maintainer of the NetBox Ansible collection
- Contributor to NetBox
- GitHub profile
Public Presentations
- OpenStack summit talks (YouTube playlist)
- Portland Neutron Design Summit - QoS API Extension for Neutron
- Hong Kong Design Summit - QoS API Extension for Neutron
- Atlanta Design Summit - IPv6 Status in Neutron
Experience
Principal Software Engineer, Comcast
2018-2020
Worked in the Comcast Cloud organization on internal OpenStack and Kubernetes platforms. Built automation with Ansible and ConcourseCI to help manage the hypervisor fleet and streamline patching and live migration operations. Built an new a lab environment for the OpenStack team that served as a CI/CD test bed for new regions. Tested new hardware, network architectures, and different configurations to help determine the next design that would be used to build new regions. This included building out a new network architecture and Ansible automation to automate Arista network switches via Ansible, to test out advanced OpenStack Neutron network configurations involving BGP between Arista routers and OpenStack hypervisors.
2020-2023
Worked on a new cloud initiative at Comcast to build a cloud offering using the VMWare family of products (ESX, VxRail, NSX-T). Led the effort to automate the routing and switching layer and integration with NSX-T for networking, using Ansible and DellOS network operating system. Led a team and taught team members how to use Ansible and Python to augment their traditional operations background. Led the organization in adopting NetBox to help plan and design new deployments, while writing Ansible automation that would use NetBox as the source of truth when conducting deployment of new hardware.
2023-
Worked in the National Datacenter organization to build Ansible automation and ConcourseCI pipelines for routers and switches within Comcast’s global footprint. Manual tasks such as operating system upgrades, security patches, and configuration changes were transformed into Ansible automation and ConcourseCI pipelines that would run automatically during maintenance windows, to eliminate operator error and increase agility. Built tools and taught team members how to utilize, so that the entire team could adopt the Ansible Automation & CI/CD methodology.
Led a team to build a new self-service platform for loadbalancing and firewall automation, implemented in the Django web framework and Celery messaging framework, to replace older systems that were no longer maintained or supported.
Technologies
- Python
- Ansible
- ConcouseCI
- Docker/OCI containers
- Paramiko
- RabbitMQ
- Redis
- Celery RPC
- Django
- Bootstrap CSS
- Cisco iOS
- Juniper JunOS
- Arista EOS
- F5 loadbalancer API/TMSH
- F5 firewalls/BIG IQ REST API
- Fortinet FortiManage REST API
Principal Software Engineer, IBM
2017 - 2018
Worked on IBM Cloud, building a network control plane using Python & gRPC to orchestrate JunOS routers, in order to build a next-generation cloud that supported Amazon VPC-like networking features.
Built a full CI/CD pipeline using Zuul and Kubernetes to deploy the control plane components, with rolling upgrades and API compatibility for external consumers of our service.
Technologies
- Python
- Flask
- gRPC
- Zuul-CI
- JunOS
- Docker containers
- Kubernetes
Principal Software Engineer, Mirantis
2014 - 2017
Contributed to OpenStack, focusing on improving the integration between OpenStack Nova and Neutron. Became a maintainer of DevStack, to help improve the testing of all OpenStack Neutron plugins.
Also led a team to build an OpenStack upgrade orchestrator that was designed to be used by Fuel and other OpenStack deployment solutions to manage upgrades.
Technologies
- Python
- Flask
- Alembic
- SQLAlchemy
- Bash shell scripting
- Kubernetes
OpenStack Developer, Comcast
2012 - 2014
Technologies
- OpenStack
- Python
- Ruby
- Ruby on Rails
- Django
Hired as a contractor to extend OpenStack to integrate with existing Comcast IP address management, DNS, network ACLs, and monitoring infrastructure. Also worked with the PAS team in Reston, VA to add features to a self-service portal built using Ruby on Rails.
Eventually was converted to a full-time employee, to continue contributing features to OpenStack that Comcast required for its internal cloud (IPv6 networking, Network QOS, etc).
Programmer/Analyst, ECFMG
Full Time: November 2011 - June 2012
Technologies
- ASP.NET
- C#
- WCF
- jQuery
- jQuery-UI
- TFS
- CruiseControl.net
- Oracle 11g
- ASP.NET MVC
Hired as part of the CSEC team to develop ASP.NET web apps, replacing legacy VB6 and COM+ apps used for internal and public facing ECFMG applications, while working with a team of developers using the Scrum project management methodology.
Main challenges included introducing new libraries and technologies into the development culture at ECFMG, including CruiseControl.NET, Git, jQuery, LINQ, and ASP.NET MVC3
Developer, Solution Systems Inc
Full Time: January 2011 - November 2011
Technologies
- ASP.NET
- Python
- Redis
- MS-SQL
- CruiseControl.net
- GitHub
- Amazon AWS
Updated the iPlan project management software suite used by consultants to .NET 4.0, while fixing long standing bugs and improving performance.
Spearheaded an initiative to move the source code into Github, and built a development server to run the CruiseControl.net continuous integration server to provide automated QA and testing services.
Also spearheaded an initiative to utilize Amazon Web Services for hosting iPlan on Amazon EC2 and e-mail notifications through Amazon Simple E-mail Service.
Developer & IT Consultant for B-Tech Consulting Ltd.
Part Time: Jan 2010 - Jul 2011
Technologies
- CentOS Linux
- PostgreSQL
- Django
- MySQL
- RPM packages
- WSGI
- Amazon AWS
Managed deployment and configuration of Linux systems for use with genetic research and packaged scientific applications for Linux as part of the Biopackages.net development team. Notable projects include developing an orchestration layer on EC2 for running massively parallel AutoDock and AutoGrid simulations, and assisting Brian Moldover in developing a NIH Grant application for the EC2 orchestration layer. Also developed an information system to store patient, clinical, and genetic data for an HIV/AIDs study conducted by the University of Pennsylvania and Hahnemann University Hospital.
Developer, Southwark Metal Mfg. Catalog
Project: Spring 2010 - Fall 2010
Technologies
- PHP
- CakePHP
- MySQL
- Python
Developed a database schema and wrote import tools for Southwark Metal Mfg. Corporation, to provide a searchable catalog for all products across multiple sales locations in the United States. Import tools were developed with Python, to load in a CSV formatted inventory list of all products manufactured by the company, and the region specific product identifiers that each product had. The web application was developed using MySQL and the CakePHP framework.
Developer, Drexel Cultural Passport
Project: Spring 2010 - Fall 2010
Technologies
- Python
- Django
- MySQL
- jQuery
- Google Maps API
Developed the Drexel Cultural Passport site , using the Django web framework. The site provides Drexel students with the ability to reserve free tickets to shows & concerts as part of the Drexel Pennoni Honors College Cultural Passport program at Drexel.
The site used a customized version of django-page-cms for content authoring by students of the Honors College, and had planned support for connection to Drexel’s LDAP to ensure eligibility for the free ticket program offered by the Honors College.
###Contractor, MediciGlobal Contract: July 2010 - Sept 2010
Technologies
- PHP
- Javascript
- MS-SQL
Developed software and infrastructure for MediciGlobal’s patient information system, Study Coordinator. Additional details are covered under NDA.
Developer, Drexel University
Part Time: Fall 2008
- PHP
- Joomla
- MySQL
Lead developer for Table Matters, an online magazine produced by the Pennoni Honors College at Drexel University. Site was developed in PHP using the Joomla content management system, with custom CSS and templates. An additional system was developed to support sending weekly newsletters to thousands of subscribers. Subscribers were managed using Mailman and the qmail SMTP server.
Also was responsible for maintaining the Linux VPS server that TableMatters was hosted on. Responsibilities included security configuration, web server configuration, and applying security updates.
Junior Systems Administrator, Temple University College of Education
Part Time: 2006 - 2008
- Active Directory
- Server 2003
- MySQL
- PHP
Reported directly to Lori Bailey, CIO of the Temple University College of Education. Charged with second level tech support to Faculty and Administrators in the College.
Duties included managing multiple Windows servers, managing group policy objects in Active Directory, and developing small web applications to replace paper forms as part of a “green” campus-wide strategy. In addition, was charged with deploying hundreds of desktops and prepping outdated machines for recycling.
Leadership Positions
- Officer, Association For Computing Machinery
- Member, Phi Alpha Theta, the International Honor Society in History
Education
- Malvern Preparatory School, Malvern PA.
- Temple University. Bachelor of Science in Information Systems & Technology.