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