Executive Summary

I have been programming computers for almost 25 years. My specialty is in crafting the architecture of extremely complex systems and delivering great capability in a responsive and elegant user experience.

I've started and built three successful companies in my career. My first company, Universal Development Corporation (UDC), started during my college internship, created one of the first medical records systems to run on the then-new Microsoft Windows operating system. Simply named "Care", it was used by dozens of long term care facilities in the Midwest and made up of custom reusable components that were also sold as separate products to developer shops in almost every one of the Fortune 500 companies.

After divesting my ownership of UDC, I worked for various consulting firms for the next 2 years. On projects for these firms, I traveled the world, my management skills matured, I gained exposure to new industries, and I created relationships with influential mentors.

In 2000, I started my second company - Renkara Consulting - and have since performed a wide range of roles on numerous consulting engagements, including 12 separate projects as architect.

In 2007, when Steve Jobs introduced the iPhone, I could barely wait to make software for it. A year later, Apple produced the iPhone SDK and I started Renkara Media Group to build educational software for this amazing device. On the day the App Store opened, Renkara had five applications for sale, including the first foreign language education app and the first exam vocabulary builder app. Our phrasebook application - iPhraseBook - was selected by Apple as iPad App of the Week worldwide. Our vocabulary product AccelaStudy has been featured by Apple many times, including in the "Learn" TV commercial used to introduce the iPad in China. Every day, AccelaStudy is downloaded over 1,000 times every day and now enjoys an active base of over 8,000,000 users worldwide.

I now have over 17,000 hours of professional experience writing software for the iPhone and iPad. While I am concerned with all aspects of programming for iOS, the fluid animation of user interface elements is a critical focus.

I currently oversee the expansion of the Renkara product line and continue to provide consulting services to clients wishing to build amazing software.

2008 - Current

Products Created

AccelaStudy

I designed and built AccelaStudy to help people learn foreign language vocabulary faster, to help myself master a deck of Turkish flashcards I had been carrying around for 2 years. AccelaStudy was an immediate success and has grown to millions of users worldwide.

AccelaStudy Vocabulary Builder

Building on the success of AccelaStudy, which was originally designed for foreign language vocabulary, a new product was released which focused on English vocabulary for the GRE, GMAT, ACT, SAT, and TOEFL exams.

iPhraseBook

iPhraseBook was the world's first expandable phrasebook. Renkara approached HarperCollins and negotiated a license for their excellent phrasebook content, including audio pronunciations. A user can buy iPhraseBook, which comes with English, Spanish, French, German, and Italian, and using the In-App Purchase capability of iOS, can purchase additional languages for the product.

Contig

Contig is a mathematics game where three numbers are combined with basic math operations to arrive at a number on a gameboard. It is a competitive tournament game in many school districts around the United States. Contig was Renkara's first iPad application and one of the applications built without a physical device to test with. At the time development started, the iPad was not yet released and it was a race to have the product in the App Store on the day the iPad shipped.

Flashcard Champion

Flashcard Champion is an educational app for iPhone released in three versions. Basic Math was designed for children to help them memorize the basic addition, subtraction, multiplication, and division of numbers 1 - 12. States was designed to help children recognize each of the fifty US states and memorize their capitals. Presidents was built to help children recognize all of the American presidents.

Translate Now!

Translate Now! is a universal translator app built on top of the Google Translate service. It was featured by Apple around the world and downloaded over 1,000,000 times.

KanjiPictoGraphix

A collaboration with award-winning author Michael Rowley, KanjiPictoGraphix delivers Rowley's kanji mnemonics in a beautiful and responsive iPhone and iPad experience. KanjiPictoGraphix took over 2 years to design and build.

Engagements listed for generically-named clients, i.e. Energy Client, were performed under NDA and the engagement description is based solely on publically available statements.

Education Client - iPad Application

Feb 2013 - Current

As both programmer and architect, I served as part of a large team to design, build, and deliver mathematics and ELA content in a next-generation educational application. This application is one of the most ambitious applications to ever be targeted for a mobile platform.

Energy Client - iPad Application

2011 - 2015

Designed and constructed an award-winning iPad application to assist client in realtime energy pricing. Application is heavily integrated with backend web service APIs.

Pharmaceutical Client - iPad and iPhone Application

2011 - 2014

Designed and constructed an iPad application to deliver client's product catalog in an innovative new way.

Media Clients - iPhone Applications

2010 - 2013

