1 Resume
2 ======
3 :author: Aaron Ball
4 :email: aaronb@oper.io
5 :website: https://oper.io
6 :sourcecode: https://oper.io/src
7 :mobile: +1 720-319-7799
8 :no title:
9
10 [role="resume-author-sect"]
11 ____
12 [role="resume-author-name"]
13 Aaron +
14 Ball
15
16 [role="resume-author-contact"]
17 * {email}
18 * {mobile}
19 * {website}
20 * {sourcecode}
21 ____
22
23
24
25 PROFILE
26 -------
27
28 * **Languages**: Bash (7 years), Perl (4 years), C (2 years), Python (9
29 months), Ruby (7 months), C++ (9 months), CSS and XHTML (7 years), PHP
30 (versions 4 and 5 - 7 years), JavaScript (2 years)
31
32 * **Tools**: Git (7 years), Jenkins (3 years), Ansible (3 years)
33
34 * **Linux**: 9 years - Crux, Arch, Gentoo, CentOS, RedHat, Debian, and Ubuntu
35
36 * Proficient in Linux infrastructure automation, security, troubleshooting,
37 design, and management; networking design, security, analysis, and
38 troubleshooting; and service design and abstraction.
39
40 * Knowledgeable in object oriented theory and its application in
41 infrastructure, security, and code design
42
43
44 EMPLOYMENT
45 ----------
46
47 [role="job"]
48 ____
49
50 |====
51 | Jeppesen, A Boeing Company, Denver, Colorado | August 2017 - October 2018
52 | Software Integration Engineer | * Contract
53 |====
54
55 * Worked on the environments team supporting about 80 developers
56
57 * Developed portable self-extracting installer to integrate and automate the
58 deployment process. The installer reduced a 40 page install document to a
59 single command using a bash header with a multi-stage binary payload footer.
60
61 * Automated Linux environment setup and management with Ansible 2.6. Wrote
62 roles for deploying and configuring Apache tomcat, Apache httpd, Apache
63 Artemis, Oracle JRE, program-developed software, etc.
64
65 * Automated software version inventory process to ensure the versions of all
66 pertinent external endpoints in every environment matched as the product
67 advanced through the phases of testing.
68
69 * Automated deployments to sixteen environments using Jenkins. Deployment
70 criteria were based on schedules, git repo tag creation, and commit pushes
71 (each environment with different criteria).
72
73 * Automated server configurations with Ansible. Wrote scripts to generate
74 dynamic playbooks and dynamic inventories. Roles were separated into two
75 tiers: the vendor tier and proprietary tier for separation of concerns.
76
77 * Built and administered Okta authentication backend (users, groups, signon
78 policies, service accounts, etc.), for twenty different application
79 instances.
80
81 * Assisted in planning and automation of migration from on-site datacenter to
82 Microsoft Azure.
83
84 * Primary operating systems: Centos 6.9 - 7.7, RHEL 6 - 7
85 ____
86
87
88 [role="job"]
89 ____
90
91 |====
92 | Truven Health Analytics, Denver, Colorado | January 2016 - August 2017
93 | Senior Development Operations Engineer |
94 |====
95
96 * Worked as a liason between devops, configuration management, development,
97 production operations, and application operations teams
98
99 * Created documented bash scripting framework to consistently automate builds,
100 deployments, and cluster switches. This reduced feature development time and
101 bug fix time. It also increased process scalability, visibility, and
102 stability.
103
104 * Implemented a configurable self-extracting package container [in bash] which
105 enabled complex scripts, frameworks, and resources to be reduced to a single
106 file and subsequently easily deployed.
107
108 * Wrote a configurable server validation scripting framework for ensuring any
109 given server met the team's deployment requirements for the specified server
110 role (eg: frontend, database, storage, tomcat, etc).
111
112 * Automated developer machine build process so developers would have consistent
113 environments in which to write, build, test, and deploy their code. This
114 reduced a 2 week per-employee setup time to about 15 minutes.
115
116 * Created a command line Artifactory api wrapper for managing artifacts using
117 Perl. Wrapper could download, upload, and copy artifacts to alternate repos
118 (eg: for a promotion process).
119
120 * Wrote Ansible roles to deploy and configure software such as MongoDB, Zabbix,
121 Graylog, Elasticsearch, Rsyslog, Tomcat, JDK, and others.
122
123 * Automated migration of more than 3200 SVN repos to Git.
124
125 * Established and documented Git development processes for the team. This
126 included release, branching, tagging, and peer-review processes.
127
128 * Managed deployments using a combination of Ansible, Bash, Perl, and Jenkins.
129
130 * Reduced Jenkins-triggered infrastructure deployment process from
131 over 300 jobs down to five jobs.
132
133 * Primary operating systems: Centos 5.9 - 6.7, RHEL 5 - 6
134 ____
135
136
137
138 [role="job"]
139 ____
140
141 |====
142 | Time Warner Cable, Denver, Colorado | March 2015 - January 2016
143 | Senior DevOps Engineer |
144 |====
145
146 * Wrote a bash script to automatically upgrade the GitHub Enterprise cluster
147 with minimal human interraction. This also handled several workarounds to
148 unfixed bugs in the appliance software.
149
150 * Wrote parallel processing C program to benchmark legacy VMWare network
151 against new OpenStack network
152
153 * Wrote C program to parse 7.9 million firewall rules to determine how many
154 were actually needed by also parsing nginx access logs
155
156 * Managed configurations with Puppet Enterprise 3.2, r10k for dynamic
157 environment deployments, and Hieradata to support separation of data and
158 modules
159
160 * Assisted automating legacy VMWare infrastructure (54 hypervisors) to keep it
161 running smoothly until migration to OpenStack had been completed
162
163 * Used Github Enterprise and Git for code versioning, with wiki functionality
164 for documentation, and pull request system for code review
165
166 * Primary operating systems: Centos 6.5 and 6.6
167 ____
168
169
170 [role="job"]
171 ____
172
173 |====
174 | CenturyLink, Inc., Denver, Colorado | August 2014 - February 2015
175 | Linux Engineer | * Contract
176 |====
177
178 * Deployed and managed Mapr (Hadoop distribution) for development and test
179 clusters
180
181 * Wrote bash script to manage and synchronize users and their home directories,
182 detect and allocate unique uid/gid pairs, and perform various user-related
183 checks across a cluster of any size
184
185 * Set up HAProxy for TCP forwarding of LDAPS traffic from corporate into the
186 lab (dev/test) network for authentication
187
188 * Performed various MediaWiki administrative tasks (backups, page management,
189 writing templates, etc).
190
191 * Built a team Gitlab server and organized and established team version control
192 processes
193
194 * Wrote Ansible playbooks to deploy and configure various types of servers
195
196 * Worked primarily with CentOS 6.5, 6.6, 7 (a few hundred), as well a few
197 one-off Ubuntu servers
198 ____
199
200
201 [role="job"]
202 ____
203
204 |====
205 | Intelligent Software Solutions, Inc., Denver, Co | March 2014 - August 2014
206 | DevOps Engineer | * Contract
207 |====
208
209 * Wrote chef (version 10) cookbooks (recipes, documentation, templates,
210 providers, resources, etc.) to deploy base tomcat instances and overlay any
211 combination of wars across any number of systems
212
213 * Wrote recursive chef cookbook dependency enumeration script in Ruby (1.9)
214
215 * Designed and built chef cookbook compatibnility layer for Windows-specific
216 deployments using cookbooks designed for Linux
217
218 * Built a local virtual chef development environment running on kvm, managed
219 with libvirt apis. VMs could be created from a template in about two to five
220 seconds each.
221 ____
222
223
224 [role="job"]
225 ____
226
227 |====
228 | DaVita, Denver, Co | October 2012 - March 2014
229 | Linux/Unix Systems Engineer |
230 |====
231
232 * Administered AIX (5.3 and 6.1) and Linux (RedHat 4 - 6)
233
234 * Standardized, consolidated, and converted team documentation from
235 Sharepoint Shared Documents to MediaWiki
236
237 * Audited and remediated security holes to harden Linux and AIX servers
238
239 * Wrote and documented a Perl script to gather data and generate a report
240 detailing all of the local and Active Directory users with access to the
241 company-wide FTP site.
242
243 * Wrote and documented a Perl script to generate sudoers SOX compliance
244 reports. The script parsed the global sudoers file and queried Active
245 Directory for all users to determine exactly who had permissions to sudo run
246 what commands and on which systems across the environment
247
248 * Wrote a bash script to perform automated SSH key rotation every three months
249 and when an employee left
250 ____
251
252
253 [role="job"]
254 ____
255
256 |====
257 | Dish Network, Englewood, Co | January 2011 - October 2012
258 | Tier II Analyst / Developer II |
259 |====
260
261 * Managed about 1,100 middleware application instances (WebMethods, Weblogic,
262 and Apache Tomcat) running on Unix/Solaris systems
263
264 * Wrote Perl scripts/one-liners with Regular Expressions to process log files,
265 gather statistics, perform Wily agent upgrades, manage rolling restarts, etc.
266 ____
267
268
269 [role="job"]
270 ____
271
272 |====
273 | USDA, Fort Collins, CO | August 2010 - December 2010
274 | Windows Systems Administrator | * Contract
275 |====
276
277 * Built and configured Red Hat Enterprise Linux (version 5) web servers
278 tailored for each project
279
280 * Analyzed test environment needs to designed scaled down test environments
281 based upon network architecture diagrams of the proposed production
282 environment
283
284 * Constructed test clusters (one controller and two test agents each) for load
285 testing with Visual Studio
286 ____
287
288
289 [role="job"]
290 ____
291
292 |====
293 | AMG Creative, Inc., Fort Collins, CO | August 2009 - August 2010
294 | Web Developer / Systems Administrator |
295 |====
296
297 * Programmed websites on Joomla and Wordpress using PHP, JavaScript, HTML, and
298 CSS.
299
300 * Built and managed five servers (one virtual [Domain controller, file server,
301 terminal server, backup server], another virtual [OpenVPN], one host [VMWare
302 Server], one print server [Ubuntu 10.04], one backup server [Ubuntu 10.04])
303 ____
304
305
306 [role="job"]
307 ____
308
309 |====
310 | CSU College of Business, Fort Collins, Co | August 2007 - October 2009
311 | Web Developer / Systems Administrator |
312 |====
313 ____
314
315
316
317 EDUCATION
318 ---------
319
320 [role="job"]
321 ____
322
323 |====
324 | Colorado State University, Fort Collins, CO | 2007-2010
325 | Bachelors in Business Administration |
326 |====
327
328 _Concentration_: Computer information Systems
329
330 Courses included Windows and Linux administration, Networking, SQL database
331 design and implementation, web application development (creating ASP.Net/C# and
332 Cold Fusion applications that accessed a database and used sessions), client
333 side application development (Visual Basic.Net), business math, marketing,
334 finance, accounting, and business communication.
335 ____
336
337 [role="witty-remark"]
338 /* This resume was proudly generated with Asciidoctor, some clever css, and a
339 Makefile */
|