David E. Hainlin
Richardson, Texas(972) 480-0176
david.hainlin@icjava.com
Summary
I am a lead developer with 29 years of experience in software and systems development. I specialize in cultivating highly effective and agile development teams. My current passion is developing and integrating web based applications in weeks rather than months by relying on Ruby and productive frameworks such as Rails. My company, Intraspective Corporation, has been working with clients in Dallas for over 12 years.
- Over 12 successful Ruby on Rails projects
- Spring Framework and Acegi expert with three production systems including complex 20+ application portals
- High performance sites using Postgres and Redis
- Mentor and expert in Agile development methods and certified Scrum Master
- Test Driven Development and Continuous Integration evangelist
Experience
Ruby development on rapidly expanding startup providing international asset tracking (GPS) for oil/gas and fleet tracking. Second developer added to rescue the initial implementation and deployment. Developed and deployed billing features for back office staff to significantly automate invoicing. Championed and developed asynchronous processing using Redis and Resque to improve scalability and system elasticity. Implemented various mechanisms to gather metrics about the complex message processing and enrichment infrastructure. Developed chef-based provisioning of servers and migrated old production landscape to Rackspace with minimal downtime. Rehosted and redesigned system yielded over 10X improvement (response time) and significantly better scaleability. Migrated 30k Rails app to 2.3.11 (from 1.2.6) and continue to improve test coverage and robustness (TestUnit). Helped transition prototype-based Javascript framework to JQuery. Helped implement dashboard using HighCharts. Helped grow the development team and worked to switch from MySQL to Postgres. Implemented Monit and other proactive business monitors to improve visibility and reduce downtime. Leading the efforts to replace and modernize communications layers by reducing complexity and increasing elasticity (again with Redis/Postgres). Helping to plan growth of private cloud (VMWare) and dedicated servers. Helped develop new look and feel of the web site as well as unify the Restful API components. Continue to provide operations support and development of custom features.
Ruby on Rails development and maintenance of the popular invoicing web application. Led refactoring and initiated implementation of high availability site. Developed new billing and backend processes to ensure more accurate and reliable billing. Completed many improvements leading to significant security and performance gains. Supported web design team in implementing fresh new skin for the site. Provided customer support (Zendesk) and support in new feature planning. Implemented Rails 2 stack with RSpec and Cucumber tests using ActiveMerchant over older Paypal integration.
Lead developer for the Dallas Innovation Lab - a virtual team specializing in Ruby on Rails development using agile (Scrum) practices. Led the development on over a dozen intranet applications using Rails hosted on VMWare. Developed custom gems and generators to enable the team to quickly generate Nokia intranet compliant apps in minutes. Over 100 blog posts, screen-casts and presentations per year to support Rails, and agile methods. Initial Scrum Master on Nokia Agile steering committee. Developed robust development and deployment capabilities using Capistrano and Passenger. Promoted test driven development using RTest, RSpec, Shoulda, Cucumber, JMeter and Selenium. Set up continuous integration using CruiseControl.rb. Established Innovation Lab landscape including single sign-on (CAS), Memcached, SwitchIP, Passenger, MySQL, Apache. Established innovative ways to use internal wiki's to produce burn-down charts and to track stories and tasks on our agile teams. Developed a prototype video transcoding service using Rails.
Extensive use of Spring Framework, Spring MVC, Acegi, JA-SIG (Yale) CAS, Tiles, Spring JDBC, Quartz, Ehcache, JSTL/Velocity, SOAP, HttpInvoker, JCA, and a variety of Siebel, Domino, Inquira, and Informatica integrations. Within two months of project initiation, a proof of concept demonstration was completed and the system went live six months later on externally hosted Weblogic/Siebel platform. The portal merges three different user security domains into a seamless Single Sign On/Off system that handled complex trust proxy arrangements from the parent portal. To ensure effective communications with the multinational team, I established a development portal and wiki - centered around artifacts built from Cruise Control. Migrated 4900+ artifact repository from the Clear Case to Subversion which allowed outstanding monitoring/coordination using Fisheye.
Developed and deployed first Spring Framework based application within Nokia. Rearchitected and improved performance of Java WebStart component providing detachable, remote site conguration. Performance was increased 400X by moving from SOAP to HttpInvoker and restructuring the communications granularity. Lead developer on consumer relationship management data repository. Repository based on stateless session beans deployed in Weblogic 8.1/Oracle 9i and Solaris. Extensive JUnit based unit testing using continuous integration approach (Cruise Control/Clear Case). Over 97% of all source code was unit tested. Established team portal and wiki to promote agile and effective team communication. Provided JAAS based login context to provide database access based authentication/authorization to Weblogic resources. Developed and deployed metrics collection/analysis tool in 1 month using Spring Framework. This tool seamlessly integrated into existing employee portal by utilizing company LDAP for authentication.
Evaluated the processes and development approaches used by an Information Technology development group developing customized web-fronted, mainframe-backed applications for the university. Provided recommendations on iterative process, agile analysis/design techniques and test driven development. Provided training in UML modeling especially with respect to gathering and communicating requirements/features and development details. Provided customized templates and processing scripts for developing team intranet (portal), XML based requirements documents, and release management.
Provided development expertise for next generation Operations Support System (OSS) project. Integrated Siebel CRM, Micromuse Netcool/Precision, and custom C# web services on mixed Unix and Windows platforms. Developed web services (.NET) and custom XML transformers such as an XSLT cache. Developed Java (Axis) web services and clients for bi-directional integration between .Net and Micromuse. Supported requirements process and high availability architecture design in Dallas and in Tokyo. Developed testing framework (Junit/Ant) for Netcool and Impact testing. Developed Struts based administration application for managing events. Highly distributed team environment (Japan/Dallas) using SourceForge, CVS, in an agile/XP development style.
Architect, J2EE development mentor and project lead on custom Ship Crew Scheduling and Charter applications under new Oracle 11i financials rollout. Tight integration with Oracle HRMS, AR and GL modules. Responsible for all aspects including analysis, design, development, and production rollout. Integration with domestic/international payroll and accounts receivables. Delivered first phase (over 450 java classes) into production in 10 weeks by utilizing system architected on Jakarta Struts and Torqe. Deployed on Solaris based OC4J platform. Distributed development using Ant/Junit and CVS. Test driven development and J2EE-lite/Struts frameworks yielded exceptionally low defect rates and very high productivity. Extensive work with international teams yielded in a blended US/International product.
Architect and J2EE/OO mentor to Java team developing Procurement and Warehouse management system. This system provided a successful bridge from the mainframe (back end) to a new web based delivery vehicle to greatly automate and streamline the warehouse and distribution processing at TXU. Development platform was WebLogic on NT/AIX. Managed business modeling, requirements development and UML modeling. (Rational/Popkin System Architect/ClearQuest). Developed authentication gateway (J2EE/Weblogic) to provide WWW access to internal mainframe applications. Managed development of test/build environment using Ant and Junit. Other technologies included messaging middleware/MQ Series, PVCS, Struts, Ant, JDOM, Junit, Tomcat, SOAP and Rational.
Conducted study of third generation (3G) wireless technology for wireless messaging division. Assisted in development of EJB components for location based WAP gateway using XML/Java/Weblogic. Participated in new product strategy sessions and worked closely with management to develop project architecture and quality processes.
Integrator on advanced logistics and inventory management system. Integrated legacy Enterprise Java Beans system with SAP R/3 and Advanced Planning and Optimization including the business data warehouse and business intelligence products. As integration lead, organized other KPMG and SAP consultants, developed project plans, developed system requirements, and conducted architecture trade studies. Developed Java based B2B interfaces (WebMethods) using XML as the payload. Worked extensively to size and estimate system for production environment (Sun E10K/EMC). Developed and integrated communication between SAP products and EJB system (ActiveSoftware, WebMethods, WebLogic). Requisite Pro used for extensive requirements analysis.
Object oriented analysis and design (UML, Rational Designer Suite) of federal land asset management system. Refactoring existing design into a component based architecture using Java beans and the Java Servlets. Coordinating development of use cases, object models, and collaboration/scenario diagrams. Working closely with Department of the Interior personnel to develop a business model for their current workflow processes. Many activities with data transformation and loading of BAI information and data sources. Worked with Smalltalk and Java development teams.
Provided system engineering and software architecture expertise as senior software architect for next generation distributed financial systems for Citicorp. Strong participant in development of internal software and systems engineering processes to support upcoming SEI level 3 assessment. Tailored many KPA's for J2EE software development and assisted SQA and project management organization achieve SEI Level 2 within 9 months. Designed and prototyped dynamic virtual banking middleware technologies including distributed two-phase transactions (Encina), remote procedures (DCE), WEB (HTML, XML, Java/servlets/RMI, CGI, Perl, Oracle), security (DCE, certificates), code synthesis (customized IDL and C++ generators), and messaging (MQ Series).
Provided OMT and Booch object oriented analysis and design mentoring for large scale ATM network management system. Provided technical leadership and development of distributed multi-tiered ORBs (C++) in OSP and CORBA. Designed and deployed CMIP/FTAM based tech stacks into ATM switches.
Provided OOA/OOD architecture (Shlaer/Mellor) and team mentoring for an advanced mission planning system. Strong emphasis on casetools (Teamwork/Interleaf integration), and creating and enabling a multi-functional team. Prototyped a C++/Ada based mission planning tool to manipulate complex 3D models. Other duties included: C++/LISP development management, SEI software process development, transition of real-time embedded AI technology into production programs. I also managed eleven member research staff and conducted customer briefings. I did extensive proposal development and systems engineering/architecture design.
Principle investigator for the USAF Pave Pace Program, a multi-million dollar contract to develop the next generation avionics architecture system. Principle areas of investigation included fault tolerant super computers, distributed object oriented software concepts, optical networks, information fusion concepts, and a concurrent engineering process. Duties included principle customer interface, contract negotiations, subcontract management, project oversight, technical review, and management of ten engineers and two subcontracted teams. Charter member of the MCAIR AI Committee. Captured internal funding to pursue development for an avionics integrated maintenance expert system (AIMES) for the F/A-18 strike fighter. Designed the software and portions of the hardware for the AIMES system and led the project from initial testing through flight worthiness testing. AIMES flew on January 5, 1986 and was the first expert system to ever fly in a fighter aircraft.
Intern : Summer 1982 Procter and Gamble, Albany, GeorgiaWorked with the EE staff to trouble shoot production lines. Adapted programming on various automated manufacturing systems. Studied existing QA methods and developed/briefed process improvements.
Buzz
Ruby, Rails, Capistrano, Nginx, Thin, EventMachine, AJAX, Java, Spring Framework, Acegi, SSO, SQL, git.
Education
BACHELOR OF ELECTRICAL ENGINEERING - March 1983
GEORGIA INSTITUTE OF TECHNOLOGY, Atlanta, Georgia.
GRADUATE CERTIFICATE OF ARTIFICIAL INTELLIGENCE - June
1987
WASHINGTON UNIVERSITY, St. Louis, Missouri.