Career Profile
I am a software engineer at Discovery with experience in agile methodologies working on the global release tooling team. I have experience with Golang, Python, and Java, as well as cloud native technologies like Kubernetes, Docker, Helm, and a little bit of serverless.
Experiences
At Discovery I am a member of the Global Release Tooling team to help accelerate the various product teams, and enable them to create better products, faster.
At F5 Networks I designed, tested, and implemented custom and off the shelf solutions to problems that product development faces around reporting, source control, and artifact/package management.
- Leverage cloud native tools like Helm and Cluster API to create automation enabling developers to deploy kubernetes clusters for dev/test environments, as well as our common infrastructure team to deploy production clusters quicker, as well as to make managing the cluster lifecycle more straightforward.
- Create custom integrations between products for example ServiceNow and Artifactory to enable automated creation of repositories for teams.
- Setup GitLab instance for product development and configure generic GitLab-CI runners for all teams to use. Current usage is over 100,000 CI/CD jobs/week.
- Help other developers learn about new ways to do their current workflow which may be more efficient via office hours, as well as help coordinate internal hackathons.
- Discovered and responsibly disclosed CVE-2019-10205 - Red Hat Quay stores robot account tokens in plain text.
- Spoke at GitLab Commit San Francisco about best practices for GitLab Runners in Kubernetes, https://www.youtube.com/watch?v=Hks5ElUxkP4
At CA Technologies I worked on a product called CA Performance Management, working on the data collection as well as the installation procedures.
- Reworked how devices were certified for polling to allow customers to override the way metrics are collected and calculated from the stock configuration.
- Maintained and extended the InstallAnywhere installer used to install and upgrade the product.
- Designed and installed a light to display the status of the build to everyone in the office to prevent long term build breaks.
Projects
Some of my side projects both for work as well as outside of work.
Skills & Proficiency
Programming Languages
Go
4 years of experience creating CLI, Web Services, and Libraries in Go both professionally and in personal projects. Some examples of projects include LIFX Controls, an API to integrate ServiceNow and Artifactory, and a hackathon project implementing the Terraform Provider Registry Protocol.
Python
Python experience is mostly writing/editing scripts used in automation, with a little bit of exierience using python for webapps via Flask. An example webapp is one created at F5 to automate code signing for various types of binaries.
Java
2 Years of professiona experience working on Java at CA Technologies working on backend services that used the Spring Framework.
SQL
Experience with PostgresQL, Microsoft SQL Server, and MySQL, both self hosted as well as using a managed service. I've used a mix of raw SQL queries in projects as well as ORMs.
HTML, CSS, and Javascript
HTML, CSS, Javascript experience has been minimal as most of my work is geared towards backend projects, but I do have a bit of experience with vanilla javascript, and have used react a little bit on a project at F5.
Tools
Git
Used git personally since 2011, and professionally since 2014. Created many CI/CD Jobs leveraging GitLab CI to automate the testing, building, and releasing of applications.
Docker
Both professionally and personally create docker images that are secure and follow best practices, like not using root, limitting the number of packages installed, etc.
Kubernetes
Created and deployed kubernetes clusters using tools like Cluster API and k3sup. Also have experience developing applications that run on kubernetes, and creating the manifests that define them.
Terraform
I have used terraform to provision infrastructure, using both the terraform CLI as well as Terraform Cloud to allow for collaboration.
Volunteering
As an industry mentory I am a mentor to a student trying to enter the tech industry that doesn’t already have family or friends that work in tech.