Built several iPhone applications for a variety of top-tier media clients. Application allowed capture and minor editing of live video and realtime encoding and distribution of videos via client web services.

Deloitte – DESC

2005 – 2010

I moved to the DESC - Deloitte Entity Search and Compliance - project in 2005. DESC is a critical risk management system for DTT as it is where new opportunities are vetted for compliance across a variety of strict standards.

Primarily an ASP.NET application with a clustered SQL Server persistent store, DESC is the perfect example of a modern web application with heavy demands across many architectural measurements:

Performance. Used thousands of times daily by partners and other practitioners, the performance of DESC application had to be fast enough that these valuable employees were not wasting time waiting for slow page loads or inefficient queries.

Availability. DESC is a mission critical application. Unexpected downtime was not acceptable. High availability was provided through robust handling of error scenarios at the code level as well as through provisioning redundant hardware to eliminate single points of failure.

Scalability. DESC was designed to be installed on as many web servers as needed in order to scale out and meet the performance requirements of the application.

Securability. DESC contains an incredible amount of sensitive data and, thus, security was a paramount concern. Beyond normal authentication requirements, the data and the actions within the application required proper authorization. For example, for a given entity, only authorized parties were allowed to view certain details about the entity or to perform various actions for this entity. This authorization was provided through a complex data-driven rules engine that analyzed both the entity as well as its relationships to other entities and inbound changes that were dynamically applied to the entity structure.

Maintainability. DESC is a very complex application but was designed in a structured way such that each significant component is maintainable on its own without having to understand the rest of the system. Appropriate unit test coverage was provided so that components could be refactored by new developers without jeopardizing the correctness of existing code. New developers would only have to become familiar with a single component before delivering useful code.

Deployability. The DESC application was packaged as a set of assemblies which could be deployed automatically by IT staff to servers throughout the data center with minimal external dependencies and configuration.

Extensibility. Entity compliance is an ever-changing domain and, as such, any application in the space must be easily extended so that new rules can be injected into the various approval workflows. The DESC application was written such that these rules, as well as other significant components, were distinct, testable pieces of the system. Rules and components could be created and added on demand while others could be modified in place or removed, all with the system dynamically updating accordingly.

Deloitte – Deloitte Platform

Jul 2002 – 2005

I was brought onto the Deloitte Platform project at the end of July 2002. The Deloitte Platform is a global initiative within the DTT Global Office of Information Management to create a Web Services-based reusable architecture for deploying future globally-accessible web applications.

Initially my role was as software engineer in a Proof of Concept project where it was demonstrated that a number of existing applications and data stores could be exposed via a Web Services interface and hosted inside of two separate enterprise portals, SAP Enterprise Portal and Microsoft SharePoint Portal Server. I built a Web Service using C# in Microsoft Visual Studio.NET which encapsulated two Lotus Notes databases and made them searchable in the two portals. The Web Service was published in the UDDI directory hosted on our Microsoft Windows.NET Server. The Proof of Concept was a success and resulted in a change of strategy.

Instead of building a number of custom Web Services to provide portal functionality such as single sign on, search, and collaborative workspaces, the decision was made to partner with a number of 3rd party vendors and expose their existing functionality through Web Services interfaces.

My role changed to technical architect and I began a long process of evaluating 3rd party products for use in the portal. DTT uses both SAP Enterprise Portal and Microsoft’s SharePoint so all proposed solutions must work seamlessly with both portals. The products evaluated include the following: Verity K2 Enterprise, Vignette Content Management Suite, eRoom v5 and v6, Groove, Epicentric Modular Web Services, Netegrity SiteMinder, and Documentum. For each of these products I wrote an in-depth technical evaluation.

Upon final selection of the key products, which include all of the above except for Epicentric and Documentum, I was tasked with creating a global infrastructure to upport a full lifecycle deployment of the Deloitte Platform. Working with in-house and external administrators, I devised an infrastructure supporting development, QA, staging, and production for deployment in the United States, United Kingdom, and a to-be-decided Asia / Pacific installation. The development environment consisted of 9 servers and scaled up to an initial 20 server installation in production, supporting 15,000 users. The architecture is scaleable and will eventually support 150,000 internal and external users and will host the three major web sites for DTT including Deloitte.com, Deloitte Resources (intranet), and Deloitte Online (extranet).

Responsibilities

