Jack Unrau

Senior-level software engineer with over fifteen years of experience in IT, and over nine years of experience architecting, designing, and developing applications using Microsoft .NET technologies.  Has worked on all application tiers, from the database to the UI.  Specializes in parallel and distributed computing, creating robust, scalable, service oriented applications for the enterprise, the desktop, and the web.  Experienced in all phases of the software development lifecycle.  Technical leader and mentor, and sought-after team member for resolving complex problems.

 

Skills Summary

   Software Engineering

o   .NET – C#, Windows Services, WCF, WPF, LINQ, Web Services, Entity Framework

o   Object oriented design & development

o   Parallel and distributed computing

o   HTML, CSS, JavaScript

o   Design patterns

o   XML

o   Software Development Lifecycle, Agile/Scrum

   Database

o   SQL Server 2008, T-SQL

 

   Documentation

o   UML, Visio

 

 

Professional Experience

Principal Engineer, Vantiv, Inc., Englewood, Colorado                                                                                  9/2010 – Present

Payments processing, 2,800 employees.

Vantiv acquired the prepaid processing platform from Springbok’s bankruptcy.  Technical lead on development team, responsible for architecting, designing, and developing new applications in addition to those acquired from Springbok.  Focused on architecture and development in the application layer hosted by Windows services, and well as the web service-based API.

Key achievements:

          Created job scheduler for scheduling and running parameterized jobs.  Used the Managed Extensibility Framework so that jobs could be discovered and managed independently of each other.

          Architected and developed telemetry subsystem to provide metrics, logging, and system health for the prepaid platform.  Telemetry data allowed for quick troubleshooting, performance monitoring, and overall health of the platform, as well as health and performance-related reporting.

          Designed and developed business rules engine for the transaction processor to apply rules to prepaid card transactions based on transaction content, velocity, and product configuration.

          Enhanced dashboard to include management and monitoring for all components on the prepaid platform, including card transactions, web service calls, and job runs.

          Architected and built extensible frameworks within the prepaid platform so that other developers could focus on business logic, rather than how to integrate the logic into the platform.

Staff Engineer, Springbok Services, Inc., Englewood, Colorado                                                                 12/2009 – 9/2010

Financial services, 100 employees.

Technical lead on development team, responsible for architecting, designing, and developing new applications.  Mentored other members of the development team.  Architected and developed services layer and user interface for real-time prepaid debit card transaction processor using Microsoft .NET technologies.  Worked on new and existing functionality in other applications, including a web service API exposed to clients, and an internal ERP, in both .NET and database layers.

Key achievements:

          Real-time transaction processor architecture allowed for an arbitrary number of additional processors to be pooled at run-time to achieve load balancing and a high degree of scalability without using a third party load balancer.

          Used WCF for communication layer between Windows services and dashboard user interface enabling duplex, real-time communication between all system components.

          Dashboard user interface provided real-time performance and exception monitoring, and administrative functions.

          New architecture increased overall transaction processing throughput by five times with half the number of servers that the old architecture required.

 

Senior Software Engineer, Open Scan Technologies, Inc., Denver, Colorado                                      9/2008 – 12/2009

Computer software, 35 employees.

Lead member of the development team architecting and building a services layer for paper-based remittance processing system using Microsoft .NET technologies.  System was to replace legacy VB6 applications, but provided for interfacing with them so rewriting everything up front wasn’t necessary.  Mentored other developers and created learning exercises used across iterations to build the team’s .NET skillset.

Key achievements:

          Designed and developed a plugin system so that the software could use pluggable components to allow for customer-specific functionality and for component updating without modifying core code.

          Developed components utilizing the WF Rules Engine so that core software could remain static, but use changeable, declarative business rules.

          Created clonable services so that legacy COM and third party components could be isolated in their own process.

 

Senior Software Engineer, Springbok Services, Inc., Englewood, Colorado                                          11/2007 – 9/2008

Financial services, 100 employees.

Lead member of the development team designing and building a custom SOA-based ERP for prepaid debit cards; was technical lead for product and card management ERP modules.  Designed and developed all tiers for modules utilizing WCF, LINQ-to-SQL, ASP.NET, and AJAX.  Built business objects in application layers and defined data contracts for use by services.  Migrated legacy applications from .NET 1.1 to 3.5.

Key achievements:

          Built proof-of-concept for next-generation ordering module using new .NET 3.5 data-bound controls and AJAX controls for a rich and responsive user experience.

          Used LINQ-to-SQL and stored procedures to rapidly develop data access layers.

 

Software Engineer, Computer and Communication Technologies, Inc., Englewood, Colorado    6/2005 – 10/2007

Telecommunications, 30 employees.

Member of the development team building secure connection management software for mobile PC users in C#.  Technical lead for design and development of client, as well as developer for the server application; coordinated with the server lead to design communication between components.  Worked with overseas business analysts to define requirements, and overseas testing team to test software.  Performed research and analysis, as well as proofs-of-concept for new networking and other hardware to demonstrate how it would integrate with the software.

Key achievements:

          Implemented client application using Windows service and WinForms UI to create an asynchronous, message-based connection management system to control the user’s network connectivity and security.

          Consumed web services from policy management and distribution servers so that administrators could remotely update users’ connection and security policy, and from QOS server to track client usage and statistics.

          Created custom-drawn WinForms UI elements, and localized application in English and Japanese.

          Developed hardware management code using C# and C++ and substantial use of Windows APIs to control 802.3 and RAS/modem devices, as well as printing and removable media.

 

Senior Engineer, Gateway, Inc., Lakewood, Colorado                                                                                     4/2000 – 6/2005

Computer and electronics manufacturing, 22,000 employees.

Key member of the development team building custom functionality into Siebel; enhanced Siebel CRM software, and participated in entire development cycle including needs assessment, design, development, and testing. Collaborated with IT Analysts to assist with design and analysis tasks. Established coding and configuration standards for development team. Served as technical lead for several small projects.  Provided technical guidance for Siebel configuration and eScripting.

Key achievements:

          Extended Siebel core functionality by developing COM DLLs and custom ActiveX controls deployed with Siebel, as well as extensive eScript scripting.

          Built applications using Excel and Access with VBA to upload, extract, and manipulate Siebel data from the desktop.

          Developed VB.NET applications, combined with Oracle stored procedures, to extract data from Siebel for import into other applications.

 

Systems Analyst, Tri-State G&T Association, Inc., Westminster, Colorado                                              6/1999 – 4/2000

Utility, 700 employees.

Managed several critical projects from conception through entire software development life cycle. Interacted extensively with end users at remote sites to establish and define requirements and offer technical expertise regarding best solutions. Maintained applications utilizing Oracle Developer/2000 for custom ERP system; collaborated with team of developers to create database applications.

Key achievements:

          Designed and developed multi-user Access application for easement tracking after acquisition of utility assets; program provided the ability to track and report on land rights, saving legal department from performing activities manually.

          Designed and developed multi-user Access application that tracked power plant pollution statistics and generated reports, and built a website to view the reports, resulting in a more robust solution which improved the ability to view pollution statistics reports for government compliance from a remote power plant.

 

Education and Professional Development

Colorado School of Mines

Bachelor of Science:           Mathematical & Computer Sciences, Minor in Business and Economics.

GPA:  3.273/4.0

 

Microsoft Certified Application Developer (MCAD) – .NET

 

Affiliations

          Association of Computing Machinery (ACM)

          Mensa