summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile3
-rw-r--r--res/style-markdown.css14
-rw-r--r--resume.md253
3 files changed, 147 insertions, 123 deletions
diff --git a/Makefile b/Makefile
index fe0df63..6648f11 100644
--- a/Makefile
+++ b/Makefile
@@ -14,9 +14,6 @@ md-html5: setup
cmark --unsafe resume.md >> $(html)
printf '</div></body>\n</html>\n' >> $(html)
-rst-html5:
- rst2html5.py --stylesheet=$(style) resume.rst $(html)
-
clean:
rm -rv $(outdir)/*
diff --git a/res/style-markdown.css b/res/style-markdown.css
index 2c3698a..9b53e8b 100644
--- a/res/style-markdown.css
+++ b/res/style-markdown.css
@@ -3,6 +3,7 @@ body {
background:#fff;
background-color:#fff;
font-family:'DejaVu Sans';
+ /*font-family:'Iosevka Aile';*/
background-image:linear-gradient(to top right, #211, #223040);
text-align:left;
@@ -26,7 +27,7 @@ body {
width:9.5in;
padding:.5in;
background-color:#fefefe;
- font-size:14px;
+ font-size:15px;
/*border:1px solid #eee;*/
border-radius:2px;
box-shadow: 1px 1px 7px #aaa;
@@ -131,6 +132,15 @@ div#education {
text-align:left;
}
+code {
+ white-space:pre;
+ font-family:monospace;
+ color:#777;
+ background-color:#fafafa;
+ padding:1px;
+ border-radius:3px;
+}
+
@media print {
@page {
@@ -138,7 +148,7 @@ div#education {
margin:8mm 7mm;
}
body {
- font-size:8pt;
+ font-size:8.1pt;
background-image:none;
}
}
diff --git a/resume.md b/resume.md
index 62c2293..a393592 100644
--- a/resume.md
+++ b/resume.md
@@ -16,17 +16,18 @@ PROFILE
* **Primary Languages**: Bash (13 years), C (4 years), Python (3 years), CSS
and HTML (10 years)
-* **Tools**: Git (9 years), Jenkins (7 years), Ansible (7 years), Kubernetes (3
- years), Terraform (3 years)
+* **Tools**: Git (10 years), Jenkins (8 years), Kubernetes (5 years), Ansible
+ (7 years), Terraform (3 years)
-* **Linux**: 15 years - Crux, Ubuntu, CentOS, RedHat, Arch, Gentoo, and Debian
+* **Linux**: 15 years - Crux, Ubuntu, Debian, CentOS, RedHat, Arch, Gentoo
-* Proficient in Linux infrastructure automation, security, troubleshooting,
- design, and management; networking design, security, analysis, and
- troubleshooting; and service design and abstraction.
-* Knowledgeable in object oriented theory and its application in
- infrastructure, security, and code design
+I am proficient in infrastructure and programming to improve financial,
+personnel, time, infrastructure, testing, and software efficiency. I use object
+oriented theory and Unix design philosophy to create small, simple,
+maintainable, secure, and efficient automation. The radius of impact of my work
+can scale from single tasks and programs to large cross-team initiative
+coordination in an organization.
</div> <!-- profile -->
@@ -49,8 +50,7 @@ DataRobot
</div>
-* **Primary operating systems**: Ubuntu Server (versions 16.04, 18.04, 20.04,
- and 22.04)
+* **Primary operating systems**: Ubuntu Server (16.04, 18.04, 20.04, and 22.04)
* **Primary languages**: Bash, C, Groovy (Jenkins), Makefile, and Python
@@ -65,18 +65,33 @@ DataRobot
review designs of new features to ensure quality, security, stability,
maintainability, and cost effectiveness.
+* Managed a highly effective team of four engineers. Lead them through several
+ major organizational direction changes, getting all four promoted. Worked
+ with each person on the team to set quarterly growth goals and met weekly
+ with each person for one-on-ones.
+
+* Coordinated four very large migration projects affecting the entire
+ engineering organization from old to new technologies, requiring coordinating
+ migration work across an organization of 300 engineers.
+
### Principle Software Engineer
-* Solved problem of pivoting to kubernetes native developement and product
+* Designed, documented, and implemented a Kubernetes-native replacement for AWS
+ NLBs, reducing cost sigifnicantly and improving connection stability for an
+ internal service which served over 25 terabytes of data per day for CI and CD
+ pipelines.
+
+* Solved problem of pivoting to Kubernetes native developement and product
release for developers and customers by outlining and implementing
architecture for migration to a public/private Docker registry with a promotion
process for customer artifacts. Built automation to define the public
registry state in code (ACLs, repos, organization membership, etc) for a more
controllable and auditable setup.
-* Completely eliminated cross availability zone traffic costs for Jenkins and
- Artifactory by building a simple solution which intelligently pinned traffic
- to the Artifactory cluster instance within the local availability zone.
+* `[Bash]` Completely eliminated cross availability zone traffic costs for
+ Jenkins and Artifactory by building a simple solution which intelligently
+ pinned traffic to the Artifactory cluster instance within the local
+ availability zone.
* Worked on AWS cost reduction project. Total contributions yielded $350,000
per year in reduction across the organization without negatively impacting
@@ -85,57 +100,61 @@ DataRobot
removal of cross availability zone costs by intelligently pinning traffic to
the local AZ within automation.
+* Served as interviewer for several teams around the company, running
+ interviews for competencies such as DevOps, SRE, architecture, programming,
+ and culture fit.
### Senior Software Engineer
-* Built a Kubernetes native ECR proxy service which allowed greater flexibility
- and ease of use for developers needing to interact with cumbersome ECR
- endpoints and authentication. Service supported zero-downtime updates.
+* `[HAProxy]` Built a Kubernetes native ECR proxy service which allowed greater
+ flexibility and ease of use for developers needing to interact with
+ cumbersome ECR endpoints and authentication. Service supported zero-downtime
+ updates.
-* Built on-premises virtualization platform of over 230 KVM guest nodes to
- lower costs in AWS. Clusters were completely autonomous and self-maintaining.
- Automation registered nodes with their configured Jenkins masters on boot,
- and deregistered, refreshed to a clean disk state, and reregistered after a
- Jenkins job finished running, automatically maintaining a clean system state
- for all jobs with no plugins required and 4 simple scripts.
+* `[Bash]` Built on-premises virtualization platform of over 230 KVM guest nodes
+ to lower costs in AWS. Clusters were completely autonomous and
+ self-maintaining. Automation registered nodes with their configured Jenkins
+ masters on boot, and deregistered, refreshed to a clean disk state, and
+ reregistered after a Jenkins job finished running, automatically maintaining
+ a clean system state for all jobs with no plugins required and 4 simple scripts.
-* Fully migrated a three node Artifactory cluster from EC2 to Kubernetes using
- Kustomize to manage and automate multiple environments for testing and
- release. Upgrades and maintenance now occur at any time during the day with
- no downtime for end users due to custom connection draining automation.
+* `[Kubernetes]` Migrated a three node Artifactory cluster from EC2 to
+ Kubernetes using Kustomize to manage and automate multiple environments for
+ testing and release. Maintenance now occur at any time during the day with no
+ downtime due to custom connection draining automation.
-* Automated cost metrics gathering and analysis of GitHub traffic to determine
- causes of increased costs and worked with developers to reduce those costs
- through on-system caching, sparse clones, and on-premise LFS hosting.
+* `[Bash]` Automated auditing of GitHub traffic to determine opportunities for
+ cost reduction and worked with developers to reduce those costs through
+ on-system caching, sparse clones, on-prem LFS hosting.
-* Migrated all Terraform Kubernetes code away from Terraform and into
- Kubernetes native to improve reliability and state management.
+* `[Kubernetes]` Migrated all Terraform Kubernetes code away from Terraform and
+ into Kubernetes native to improve reliability and state management.
### Software Engineer
+* Worked on Development Infrastructure team automating processes and
+ infrastructure to support development, testing, engineering productivity,
+ security, cloud operations, and financial operations teams.
+
* Defined upgrade process and worked with all concerned teams to upgrade
automation infrastructure from Ubuntu 16.04 to 18.04. Updated all automation
and testing code to be compatible with both versions. Performed the same task
to migrate from Ubuntu 18.04 to 20.04 one year later.
-* Version controlled thousands of Jenkins job configurations and enforced peer
- review by storing all job configs in git repos as JJB (Jenkins Job Builder)
- templates and deploying with automation on merge request review and approval.
+* `[Jenkins]` Version controlled thousands of Jenkins job configurations and
+ enforced peer review by storing all job configs in git repos as JJB (Jenkins
+ Job Builder) templates and deploying with automation on merge request review
+ and approval.
+* `[Python]` Automated Jenkins credential store management and synchronization
+ across thirteen Jenkins masters using Jenkins Groovy API.
-* Automated Jenkins credential store management and synchronization across
- thirteen Jenkins masters using Jenkins Groovy API and Python.
-
-* Used Terraform to create and ensure state of necessary underlying
- infrastructure such as EC2, ELB/ALB, EKS, Route 53, RDS, and S3.
+* `[Terraform]` Automated configuration management of infrastructure such as
+ EC2, ELB/ALB, EKS, Route 53, RDS, and S3.
* Worked with Jenkins, Ansible, Packer, and Terraform to automate system build
processes (AWS AMIs, KVM backing disks, laptop provisioning)
-* Worked on Development Infrastructure team automating processes and
- infrastructure to support development, testing, engineering productivity,
- security, cloud operations, and financial operations teams.
-
Jeppesen, A Boeing Company
--------------------------
@@ -151,23 +170,24 @@ Jeppesen, A Boeing Company
* Worked on the environments team supporting about 80 developers
-* Developed portable self-extracting installer to integrate and automate the
- deployment process. The installer reduced a 40 page install document to a
- single command using a bash header with a multi-stage binary payload footer.
+* `[Bash]` Developed portable self-extracting installer to integrate and
+ automate the deployment process. The installer reduced a 40 page install
+ document to a single command using a bash header with a multi-stage binary
+ payload footer.
-* Automated Linux environment setup and management with Ansible 2.6. Wrote
- roles for deploying and configuring Apache tomcat, Apache httpd, Apache
- Artemis, Oracle JRE, program-developed software, etc.
+* `[Ansible 2.6]` Automated Linux environment setup and management. Wrote roles
+ for deploying and configuring Apache tomcat, Apache httpd, Apache Artemis,
+ Oracle JRE, program-developed software, etc.
* Automated software version inventory process to ensure the versions of all
pertinent external endpoints in every environment matched as the product
advanced through the phases of testing.
-* Automated deployments to sixteen environments using Jenkins. Deployment
- criteria were based on schedules, git repo tag creation, and commit pushes
- (each environment with different criteria).
+* `[Jenkins]` Automated deployments to sixteen environments. Deployments
+ triggered by schedules, Git repo tag creation, and commit pushes (each
+ environment with different criteria).
-* Automated server configurations with Ansible. Wrote scripts to generate
+* `[Ansible]` Server configuration automation. Wrote scripts to generate
dynamic playbooks and dynamic inventories. Roles were separated into two
tiers: the vendor tier and proprietary tier for separation of concerns.
@@ -194,28 +214,28 @@ Truven Health Analytics
* Worked as a liaison between devops, configuration management, development,
production operations, and application operations teams
-* Created documented bash scripting framework to consistently automate builds,
- deployments, and cluster switches. This reduced feature development time and
- bug fix time. It also increased process scalability, visibility, and
- stability.
+* `[Bash]` Created and documented scripting libraries to improve builds,
+ deployments, and cluster switching processes. This reduced feature
+ development and bug fix time and increased process scalability, visibility,
+ and stability.
-* Implemented a configurable self-extracting package container [in bash] which
+* `[Bash]` Implemented a configurable self-extracting package container which
enabled complex scripts, frameworks, and resources to be reduced to a single
- file and subsequently easily deployed.
+ file and subsequently easily deployed on air-gapped systems.
-* Wrote a configurable server validation scripting framework for ensuring any
- given server met the team's deployment requirements for the specified server
- role (eg: frontend, database, storage, tomcat, etc).
+* `[Bash]` Wrote a configurable server validation scripting framework for
+ ensuring any given server met the team's deployment requirements for the
+ specified server role (eg: frontend, database, storage, tomcat, etc).
-* Automated developer machine build process so developers would have consistent
- environments in which to write, build, test, and deploy their code. This
- reduced a 2 week per-employee setup time to about 15 minutes.
+* `[Bash]` Automated developer machine build process so developers would have
+ consistent environments in which to write, build, test, and deploy their
+ code. This reduced a 2 week per-employee setup time to about 15 minutes.
-* Created a command line Artifactory api wrapper for managing artifacts using
- Perl. Wrapper could download, upload, and copy artifacts to alternate repos
- (eg: for a promotion process).
+* `[Perl]` Created a command line Artifactory api wrapper for managing
+ artifacts. Wrapper could download, upload, and copy artifacts to alternate
+ repos (eg: for a promotion process).
-* Wrote Ansible roles to deploy and configure MongoDB, Zabbix, Graylog,
+* `[Ansible]` Wrote roles to deploy and configure MongoDB, Zabbix, Graylog,
Elasticsearch, Rsyslog, Tomcat, and others.
* Automated migration of more than 3200 SVN repos to Git.
@@ -241,22 +261,21 @@ Time Warner Cable
* **Primary operating systems**: Centos 6.5 and 6.6
-* Wrote a bash script to automatically upgrade the GitHub Enterprise cluster
- with minimal human interraction. This also handled several workarounds to
- unfixed bugs in the appliance software.
+* `[Bash]` Automated upgrades of the GitHub Enterprise cluster with minimal
+ human interraction, including several several workarounds to unfixed bugs in
+ the appliance software.
-* Wrote parallel processing C program to benchmark legacy VMWare network
+* `[C]` Wrote parallel processing program to benchmark legacy VMWare network
against new OpenStack network
-* Wrote C program to parse 8 million firewall rules and nginx access logs to
- determine how many were needed
+* `[C]` Automated audit of 8 million firewall rules and NGINX access logs to
+ determine how many rules were actually needed
-* Managed configurations with Puppet Enterprise 3.2, r10k for dynamic
- environment deployments, and Hieradata to support separation of data and
- modules
+* `[Puppet 3.2]` Configuration management, using r10k for dynamic environment
+ deployments and Hieradata to support separation of data and modules
-* Assisted automating legacy VMWare infrastructure (54 hypervisors) to keep it
- running smoothly until migration to OpenStack had been completed
+* Automating legacy VMWare infrastructure (54 hypervisors) for migration to
+ OpenStack
CenturyLink, Inc.
@@ -269,24 +288,24 @@ CenturyLink, Inc.
</div>
-* **Primary operating systems**: Centos 6.5, 6.6, 7, Ubuntu Server
+* **Primary operating systems**: CentOS (6.5, 6.6, 7), Ubuntu Server
* Deployed and managed Mapr (Hadoop distribution) for development and test
clusters
-* Wrote bash script to manage and synchronize users and their home directories,
- detect and allocate unique uid/gid pairs, and perform various user-related
- checks across a cluster of any size
+* `[Bash]` Automated management and synchronization of users and their home
+ directories, detect and allocate unique uid/gid pairs, and perform various
+ user-related checks across a cluster of any size
-* Set up HAProxy for TCP forwarding of LDAPS traffic from corporate into the
- lab (dev/test) network for authentication
+* `[HAProxy]` Proxy of LDAPS traffic from corporate into the lab (dev/test)
+ network for authentication
-* Performed various MediaWiki administrative tasks (backups, page management,
- writing templates, etc).
+* MediaWiki administrative tasks (backups, page management, writing templates,
+ etc).
-* Established team version control best practices within git
+* Established team version control best practices within Git
-* Wrote Ansible playbooks to deploy and configure various types of servers
+* `[Ansible]` Infrastructure configuration automation
Intelligent Software Solutions, Inc.
@@ -299,14 +318,15 @@ Intelligent Software Solutions, Inc.
</div>
-* Wrote chef (version 10) cookbooks (recipes, documentation, templates,
- providers, resources, etc.) to deploy base tomcat instances and overlay any
- combination of wars across any number of systems
+* **Primary Operating Systems**: RedHat Linux (6 and 7), Windows 7
+
+* Wrote Chef v10 cookbooks to deploy any combination of war files on top of
+ base tomcat instances
-* Wrote chef cookbook compatibility layer for Windows-specific deployments
+* Wrote Chef cookbook compatibility layer for Windows-specific deployments
using cookbooks designed for Linux
-* Built a templatized virtual chef development environment on Linux KVM with
+* Built a templatized virtual Chef development environment on Linux KVM with
startup times under 5 seconds.
@@ -320,24 +340,22 @@ DaVita
</div>
-* **Primary operating systems**: AIX (versions 5.3 and 6.1) and RedHat Linux
- (versions 4 - 6)
+* **Primary operating systems**: AIX (5.3 and 6.1) and CentOS Linux (4 - 6)
-* Standardized, consolidated, and converted team documentation from
- Sharepoint Shared Documents to MediaWiki
+* Standardized, consolidated, and converted team documentation from Sharepoint
+ to MediaWiki
* Audited and remediated security holes to harden Linux and AIX servers
-* Wrote and documented a Perl script to gather data and generate a report
- detailing all of the local and Active Directory users with access to the
- company-wide FTP site.
+* `[Perl]` Automated reocurring audit of local and Active Directory users with
+ access to a public facing company FTP site.
-* Wrote and documented a Perl script to generate sudoers SOX compliance
- reports. The script parsed the global sudoers file and queried Active
- Directory to determine granular extent of all permissions.
+* `[Perl]` Automated monthly SOX compliance report for the intersection of our
+ global sudoers configs with Active Directory integration - all users and all
+ commands everywhere.
-* Wrote a bash script to perform automated SSH key rotation every three months
- and when an employee left
+* `[Bash]` Automated jump server SSH key rotation every three months and when
+ an employee left
@@ -351,12 +369,12 @@ Dish Network
</div>
-* Managed over 1,000 JVM application instances (WebMethods, Weblogic, and
- Tomcat) running on Solaris and Linux
-
-* Wrote Perl scripts to process log files, gather statistics, perform software
- upgrades, manage rolling restarts, etc.
+* **Primary Operating Systems**: Solaris and RedHat Linux
+* Worked on a team of 8 to manage over 1,000 JVM application instances
+ (WebMethods, Weblogic, and Tomcat) running on Solaris and Linux, writing Perl
+ scripts to process log files, gather statistics, perform software upgrades,
+ manage rolling restarts, etc.
USDA
@@ -369,12 +387,11 @@ USDA
</div>
-* Built and configured Red Hat Enterprise Linux (version 5) web servers
- tailored for each project
+* **Primary Operating Systems**: RedHat Enterprise Linux (version 5), Windows
+ Server 2003
-* Analyzed test environment needs to designed scaled down test environments
- based upon network architecture diagrams of the proposed production
- environment
+* Analyzed test environment needs to design scaled down test environments based
+ upon network architecture diagrams of the proposed production environment
* Constructed test clusters (one controller and two test agents each) for load
testing with Visual Studio

Generated by cgit