My responsibilities as technical architect for DTT were as follows:

  • Build a prototype portal in SAP EP and SharePoint demonstrating Web Service integration with Lotus Notes database
  • Create global infrastructure plan supporting development, QA, staging, and production
  • Evaluate and document use of 3rd party tools, including Verity, Vignette, eRoom, and Netegrity
  • Participate in numerous design and project status meetings

Kemper Insurance – APLUS Application

The assessment I wrote for Kemper in November 2000 was reviewed and a migration plan was approved to improve the architecture of the APLUS application. I was contracted to assist in this effort. The majority of my time on this project has been spent between development and production support. As part of the APLUS team I am assigned various production support issues that arise. Sometimes those issues are simple data changes, sometimes they are complicated bug fixes in the application code. The development time is spent adding new features to the application required by the business customer and cleaning up the existing code by separating logic into presentation and business tiers. A data tier was also proposed but has not been approved to date. The eventual goal being to have a thin client with the majority of the presentation logic and a server-based business tier. In July 2001, APLUS was one large client application.

The effort has been largely successful. New features have been added on time and on budget while significant improvements have been made to the structure and stability of the code base. The overall footprint has decreased despite additional features because of increased code reuse between areas of the application.

Responsibilities

My responsibilities as architect and developer for Kemper were as follows:

  • Maintain the DB2 ERD files using ERwin
  • Support the production version of APLUS
  • Design and development of new features of APLUS
  • Write functional and technical documentation for APLUS and participate in knowledge transfer to other developers
  • Participate in numerous design and project status meetings
  • Help create test data and test cases

Kemper Insurance – FIS Clearance Web Site

Jan 2002 – Mar 2002

The FIS Clearance web site was created to allow United Kingdom producers to clear business for FIS in the United States. After ruling out modifications to the APLUS client application, a web application was decided to be the best solution. Over a 12 week period, the site was created from scratch, including about 3 dozen ASP files and associated includes and 3 middle tier business objects. The ASP pages were written with Visual InterDev with integrated SourceSafe. The business objects were written with Visual Basic 6. The business objects returned data to the ASPs in a custom XML format. The MSXML component was used to create and parse these XML data streams. Photoshop 6 was used to create the images for the site.

As with other Kemper web applications, the site is served on IIS 4 and goes through the Webthority proxy server which handles SSL and LDAP-based authentication. Traditionally, a significant amount of work has gone into working with the Webthority team to test the security of the site and to ensure maximum availability.

Responsibilities

My responsibilities as architect and developer on this project were as follows:

  • Design, construct, and test the Active Server Pages
  • Design, construct, and test the business objects
  • Write the SQL to get data into and out of the DB2 database
  • Participate in numerous design and project status meetings
  • Interview client for interface design requirements and general business process analysis
  • Work with security architects to ensure safe, secure availability of system

Kemper Insurance – APLUS Document Generation Server

Oct 2001 – Feb 2002

One of the most time-consuming tasks involved in using APLUS in the generation and printing of various forms and letters. Before this project it took between 40 seconds and 2 minutes to generate a given document in the field. The same document only took 10 seconds or so when generated local to the database. The overhead was due to the slow connections between field offices and the home office and the massive number of database queries required to generate a given document.

I proposed offloading the document generation task to a powerful server in the home office. A request would be initiated by APLUS in the field, the server would receive the request, generate the required document, and return a completion result. The documents were and continue to be stored on a file server at the home office so the document itself did not need to be sent back across the network.

The solution was implemented as a web service using SOAP and the accompanying components. The document request was sent via SOAP, collected by the SOAP Listener on the server, and then the documents were generated. A significant amount of componentization of the APLUS logic was required to make this work. The document generation logic was eventually hosted in MTS and was separated between several objects.

This was one of the bigger successes for APLUS as the average time for document generation went down to 3-4 seconds in the field. The generation time was better than expected due to the server actually generating the document much faster than in the field. The server was a dual processor, 1 GB machine where the average field machine was an older Pentium model with 32 MB RAM and most users having Lotus Notes loaded simultaneously, i.e. very slow machine.

Responsibilities

My responsibilities as architect and developer for Kemper were as follows:

  • Separate out the document generation logic and create COM components for the server
  • Install SOAP on the server and plan the rollout of SOAP to all APLUS client machines in the field
  • Modify APLUS client application to interface with the server through SOAP
  • Created and executed load tests to ensure document server could handle many document requests simultaneously

AON – Web-Based Field Quoting Application

Jul 2001

