PATRICK FORCE

MOBILE: (404) 310-4158

RECENT PROJECTS

Modern Tribe

Summer 2016 - Present

I came on board with these folks last year to provide some part-time help on production system support and DevOps direction. They are mostly a Wordpress agency building solutions for a good number of clients. There are lot of different projects in various states of organization. I've helped them adopt some automated practices for infrastructure provisioning and configuration, some CI/CD adoption via Jenkins, Slack, GitHub integrations, etc. I've been working to support their immediate production needs while also trying to guide some longer term decisions to help get them to a better place with common tools and process for dealing with the various environments and projects for their clients.

One project of note is Café Bon Appetit. I first started helping out with this one soon after I was brought on board back in late summer 2016. I was asked over the course of a few days to deal with some production support issues. They were hosting their 3 sites with a handful of other services on a single managed host that was not provisioned in an automated way, was no longer capable of handling the load, and had been tinkered with so much manually that it was nearly impossible to track down all the problems. Daily fire drills over the course of a week led me to quickly pitch a proposal to get it all moved over to AWS, automated management of most resources via AWS cli and bash scripts, Ansible provisioning and configuration of resources, as well as CI/CD support via a custom Jenkins install. All of this for multiple dev and testing environments, including capabilities for automated backups, monitoring tool integration, and migrating data between environments. We turned it around in about a month. Since the official switch, we've seen an uptime of somewhere around 99.8% with very few alarms in regards to infrastructure issues. There are still plenty of things to do to continue to move their platform and people in the right direction, such as facilitating greater understanding and adoption of deployment workflows and furthering horizontal scaling efforts, but I've helped lead an effort towards being able to take these smaller steps incrementally.

The other big push I've made with Modern Tribe: work towards a more common workflow and set of tools for all projects. Some of this is as simple as standardizing git branching strategies, and some as complex as strategy around disposable per-project, per-branch environments for development and testing. I've been trying to find the right approach to make this a simple transition for everyone involved. For more info on the solution, see my open-source project Cloud Gardens which is the basis for the solution I've implemented for them. Essentially this is an isolated AWS VPC ecosystem for deploying and managing per-project microservices in Docker containers.

CourseArc

Jan. 2017 - Present

I've been helping this startup out with both development and DevOps concerns. They provide SaaS software for creating online interactive courses. The product is still relatively new, but gaining some traction, so they needed an extra hand. So far, I've mostly helped out with the tool that manages the SaaS accounts and AWS resources. Via the AWS PHP SDK, I've integrated AWS resource management into their custom account management interface. This has included making failsafe improvements to an account's OpsWorks stack creation, EC2 instance management, Route53 automation, and CodeDeploy integration. I'm helping to guide in better adoption of infrastructure code for building their base AMI(s).

GoMaps

Late 2016 - Present

I love maps and getting out on the trail, so when I ran in to some guys that were working on this project in my neck of the woods here in Colorado, I jumped at the chance to help out. They needed me to step in and do a few things. One was to take point on getting an API up-and-running for capturing some custom data for the platform to come. I decided to spin it up with Loopback.io, Node.js tools, and S3 for certain trail data storage. I've also been helping with some DevOps concerns, organizing pieces in the platform, working to get OpenStreetMap integration working well in the platform, etc.

I've also been helping out a little bit with native Android and iOS app development.

Vidstore

Spring 2016 - Fall 2016

This was general development help primarily. One of the better pieces of work I did for them was help make the switch from Grunt to Gulp for their frontend build system and make it easier for all the devs to use in the development workflow. They had tons of pre-build frontend assets, so I needed to find every way I could to squeeze better performance out of the process, including mechanisms for minimzing rebuilding resources that didn't need rebuilding via things like checksums.

I also worked a good deal with Ansible during this contract. I was able to make some small tweaks to speed up the provisioning performance.

Bletchley Park

2014 - Summer 2015

This was mostly AngularJS development, some d3 work as well. I was on a single project, an application for CA Technologies that helped with Mobile App Performance Monitoring. I also spent some time working with the CA folks to make a better local development environment for us. The mock APIs they provided didn't really give us useful data to develop against, so I put together some mocks that helped them restructure. I also helped us adopt vagrant for automating this environment.