621 S Burgess Ave
Columbus, OH 43204
Phone: (562) 743-1807
Living in Columbus Ohio (updated 5/24/2012)
davidihnen@gmail.com
Software DevelopmentSenior Perl programmer |
Front EndAJAX |
Administration and SupportApache |
System suppportDebian Linux |
DatabasesmySQL |
Senior Application Developer0 |
November 2012 to present |
Manta Media Columbus, OH Settled down in Columbus, Ohio to work with Manta!
Member Service Consulted and assisted with the member service project, integrating tests and refactoring into the design.
Test Automation System Given free head to create and advocate an automatic testing framework, researched and built prototype of the test system. Continuing to work to advocate and train coworkers to work with the system.
Perl Programmer |
November 2010 to November 2011 |
Tek Systems Boca Raton, FL. Traveled to the land of warm winters to contribute to an old perl application. When springtime came around, converted to full-time Telecommute and continued working from more northerly climes.
Windows VPS Integration Responsible for frontend template modifiations and backend integration programming in support of a product configuration module. Created integration objects for the new remote system. Wrote extensive tests tagetting 100% code coverage statistics. Represented team in meetings with project management to clarify requirements and answer questions.
Zimbra Integration Part of a team working on a high priority integration between the order provision billing system with the new Zimbra mail system. Rewrote the prototype library into a normalized, object oriented interface. Used exceptions for error handling and encapsulated session establishment in the session object accessors. Wrote extensive tests to verify rewrite maintains original functionality.
Javascript Programmer |
June 2010 to November 2010 |
Xylo Technologies Rochester, MN. Traveled to the land of the Mayo clinic and formal work dress to contribute to javascript application development.
Mitochondrial Biobank Responsible for frontend javascript and backend SAS programming in support of an AJAX data storage and retrieval application. Changed data transport logic to utilize JSON. Abstrated repeating application memes into modules. Joined existing team in meetings with client users to clarify requirements and answer questions.
Programmer Analyst |
August 2009 to April 2010 |
Amazon Seattle, WA. Returned to Amazon to work in the global financial systems group again. Used knowledge of the existing systems to research subledger problems. Developed transaction testing framework. Analyzed, configured and tested another fate system integration.
PPCL Cleanup Responsible for researching troubled transactions in a subledger. Built a tool for analyzing subledger entries against a flexible set of modules to classify problems. Enhanced and tweaked performance of the test system. Wrote modules for the test system.
FATE Integration for Gift Certificate Systems messages Stepped into the project after the initial work was done to carry the integration work through validation and integration tests. A new set of requirements forced heavy modifications to the business rules. Built 247 test cases in the new testing framework and resolved the failures, including modifications of the WSDL definitions and and C++ support code modifications.
Programmer |
December 2008 to July 2009 |
Norchem Laboratories Flagstaff, AZ. Web Programming. Joined Norchem to work on a Web2.0 style Perl and Javascript based application with a small group of programmers.
Codename Sentry As programmer, not only responsible for fixing known bugs, but also designing, implementing , and modifying critical and core parts of the information management system as the specification iteratively evolves. Of particular interest was the intensive use of the DBIx::Class module for the model access layer.
Programmer Analyst |
April 2008 to November, 2008 |
Amazon Seattle, WA. Returned to Amazon to work in the global financial systems group. Acquired in depth knowledge of the existing systems by working trouble tickets. Analyzed, configured and tested the results of changes to the system
Merchants @ Canada Responsible for altering the financial systems configuration to accomodate the requirements of a new revenue source. Created extensive test cases to verify operation. Worked with accountants to verify behavior was as desired.
FATE Integration for Component Reversal Of Workflow project Working with a team of engineers, reverse engineered existing logic, and analyzed requirements. Implimented and tested configuration and code changes for a new event type within the FATE accounting event system, involving database store, XSD/WSDL type definition creation, and support of C++ support code modifications.
Business Rule Unit Tests Stepped up and created a perl based unit testing framework for the internal business rule configuration language. Defined and refined tests, created reports for validation of results. Augmented existing C++ unit test code to output results interactively in JSON form, both reducing time required to run tests, and allowing the automation of result analysis.
Perl Programmer |
January 2008 to April 2008 |
Harrah's Entertainment Las Vegas, NV. Assisted with creation, modification, and debugging of monitoring, utility, and reporting scripts for a soon to be deployed AIX based management system. Worked as a telecommuter at remote site, participating in daily phone conference meetings. I utilized test based development, AIX, Apache, Oracle, and Perl. Harrahs has an extensive change management beurocracy I needed to work within.
Web Reports Design Designed a support infrastructure to store and present historical reports. Four segment architecture involving collector, and separate terminal, HTML, and RSS display functionality
Unzipper Utility Created utility to extract from windows created zip files on AIX systems. Design and usage documentation required.
Green Screen Report Utilized test based development to create the first phase of the web reports design. Pleased with how easy it was to debug, ensure results and test alternatives with automated test harness in place. Design and usage documentation extensive.
Monitor augmentation Modified the second generation of a monitoring program of dubious lineage to add functionality. Abstracted existing functions into pieces to utilize in new features. Changed logging mechansim to be useful both now and in the future. Design and usage documentation part of project.
PHP Programmer |
June 2007 to November 2007 |
SellingSource.com Las Vegas, NV. Web programming. I was part of a PHP programming team for a successful web marketing firm. I utilized CVS, Linux, Apache, MySQL, and PHP
PHP Maintenance Worked as part of a team of programmers to fix bugs in PHP and MySQL queries in coordination with the QA department. Consulted on impact of changes and worked to improve the design of the application.
Code Merge Merged complex code changes between CVS branches. Developed abstraction layer to assist with the transition and addition of the new feature.
New Features Designed and implemented an appropriate solution providing greater levels of interaction than previously available in the application. Utilized AJAX and JSON extensively, developed new classes and extended the existing PHP framework to add functionality. Given free reign to attack new features.
XSLT/Java Programmer |
October 2006 to June 2007 |
Amazon Seattle, WA. As a member of the digital systems development team I utilized Perforce, Linux, XSLT, Perl, S3, and Java.
XSLT Transforms Assisted in the creation of a complex ant and xslt stylesheet based document processing system complete with java extensions.
Operations Support Programmed Perl and Expect primarily in support of operations, providing data mining, reports, and executing data reconciliation script. Interfaced with the Amazon S3 system extensively.
Java Programming Developed support library class structures for the new transform system, providing listing and retrieval facilities for FTP as well as Zip and gzipped tar files.
Xpath Programming Created complex XPath 2.0 expressions. Utilized regular expressions, tokenizing, substrings, indexes, and joins.
Communications Became progressively more involved in engineering planning within the group. Lent my expertise on the system to technical integration managers. Served as technical consultant on many phone calls with customers. Cross trained group members on my specific part of the system.
Senior Programmer |
May 2005 to September 2006 |
Streamray, Inc. Las Vegas, NV. Web programming. I was the senior local programmer for a leading adult entertainment broker. I utilized CVS, Linux, Apache, MSSQL, MySQL, and Perl
MSSQL to MySQL database migration Responsible for building and testing the database migration scripts designed to move the data store for the entire system to mysql from microsoft sql server. Developed a modular framework to describe the data transformation between the disparate systems.
Maintenance programming Continually responsible for maintenance programming per projects and specifications as site features are added, removed, and refined. Used bugzilla to track bugs. Worked with QA and management personnel frequently.
Develop promotion method Assisted with the design and did the implementation on a new method of ordering available models.
Refactor complex code Requirement was to take a complex, tangled, confusing piece of code and refactor it. Unexpected performance issues intrinsic to the system architecture forced a partial rewrite. 2257 Auditor Tool Tasked with replacing the existing auditing tool developed some time ago. Specifications were primarily speed of use and response. Consulted with the end users and devised a user interface for the solution. Implemented in perl cgi with extensive use of AJAX, DHTML and CSS. Learned and extensively utilized objects within javascript.
Independent Consulting |
June 2004 to May 2005 |
Color Climax Diekirch, Luxemborg. (telecommute) Responsible for ongoing maintenance and improvements on a high quality adult entertainment site. Implemented entirely new site design to use primarily static storage. Reengineered MySQL database for abstraction requirements. Extensive use of mod_perl and Server Side Includes.
Megagames Inc. Vancouver, Canada. (telecommute) Part time maintenance and programming in a legacy perl CGI scripting environment. Prototyped a custom database and feature integrated login system with Postgres.
A Reality Technologies Los Angeles, California. (on site) Full time support of A Reality's operations, Migrating web sites between Microsoft and Open Source, Working with Ecommerce transaction and shopping cart systems backed with MySQL. Automated the programmatic creation of PDF files.
Systems Programmer |
June 2002 to April 2004 |
Python International Las Vegas, NV. Web Programming. I was the sole programmer for a niche adult entertainment producer. I utilized Win2000, Access, Linux, Apache, Postgres, and Perl
Content Management Interface Programmed and tested a custom content management interface, allowing non-technical users to upload and configure content for display on a variety of sites without direct config file manipulation.
Ikonboard Upgrade Updated, fixed bugs, and migrated to new Ikonboard software backed by Postgres.
Phoenix Linux Data Center Installed and configured multi-server network system of content providing and secure ecommerce servers under Linux and Apache with Postgres database. Developed mod_perl apache module to track access patterns.
Las Vegas Data Center Installed and configured multi-server network system of content providing secure ecommerce servers under Win2000 and IIS5.
Ecommerce System Initially supporting a VB/Access solution developed and migrated to a Perl based shopping cart and site presentation and management system.
Content sites Supported access control details, tracking of user activity (with firewall integration for abuse), and Access Database.
Reporting Javascript - Created postgres database interfacing reporting scripts.
Newsgroup Browser System XML - Utilizing XSLT version 1.1, designed and implemented a complex, heavily recursive multi document stylesheet to generate the content pages. Developed support scripts and database.
Software Engineer |
January 1999 to February 2002 |
Secure Resolutions (antivirus software startup) Integration Engineer. Responsible for helping specify and design servers and networks for the project. Built web based integration system with Perlscript, IIS, and MSSQL.
Network Associates (McAfee team) Software Engineer. Created perl scripts, objects, and testing routines in support of the services and hardware offered.
Integra Telecom Programmer. Provided scripting talents within the office, integrating with Oracle and filtering data. Troubleshooted Expect script for telecom equipment interfacing.
MyCIO, Inc. Development Engineer. Wrote test plan and functional spec for email processing module of planned product. Programmed QMail system. Assisted with build system maintenance.
Network Administrator |
August 1996 to November 1999 |
Cisco Systems, Inc. San Jose, CA. Worked as network administrator in the development laboratory support group. I utilized Networking and Solaris knowledge, Perl, and Postgres
Solaris Workstation installation and maintenance Installed and maintained Solaris 2.5 workstations on SunSparc 20 through Ultra 2 hardware. Developed scripts to speed tasks. Supported engineers with configuration, setup, and troubleshooting of the workstations. Developed a script system to backup workstations to a central server.
NSMBU Building 1 Floor 2 Development Lab Support Network Designed and implemented 1500 node switched network to support lab development equipment. Three 5509 switches, redundant supervisors, RSMs, and power.
OIBU Israel Development Lab Support Network Designed and implemented a 150 node network to support the lab development equipment. Single 5500 switch, no redundancy.
OIBU Ottawa Development Lab Support Network Designed and implemented a 700 node switched network to support lab development equipment. Catalyst 5500 switch with redundant RSM's and supervisors supported Catalyst 1924 switches.
OIBU Building N Lab Web pages Programmed an extensive lab address management cgi perl web application with a flat text file back end. Programmed training data storage/retrieval cgi perl web application. Programmed cgi perl script to track calibration information for lab test equipment.
OIBU Building N Development Lab Support Network Took over and documented the existing lab network supported by Cisco 7513's. Migrated slow hub based network to hybrid switched and routed network without interrupting services. Alpha tested 8 port fast ethernet cards for the Cisco 12000 router, documenting a significant number of bugs.
OIBU Building 16 Lab Network Design Designed a large lab support network for 5500 network nodes. Executed phase 1: basic connectivity, switched infrastructure. Later phases involved moving to a redundantly routed infrastructure.
Jamestown Community College majoring in Computer Technology - 1992-1994
Courses in Solaris 2.x - Administration and NIS+ Administration - 1996-1997
Courses in Windows NT - TCP/IP and Installing NT - 1998
Courses at Cisco - Advanced Router Configuration, Installing, SNA Config, and Internetwork Troubleshooting - 1997-1998