AON was in the process of writing an web-based application to allow agents in the field to capture customer information at the customer site, get online, submit the information, and retrieve a quote for the proposed coverages. The application was to be run on the agent’s laptop using Personal Web Server. A local SQL Server database contained the customer and quote data and was replicated with the master SQL Server database in the office.

I was brought in to assist in meeting the proposed deadline and became responsible for the web application. The architect directed me to create an XML document definition to contain the variables captured in the customer coverage application interview. Each page would collect the data, insert it into the XML document, and pass the document to the next page to persist the data. All of this was done using ASP written in JScript and JScript classes.

Responsibilities

My responsibilities as developer for AON were as follows:

  • Create the Active Server Pages
  • Create the DTD to capture all customer application information
  • Create the JScript classes to persist the XML document
  • Participate in numerous design and project status meetings

Kemper Insurance – TelePlus

May 2001 – Jun 2001

TelePlus is the online system that claims operators use to take claim information over the phone. TelePlus is mostly a COBOL application with a semi-GUI front end. Kemper is in the process of replacing the front end with a web-based front end served in the Internet Explorer browser. My responsibility was to review all front end screens and document the conversion of those screens to web page equivalents. I was also required to review the COBOL code and identify key business logic which could be moved to an NT middle tier.

Responsibilities

My responsibilities as business analyst for TelePlus were as follows:

  • Review GUI front end and map migration of each screen to HTML equivalent
  • Identify issues related to sessionless web environment
  • Review COBOL code and document logic to be moved to NT middle tier

Kemper Insurance – JPI Legal Bill Review System

Nov 2000 – Apr 2001

Kemper receives over $200 million in legal bills from over 700 law firms which it does business with. Ideally, each legal bill is audited for compliance with the services agreement between Kemper and the law firm. The average legal bill is generally 10-20% overstated. In other words, the majority of law firms charge Kemper more than they are allowed to in their agreement with Kemper. Unfortunately, only a handful of internal auditors are on staff to perform these audits and, hence, the vast majority – over 80% - of the legal bills go unaudited. If these legal bills could be audited, Kemper would save millions per year in legal fees.

The JPI system allows law firms to submit legal bills to Kemper electronically for payment. The system performs an automatic audit on the invoices in the electronic document based on a set of threshold rules and math checks. Some reductions are made automatically. Other invoice line items are flagged for manual review by internal auditors. The system then provides tools for the auditor to do the audit more quickly. After an invoice is complete, an Explanation of Payment (EOP) is sent to the claim adjuster and made available to the law firm via an online “inbox” provided by the external site. Emails are sent to the adjuster using AspQMail and Lotus Notes.

As architect and developer on this project, I was responsible for designing and building the manual review interface and for designing and building an interface which allows admin personnel to set up law firms, agreements, roles, timekeepers, and other key items in the database. I was also responsible for overseeing the design and construction of the law firm interface as well as implementation of certain business rules in the overall system. I was responsible for maintaining the DB2 and SQL Server 7 versions of the ERD. DB2 was the production database but both Access and SQL Server 7 were used in prototyping.

I was responsible for the architecture of the system overall and its integration with existing Kemper facilities. I was responsible for selecting and configuring the web server and application server hardware. External user logon is performed by Webthority against the enterprise LDAP server. The proxy server maintains the 128-bit SLL certificates. The web sites are hosted on two web servers with business components residing on an application server. The web servers have hardware-based load balancing using Network Dispatcher. The web servers are running NT 4 with IIS 4. The application server is running NT 4 and ADO 2.5. Data access is restricted to the application server for security reasons. All business and data access components are located on the application server and referenced on the web servers via DCOM.

The internal web site is comprised of almost 9,000 lines of ASP code across over 30 web documents. A single COM object is used and is comprised of over 3,000 lines of Visual Basic 6 code. The invoice loader application is an additional 2,000 lines of VB code. I was responsible for the code reviews of the external site and the EOP object.

Responsibilities

My responsibilities as architect and developer for Kemper were as follows:

  • Maintain the DB2 and SQL Server 7 ERD files using ERwin
  • Design, construct, and test the invoice loader application
  • Design, construct, and test the manual review application
  • Design, construct, and test the system maintenance application
  • Write functional and technical documentation for all applications and participate in knowledge transfer to other developers
  • Participate in numerous design and project status meetings
  • Interview client for interface design requirements and general business process analysis
  • Help create test data and test cases
  • Specify the architecture used for the system
  • Specify the hardware requirements and validate against delivered hardware
  • Work with security architects to ensure safe, secure availability of system
  • Project management duties during the testing and implementation phase of the project

