1. William Hannahs
Data Engineer
32 Eland, WI 54427
715-253-3080 databasecowboy@gmail.com
Areas of Expertise
Experienced data engineer and developer employing Python, Java (J2EE/JEE), and other C like languages as
well as SQL and ORM tools in a variety of mobile, web, and cloud environments. Strong knowledge of
Database design and development, as well as networking and security; I know how to make the pieces and
put them together and have a long track record of innovation and leadership to collaborate effectively with
all levels of stakeholders to produce and deploy mission critical solutions.
Technology Summary
C based Languages:
C/C++/C# 15 years
Java 15 years
Perl 17 years
Python 9 years
JavaScript 15 years
Jquery 5 years
AngularJS 2 years
Bootstrap 2 years
NodeJS 1 year
Databases:
Oracle PL/SQL 23
Microsoft SQL Server admin - 12 years
T-SQL 6 years
IBM DB2, Derby 11 years
MySQL 15 years
ORM 15 years
JDBC ODBC 15 + years
hibernate 7 years
SQL Alchemy & Django API 3+ years
Development Tools & Methodologies
Agile 8 years
Test Driven Development 15 + years
Design Patterns 15 years
OOP 15 + years
ANT 15 years
Maven 7 years
Docker 1 year
Frameworks 10+ years
Spring, Seam, Wicket
Selenium 3 years
Additional technologies: HTML, Spring, Seam, Swing, Django, IIS, Apache, Websphere, CSS, Wicket, numPy, Pandas,
Mechanize, Encryption, SSL certs, Full Stack development, Cloud Computing (Amazon AWS, TGT Cloud Red), DevOps, Test
Driven Development, Agile Methodologies, Xtreme Programming, OOP, Design Patterns, ANT, Maven, Jenkins, Docker,
Chef, CVS, git, Selenium, Linux, A/IX, UNIX, Windows Server, SSO, Tenable, Alfresco, GIT, SVN Subversion
Professional Summary
They say the key to being a successful tech consultant is the ability to get boots on the ground and quickly
deliver solutions. While this is true, I strongly believe you don't get what you deserve in life, you get what you
negotiate. To get boots on the ground, one must first negotiate the path to action.
My success is not just based on technological abilities or ability to get my boots on the ground, but the ability
to collaborate with stakeholders and development teammates to identify and translate a business’s needs
into tools that empower and engage employees to confidently negotiate their domain and work as a team: I
achieve this goal by forging consensus; I listen to and coordinate stakeholders to efficiently identify and
address their concerns in order to build with them a road map in the direction that best aligns and achieves
their common business goals.
I work to deliver small solutions quickly that will lead to the long term institution of profitability. I have a
proven track record not only because I know technology but because I know people and am able to help
them identify their needs so we can build the tools that will enable them to not only do their jobs but
coordinate their efforts to best leverage the power of relationships, teamwork, and that elusive goal we
inelegantly call synergy – the alchemy that enables us to quickly generate and sustain the business equivalent
of a GPS for profitable direction.
2. I take pride in creating applications that not only work efficiently but that people find efficient and
comfortable to use. After all, the root of the word engineer is ingenious and it takes a bit of ingenuity to
identify and balance a client's business needs with the limitations of time and budget in order to deliver
software that will not only be an effective tool to grow the business and scalable to grow with the business,
but also actually work, work well, work reliably, cleanly, and ideally seemingly effortless. Therin lies the magic
and art underlying the science.
Professional Experience
Target Corporation
Data Engineer & Security Consultant July 2014- May 2015
Lead developer for Cloud-based Data Security Project to automate identifications of security vulnerabilities and
manage data and reporting as to PCI and HIPAA standards in light of evolving threat models and vectors.
Led development employing agile techniques to design, build, and deploy TASR (Target Attack Surface
Remediation). TASR is basically a solution toautomate and mine data from Tenible network scans in order to
create and collate data on existing vulnerabilities in order to apply rules based logic in order to assign
ownership and enable their remediation to be managed through a suite of custom tools including web based
remediation tracking as well as custom excel spreadsheet generation.
Technologies: Python modules including Matplotlib, numPy, Pandas, Mechanize, BeautifulSoup, Django, and
other libraries including working directly with Tenable API developers.. JQuery javascript to integrate ASP
.NET environment with Django hosted on IIS 8 on Windows Server 2012 connect to SQL Server 2012 v.11
employing technologies ranging from CHEF to Tenable.
Dynamic Web Development, Big Data, and Security Research
Python Data Engineer November 2013- May 2014
Dynamic Web Project incorporating Data Analysis, Spidering, Data Mining, and Predictive Analysis. Additional
supplimentary academic research in Algorithms, Bioinformatics statistics, and probability. Applied work in lab
project to build cycling news site start up based on automated tools to identify breaking news stories in
targeted international news agencies and with this data generate additional spiders to provide additional
material to build automated / annotated journalistic pieces in English to leverage the existing time gap in
reporting of foreign news within English speaking markets.
Technologies: Java, R, Python Matplotlib, numPy, Pandas, Mechanize, BeautifulSoup, Django, and other
libraries. Amazon AWS, Javascript: Jquery, AngularJS, Bootstrap, Node.js. MongoDB, Derby, MySQL
Collaborative Consulting
Senior Developer & Staff Manager 2012August - 2013 August
Responsible for team training, project management, staff evaluations, project leadership and support.
Taught courses on Java J2EE, RESTful Services, Amazon AWS, Informatica, UNIX Shell Scripting, Hibernate,
JavaScript, and Python.
Lead study groups for Java and Informatica Certification.
Mobile Payment Service (Collaborative Consulting)
Programmer Analyst/Python Developer 2013 May- 2013August
Member of performance engineering team evaluating transactions of mobile payment consumer service
developed for roll out by a national. Wrote scripts to generate consistent large test data sets for oracle
database, automate repeatable JMeter tests and persistence of results to a database & selected outputs to
3. spreadsheet.
Technologies: Python, Flask, Java, Jmeter, perl
Harvard Business School (Collaborative Consulting)
Senior Developer 2012 Dec-2013 May
Led team of Junior Developers on use of file management, content management, Javascript coding standards /
best practices, strategies for maintaining client look and feel while testing to ensure accurate, efficient, secure,
and seamless operations to port existing client domains from distributed PHP architecture to custom Amazon
AWS cloud based JBoss portal to centralize and streamline content mangagemnt employing Google Analytics
via JavaScript front end which interfaced with single sign-on service which negotiated access to client assets via
centralized server enabling generation of refined usage statistics.
Technologies: Amazon AWS, JBoss, Java, javascript, jquery, alfresco, jira, Jenkins, Google Analytics
Boston College (Collaborative Consulting)
Senior Developer May 2012 -November 2012
Led agile development team in rewrite of intranet web applications from diverse servers to work within single
portlet architecture resulting in leveraging of single-sign on, centralized administration and improved QoS and
security. The project built back end code using java to integrate mainframe, relation data-stores, directory
services, xml and json data source under a unified framework implementing Struts2 and Perl and conversions of
legacy C code to java. Generated Python Django Forms to record data of online users.
Technologies: Java J2EE, Struts2, Spring, CISC, iBatis, jquery, xml, json, bash shell, perl, C, PHP, Python regex,
directory services, cvs, jira, selenium
Pharmaceutical Company 2012-13 (Collaborative Consulting)
Support role for various small small and large ETL projects.
Technologies: Informatica, SQL, PL/SQL, T-SQL, Selenium, MS SQL Server and Oracle.
In House Cloud Programming Seminar Summer 2013 (Collaborative Consulting)
Summer seminar. Worked in small groups to create cloud based web apps using Amazon AWS, Java (JEE/J2EE),
Spring Framework, Linux Redhat Server, JBoss, and Oracle.
Technologies: Java, Spring Framework, PL/SQL, JBoss, Oracle, JavaScript JQuery, node.js.
Independent Contractor Data Analyst /Java & Python Developer 2010-2012
Open Source Developer November 2010-May 2011 (Independent Contractor)
Helped define a strategy to extend the data model longitudinally for open source social network analysis tool,
EgoNet / EgoWeb, for a long term international epidemiology study. Performed bulk of coding, database
redesign, and assisted doctoral student with final troubleshooting, refinements, and loading of graphical social
network charting feature to git repository for inclusion in final application.
Technologies: Java J2EE, Wicket, hibernate, derby, closure, R, git Used Python, Perl, CGI, JQuery, JavaScript
and JSON at the front end.
Used python scripts to update content in the database and manipulate files
USC medical research
Web Developer July 2010-Sept 2010 (Independent Contractor)
Ported open source standalone social network analysis tool, EgoNet / EgoWeb, to a web based model for
deployment using JBoss server, Oracle DB, accessed by distributed clients using iPad platform devices.
Technologies: Java J2EE, Wicket, hibernate, derby,Python, Tomcat, closure, R, git, active directory
4. Exelon Nuclear
Consultant, Mobile Developer 2010 October 2010-December 2010 (Independent Contractor)
Developed several components of a secure mobile monitoring system for use within nuclear facilities. The
assignment required accreditation by Homeland Security, power industry, and nuclear regulatory
commission.
Technologies: Java J2EE, Seam, Spring, hibernate, oracle, directory services, maven
Web Frameworks Jam
Consultant, Mobile Developer May 2006-June 2006 (Independent Contractor)
Collaborated with Bruce Eckel to put on Web Frameworks Jam exploring Django, TurboGears, Python,
Spring,Struts2 and other Frameworks and development tools. When the initial attendance interest was low,
worked with Bruce Eckel to publicize the event. He introduced me to Python Language to build an application to
use web spiders to scrape and collate email addresses in order to send out publicity material to various Java
and Python User Groups. Helped lead hands on labs in TurboGears and GWT.
http://www.mindviewinc.com/mediacast/interviews/Index.php
Technologies: Java J2EE, GWT, Spring, Struts, hibernate, Python, Django, TurboGears, SQL Alchemy
Genex
Systems Analyst / Lead Mobile Developer October 2004- June 2010
Full time salary position. Led initiative at a global genetics company to develop a mobile solution for collecting
and analyzing genetic data, organize customer data for field technicians, handle sales records, accounts
receivable, inventory tracking and audit management to ensure the right inventory was in the right place at the
right time via J2ME / J2EE / DB2everyplace architecture. Project was featured by Sun Systems as an example of
the powerful potential of the mobile platform. Ported mobile code to web with creation of a single sign on
portal to applications used for inventory audits and other internal use.
Technologies: Java J2ME, J2EE, Swing, Seam, JAXP, DB2, JDEdwards, Peoplesoft, Struts, SQL, hibernate, perl,
bash shell, perl, powershell, access, vb, svn, jtrack, Jira, ANT, maven
E-Dogs Evanston
Data Application Developer March 2004 – September 2004
Consultant. Designed and built Java application on top of MS Access database which functioned as point of sale
terminal and inventory management system tracking sales. Graphical interface enabled easy customer
invoicing. Automatic report orders, debit inventory, issue email inventory alerts, & generate shopping lists on
demand.
Technologies: various including: Java, Swing, JDBC, MS Access
UNISYS-WBS
Network Programmer 2002-2003
Full time position. Provided development, installation, and technical services ranging from network services,
automated controllers, to custom business applications.
Technologies: Satellite communications systems, Linux, Windows AD, Struts, SQL, PHP, cisco ios, Squid,
proprietary and open-source firewalls, linux package deployment, SNMP, bash shell, perl, powershell, nessus,
nmap, etc.
Boundary Waters, Minnesota
Wilderness Guide 1996-2000
Built cabin in remote wilderness area east of BWCA on property found when training sled dog team for Iditarod
in 1992. Moved to the Mooseloop, an area between Tom and Payne Lake in the Superior National Forest 12
miles from the nearest road where I trained my sled dog team. Was wilderness guide teaching handicapped
and handicapable people winter camping skills in the BWCA. In the summer, worked in a bike shop. Made living
5. day trading as well as some freelance web development and graphic art. For Y2K to return to school on grid.
Communications & Programming Dept., GMAC-RFC
Production Manager 1994-96
Managed team of developers and designers to produce wholesale mortgage trading solutions and information
tools. Managed development of corporate web presence. Contributed design of components mentioned in
Newsweek Magazine as an example of web innovations.
3M (Dawson Group)
Global Applications Developer 1990-94
Award winning design and technical work for Scientific Anglers which included leading migration of art work to
digital platform. Provided research for brand security product solutions and developed DB2 database available
online documenting solution of applications. In conjunction with the database, published quarterly journal
featuring images of examples.
Technologies: IBM DB2, QuarkXpress, Adobe Illustrator, Photoshop, Premiere, HTML, JavaScript, Java.
Metropolitan Financial
HR Database Developer 1990
Technologies: Oracle, Pagemaker, Windows 3.1, DOS
Education
Cornell College - Bachelor of Arts
Lawson Award & Newberry Scholar - 1989
Toronto School of Business
Internet Programming Diploma – 2001
Network & Internet Security Specialist 2002
Microsoft -2002
70-220 Designing MS Windows 2K Network Security
70-297 Designing Server 2K Active Directory and Network Infrastructure
BMO - Bank of Montreal - Nortel Router Secure Administration Technician Certification - 2003
Ouellette & Associates - Business Requirements Management - 2009
Brainbench - Linux System Administrator - 2004
- Ranked #1 Server Admin -Illinois
- Ranked #3 Java Developer - Illinois
ETL Informatica - Collaborative Consulting - 2012
Google SIY Core Program - Transformational Leadership – 2013
Princeton University Algorithms: Design and Analysis – 2014
Extended Professional Summary
My professional career started in cycling. I was a science and mathematics prodigy scoring in the top 99
percentile in these topics on my ACT exams. However, I’d also established the national record for the 20k
time trial, and had aspirations to join the pro peloton. Two eye opening years racing on teams in Europe
re-calibrated those aspirations, and I returned to the U.S. in order to complete my undergraduate degree
6. at Cornell College.
Upon graduation, I moved to Minneapolis, working as director of education at the National Sport Center
velodrome which led to opportunities to further my studies while gaining a foothold in the tech industry.
Being able to apply the discipline learned in cycling gave me a distinct advantage.
Like cycling, technology is both an individual and team pursuit. Success is built on not just extended lone
work, but also the ability to join in and work with others on your team. Being able to identify and quickly
leverage opportunity through often long and concentrated efforts is a core skill requisite in both cycling
and technology.
In Minneapolis I was able to translate these soft skills honed in cycling to quickly succeed: working my way
up through the ranks from tech writing and graphic design to being able to work with databases and
networked data troves as the information age took shape.
Part of the reason I chose to move to Minnesota was to pursue an interest in sled dogs. The culture of
consulting enabled me to work in the cities as well as take time to work with mushers in Northern
Minnesota. For example, when I read in the paper one morning about my current employer, Prudential
Home Mortgage’s decision to shutter their operations and at lunch ran into a musher who told me of an
opportunity to train a team for Iditarod, I was prepared to say, yes. When the snow melted, I was able to
find work as a consultant at 3M through an agency.
My increased time in Northern Minnesota, led me to relocate to Ontario where I was able to take
advantage of the strong dollar and excellent education system in Canada to return to school and greatly
improved my tech skills by studying computer science and earning honours level degrees in both
programming and network security tracks at the Toronto School of Business. With the skills I was able to
return to the U.S. and work seven years building cattle genetic applications for GenEx in central Wisconsin,
basically build a mobile version of Match.com for cows.
Since 2010, I’ve worked primarily as a consultant in various locations in order to expand and increase my
tech skills as well as maintain my dogs and home, a small farm I consider heaven. As a consultant, I’ve
built security and monitoring tools for Nuclear facilities and large retailers, social and medical research
tools for think tanks, telecoms and universities, as well as platforms for schools to manage student needs
and deliver coursework. I've enjoyed the challenges and variety of contract work but my long term goal is
to translate this experience to securing a long term permanent position in a challenging and engaging
environment where my skills can be utilized and leveraged.
7. at Cornell College.
Upon graduation, I moved to Minneapolis, working as director of education at the National Sport Center
velodrome which led to opportunities to further my studies while gaining a foothold in the tech industry.
Being able to apply the discipline learned in cycling gave me a distinct advantage.
Like cycling, technology is both an individual and team pursuit. Success is built on not just extended lone
work, but also the ability to join in and work with others on your team. Being able to identify and quickly
leverage opportunity through often long and concentrated efforts is a core skill requisite in both cycling
and technology.
In Minneapolis I was able to translate these soft skills honed in cycling to quickly succeed: working my way
up through the ranks from tech writing and graphic design to being able to work with databases and
networked data troves as the information age took shape.
Part of the reason I chose to move to Minnesota was to pursue an interest in sled dogs. The culture of
consulting enabled me to work in the cities as well as take time to work with mushers in Northern
Minnesota. For example, when I read in the paper one morning about my current employer, Prudential
Home Mortgage’s decision to shutter their operations and at lunch ran into a musher who told me of an
opportunity to train a team for Iditarod, I was prepared to say, yes. When the snow melted, I was able to
find work as a consultant at 3M through an agency.
My increased time in Northern Minnesota, led me to relocate to Ontario where I was able to take
advantage of the strong dollar and excellent education system in Canada to return to school and greatly
improved my tech skills by studying computer science and earning honours level degrees in both
programming and network security tracks at the Toronto School of Business. With the skills I was able to
return to the U.S. and work seven years building cattle genetic applications for GenEx in central Wisconsin,
basically build a mobile version of Match.com for cows.
Since 2010, I’ve worked primarily as a consultant in various locations in order to expand and increase my
tech skills as well as maintain my dogs and home, a small farm I consider heaven. As a consultant, I’ve
built security and monitoring tools for Nuclear facilities and large retailers, social and medical research
tools for think tanks, telecoms and universities, as well as platforms for schools to manage student needs
and deliver coursework. I've enjoyed the challenges and variety of contract work but my long term goal is
to translate this experience to securing a long term permanent position in a challenging and engaging
environment where my skills can be utilized and leveraged.