Kemper Insurance – APLUS Architecture Migration Assessment

Nov 2000

This was a short, two week engagement. I was contracted by Kemper to analyze a small, 2-tier application written in VB with an IBM DB2 Universal Database backend. The application was originally intended only for departmental use. The application was very successful and popular, though, and had been rewritten and / or extended for three additional lines of business. I examined two versions of the application and documented a migration path to convert them from the 2-tier architecture to a scaleable 3-tier architecture using VB and COM, ASP, MTS, and the existing DB2 database. I analyzed each form and code module in the VB application and documented the complexities of the forms and the functions in the code. I itemized the tasks for separating the application into 3 tiers. I assessed the current IIS infrastructure and made recommendations for maximizing performance, scalability, and availability. I also assessed the possibility of deploying the application using CITRIX nFuse as a quick method of getting the application out to users on the web. Finally, I assessed the challenges in interfacing the application with existing or pending CORBA Java components using a COM / CORBA bridge or SOAP.

Responsibilities

My responsibilities as enterprise architect for Kemper were as follows:

  • Analyze existing VB 6 forms and code modules
  • Analyze existing DB2 schema and SQL statements
  • Meet with various business owners and managers to determine scalability requirements
  • Redesign application using ASP and VB6 COM
  • Write comprehensive migration plan, including project plan with resource and work estimates
  • Write Executive Summary describing migration strategy

Comro.com – Internet Web Site

Sept 2000 – Oct 2000

Comro.com’s original Internet site was built using a 2-tier architecture. When I started at Comro my first responsibilities were to help them finish moving the original site over to a 3-tier architecture using ASP, VB COM, and SQL Server 7. I was responsible for the RFP functionality, the region maps, modifications to property searches, and the Comro Direct functionality. Each area required five to a dozen functions in a COM object and usually a half dozen stored procedures. Once the site had been migrated to the new architecture, it was moved to the production servers.

The Comro Direct and RFP features both used CDO and scheduled NT processes to automate sending of user email messages.

Comro did not have a replication architecture in place prior to my arrival. They also did not have separate development and staging environments or solid code promotion procedures. I contributed significantly in planning and deciding how to implement replication and how to design and promote between a multi-stage server environment.

Responsibilities

My responsibilities as a web developer and SQL programmer for Comro.com were as follows:

  • Create new tables and indexes as needed to support changes to application features
  • Create new stored procedures and modify existing stored procedures to support changes to application features
  • Implement snapshot, transactional, and merge replication between development, staging, and production environments
  • Set up DRI in application databases
  • Create triggers to manage foreign key-like relationships between tables
  • Optimize SQL stored procedures
  • Write, test, and promote COM objects using Visual Basic 6 Enterprise Edition
  • Create packages in MTS; manage existing packages and package security
  • Write new ASP pages; modify and debug existing ASP code
  • Use PC AnyWhere to remotely manage development server
  • Manage Visual Source Safe databases
  • Participated in team design and planning meetings
  • Write Functional Design documentation

HTS Consulting, Inc. – Nalco Project Proposal

Aug 2000 – Sept 2000

HTS contracted me as an interim practice manager for their new e-commerce practice. They had an immediate opportunity with Nalco that required quick business requirements gathering and analysis. I attended several client meetings with the HTS account manager to interview key client personnel. During these interviews I documented the requirements of the applications needed and other details which I would use to assess the complexity of the project and estimate an accurate work effort. After the client interviews I went back and broke the project down into several stages for each application. For each application I identified technologies which I believed would yield the best cost-benefit ratio. For each stage I identified the resources needed and assigned tasks to each resource. When the project plan was complete I created a formal project proposal which documented the overall scope of the project and detailed costs and schedule estimates. Once HTS approved the project proposal, we submitted it to the client.

Responsibilities

My responsibilities as interim practice manager for HTS were as follows:

  • Attend client interviews and gather business and applications requirements from client personnel during these interviews
  • Take requirements and assess technical complexity of applications
  • Break application and requirements down into a multi-stage, step-by-step plan
  • Itemize deliverables obtained out of successful completion of plan
  • Identify resources required to deliver successful project
  • Work with HTS to estimate costs of resources and overall project
  • Create project proposal for client to use in comparisons against other firms’ proposals
  • Work with HTS sales and recruiting staff to build resource pipeline and win client business

Arthur Andersen, LLP – EOR, BADA, QARM, Fraud, BPO, BRCA

Apr 2000 – Jul 2000

When I first started at Arthur Andersen, my responsibility was to learn the EOR application and to begin debugging the existing version. When a bug is reported, a System Investigation Request (SIR) is created by the tester and assigned by management to one of the developers. I completed several dozen major SIRs, the application was promoted to production, and the EOR code base was used to generate additional applications: QARM, Fraud, BPO, and BRCA. Each application was then customized to the specific requirements of the application sponsor.

There were approximately 100 ASP pages, written with VBScript, in the EOR application with a significant amount of embedded JavaScript routines. There were also about 50 SQL stored procedures and several COM objects served via MTS. The database used was SQL Server 7 running on NT 4.

One of the other responsibilities I had was to manage a daily data migration between application data stores on several SQL Servers, some V6.5 and some V7.0. The migration code was encapsulated inside of several DTS packages and scheduled with the SQL Server Agent. The packages moved approximately 600,000 records each day, some requiring BCP due to translation of code page specific characters to Unicode (nvarchar). Replication was investigated, proven, and is due to be implemented in the environment soon.

Several application components and modules were written in Visual Basic, compiled, and promoted to production to run when needed or on a scheduled basis. One of the applications used CDO and SMTP to automate emailing statistical reports to management.

Another task required me to use the Wise Installation system to create installation executables to install EOR-based applications on multiple web servers. The installation was required to set up ODBC connections, install COM objects into MTS, and install all ASP code and HTML pages.

Responsibilities

My responsibilities as a web developer and SQL programmer for the various Arthur Andersen applications were as follows:

  • Make SQL scripts to implement changes to database schema; promote the changes from development to beta to production
  • Write SQL stored procedures; debug existing stored procedures
  • Set up DRI in application databases; write triggers to ensure additional integrity
  • Optimize queries within existing SQL stored procedures
  • Create, test, and promote DTS packages to handle complex, multi-step SQL tasks on a scheduled basis
  • Create tables, indexes, and other database objects for applications
  • Write, test, and promote COM objects using Visual Basic 6
  • Manage MTS component usage
  • Write new ASP code; debug existing ASP code
  • Write JavaScript routines; debug existing JavaScript routines
  • Manage code promotions from development to testing to beta to production
  • Use Timbuktu Pro to remotely manage development, test, and beta servers
  • Manage and set up Visual Source Safe databases
  • Write HTML help files for all applications
  • Redesign screen layouts and artwork for all applications
  • Participated in team design and planning meetings

Carlson Wagonlit Travel – Digital Board Strategy

Jan 2000 – Mar 2000

Carlson Wagonlit Travel (CWT) hired Proxicom to help it create a digital strategy for competing against Expedia, Travelocity, American Express, and others.

Responsibilities

My responsibilities as the project manager and technical lead were as follows:

  • Participate in the strategy sessions and provide technical feasibility summaries and estimates
  • Analyze the existing NT architecture for scalability to new system objectives
  • Standard PM responsibilities such as time sheet approval, risk analysis and mitigation, expense tracking and approvals, quality assurance of various deliverables
  • Team size was 14 strategists, creatives, and developers

General Motors Corporation – gmbuypower.com

Sept 1999 – Jan 2000

General Motors Corporation (GM) hired Proxicom as general project management and architecture contractors for their gmbuypower.com site. I was one of 3 primary project managers for the effort. I was responsible for the site rollout in Mexico, Taiwan, Brazil, and Australia. The entire gmbuypower.com team was made up of over 300 contractors from 9 different vendors, including IBM Global Services, EDS, CompuWare, and others.

I worked with the architecture team (30+ architects) in planning the Version 1 architecture and the Version 2 architecture. The majority of my contributions on the architecture team were in the area of configurator selection and implementation. The configurator software, provided by a third party, allows a customer to select various options on a car. This is a hugely complex piece of software as it has to keep track of all the options combinations, the cost of each, and various rules regarding inclusion and exclusion of additional options.

Additionally, I participated heavily in the construction of a single UI to be used in all 40 initial rollout countries and the underlying components which allowed local variables such as postal code vs. zip code to be resolved. I spent several weeks in Australia leading a team of 18 developers, architects, UI designers, and several business strategists in working directly with the Holden company of GM to implement the Holden version of gmbuypower.com. There were quite a lot of technical and political challenges to resolve in Australia, including differences in calculating distance to dealerships based on latitude and longitude, postal code, and legal issues regarding storage of personal data. The Holden site was run on NT with IIS and ASP. We spent a lot of time revising the ASP to match the functionality of the JSP used in the United States version of buypower.

The URL for that site is http://www.holden.com.au. I also worked with several of the European brands including Opel and Vauxhall. The Opel site is at http://www.opel.com.

Responsibilities

My responsibilities as a project manager and technical architect were as follows:

  • Participate in and lead the architecture meetings for V1 and V2 of gmbuypower.com. Review applicability of various technologies and feasibility of implementation in existing architecture and interfaces with other GM systems
  • Manage the Australia site deployment – participate in all technical and design meetings, present existing buypower architecture, assist in resolving political and legal obstructions to project completion, provide daily status to US counterparts
  • Work with 3rd party vendors to analyze the technical feasibility of their products working within the gmbuypower.com architecture. The requirements of the GM project caused several vendors, including Selectica and Calico, made significant feature enhancements out of our discussions.
  • Code ASP with developers in Australia to match JSP in US modules
  • Provide weekly status reports on the my teams’ progress towards their deliverables.

McDonald’s Corporation – Corporate Intranet (Archie)

May 1999 - September 1999

McDonald’s hired USWeb to lead the effort in building their corporate Intranet, later called “Archie”. The Intranet was to be rolled out to the 3,000 or so Oak Brook employees with a view toward rolling out to all 8,000 or so US domestic employees. Access to some Intranet applications would be given to McDonald’s suppliers via extranet and to the Owner / Operator stores. The Intranet would then be rolled out internationally after that. When I left they were beginning to roll out to Sweden using Domino R5.

I was the project manager, lead architect, and LotusScript and ASP coder. The system was hosted in various point releases of R4.6.x of Lotus Domino and IIS 4 on NT 4. All of the Intranet data – articles, press releases, etc. – were stored in Notes databases for security reasons. The home page of the Intranet was hosted on NT as was the content editor. The home page was made up of modules which were periodically updated by an NT service. The NT service would connect to Notes through ODBC (not easy) and pull headlines and article summaries out of the database to populate these modules. In addition, there was a polling / survey module which had its data stored in an Access 97 database. The content management interface was used by almost 100 content managers throughout the organization to post their articles and other content. The content management interface was in Notes but the forms where the actually content editing was done was ASP because of a dependence on DHTML and IFRAMEs.

Responsibilities

  • Key architect in planning and designing corporate Intranet for global organization of 10,000+ users
  • Led team design and development status meetings
  • Wrote requirements, architecture, app spec, detailed design docs
  • Used evolutionary prototyping to deliver incremental features implementations and revisions
  • Monitored and reviewed usability studies
  • Planned information architecture (navigation)
  • Coded search module for Intranet
  • Coded ASP for content editing tools
  • Created and maintained project plan to deliver two versions of Intranet under budget and on schedule
  • Evaluated 3rd party tools
  • Wrote status reports and led management team status meetings
  • Assisted in identifying key business applications for conversion to Intranet
  • Assisted in infrastructure planning for 3-5 year implementation plan
  • Performed testing on Intranet deliverables
  • Assisted in migration from development to staging to production
  • Assisted and reviewed server and application stress / load tests

Notable Projects

L.R. Nelson – Peoria, IL

Feb 1999 – Mar 1999

Designed and constructed a marketing presentation printing application. Users selected presentation inserts and the application created a customized proposal / presentation for customers. The entire application was hosted on the web.

Morton Metal Craft Corporation (MMCC) – Morton, IL

Jan 1999 – Feb 1999

Designed and constructed a Lotus Notes database for tracking engineering programming requests.

Duplicated functionality of an existing Visual Basic application in the Lotus Notes database.

RLI – Peoria, IL

Dec 1998 – Jan 1999

Converted an existing knowledge repository into a Lotus Domino hosted web-based knowledge repository

Caterpillar – Peoria, IL

Oct 1998 – Dec 1998

Designed and constructed an updated version of the Parts Maintenance Planner application which tracked and estimated machine maintenance schedules and costs.

Caterpillar – Peoria, IL

Oct 1998 – Nov 1998

Designed and constructed an application used for tracking and distributing career goals and progress.

Internal Project – Rolling Meadows, IL

May 1998 – Nov 1998

Designed and constructed a knowledge repository for internal use. The repository held documents as attachments in the Lotus Notes databases but also used SQL to access financial data held in Platinum and Proamics application databases. All content was delivered dynamically to a browser-based client.

Notable Projects

Caterpillar – Peoria, IL

Feb 1998 – Apr 1998

Designed and constructed a web-based marketing materials catalog. The existing paper-based catalog had approximately 2,000 items available for dealers to order. An Adobe Acrobat document was created for each item in the marketing materials catalog and then placed as an attachment in a document in the online catalog. A comprehensive search engine was created to allow users to easily search the online catalog.

Internal Project – Peoria, IL

Jan 1998 – Feb 1998

Designed and constructed internal application for tracking differences in actual and estimated consultant billings.

Sept 1992 – Dec 1997

Products Created

Care

Designed and constructed Care medical records management software.

Doc Objects

Designed and constructed a full-featured word processing component suite, including text control, data-aware text control, ruler, status panel, and toolbar. All components were developed in 16- and 32-bit programming environments.

Enforcer

Designed and constructed a component-based security system, including BlowFish encryption algorithm implementation. The component was developed in both 16- and 32-bit programming environments.

GridObjects

Designed and constructed a full-featured grid / spreadsheet control, including integrated formula and function parser. The component was required to have both 16- and 32-bit versions.

Accounting

Design and construction of 16 separate component-based accounting modules, including accounts receivable, accounts payable, job costing and estimation, financial reports, and financial graphing. All components were required to have both 16- and 32-bit versions.

Notable Projects

Fujitsu Corporation – Tokyo, Japan

Revision of word processing control to handle Japanese Kanji character set and other Asian character sets. Required conversion of internal data format to Win32 Unicode (double byte) character set.

ALLTEL – Atlanta, GA

Revision of word processing control to handle Hebrew character set and right-to-left typing to support Middle Eastern typing direction.

DePaul University

Computer Science, 2006 - 2008

Illinois State University

Applied Computer Science, 1991 - 1995

Phi Eta Sigma National Honor Society

Minors in Accounting, Mathematics, and Biology

Certifications

Microsoft Certified Application Developer in .NET (MCAD)

Microsoft Certified Solution Developer (MCSD)

Microsoft Certified Professional (MCP)

Principal Certified Lotus Professional in Application Development (PCLPAD)

Principal Certified Lotus Professional in System Administration (PCLPSA)

Author of “UDC Care: A Case Study” published September 1995, in Paradox Informant magazine.

Copies are available upon request.

Portals

SAP Enterprise Portal, Microsoft SharePoint Portal Server, Epicentric

GUIs

Visual Studio.NET, Visual InterDev 6, Visual Basic 6, Borland Delphi (all versions), Lotus Notes 4.5 – 5.0

Databases

SQL Server 6.5 / 7 / 2000, IBM DB2 Universal Database 6.1 / 7.1, Lotus Domino 4.5 – 5.0, MS Access 97 / 2000, Paradox for Windows 4.0 – 7.0

Languages / Coding

C#, HTML, DHTML, VBScript, JavaScript, ASP, Visual Basic, Delphi, Object Pascal, T-SQL, ANSI SQL, JSP, Java Servlets, Java, Borland JBuilder, SOAP, XML

O/S and Protocols

Windows NT 4, Windows 95/98, Windows 2000 Professional and Server, MS/DOS, Red Hat Linux, TCP/IP, DNS, DHCP, SSL, SMTP, POP3, IMAP, LDAP

Packaged Software

Verity K2 Enterprise, Vignette Content Management Suite, eRoom Selectica, Calico, FirePond, Trilogy

Graphics / Multimedia

Adobe Photoshop 5.5 and 6, Macromedia Flash 4 and 5, Flash MX, Adobe ImageReady 2.0

Office Software

All versions of MS Office, MS Project, Visio

Statistics

SAS, SPSS

3rd Party Components

Crystal Reports, saFileUp, AspQMail, Apex True DB Grid Pro, Sheridan Data Widgets ActiveX

Other

DCOM, COM, COM+, MTS, MSMQ, ADO, RDO, DAO, Allaire HomeSite 3.0 / 4.5, MS Visual SourceSafe, ForeHelp, Doc-2-Help, VB Help Writer, Timbuktu Pro, Platinum ERwin, VNC, PC AnyWhere, CITRIX, LEDES specification, Netegrity SiteMinder, XML Spy

Methodologies

Rational Unified Process, UML

Industry Experience

Health Care, Insurance, Manufacturing, Construction, Real Estate, Chemical, Accounting (Audit), Packaged Software Development