Michael Cating, MCSD, MCDBA
mcating@catingsystems.com
(510) 332-6426
Home Interests Reading List Certifications Resources

Objective

To provide professional and expert consulting and/or training on Microsoft database, middleware and server systems.

Summary Michael is an accomplished system and data architect in the Microsoft realm, with 6 years of experience.  He has worked on high-volume websites, on time-critical batch processes, and on client/server and N-tier user front-ends. His specialties are database design and implementation, middleware design using Visual C++  and Visual Basic, and front-ends using Visual C++, Visual Basic and ASP. He is also certified in SQL Server 2000 Design and Administration, Visual C++ middleware development and Visual Basic front-end development.  Michael is a Microsoft Certified Solution Developer, has achieved his Microsoft Certified Database Administrator credentials, and holds Bachelor’s and Master’s degrees in Computer Engineering.
Experience
Summation Legal Technologies, Inc. December 2001 - Present

As a database and C++ consultant, Michael is leading development on the next generation of Summation's flagship product, iBlaze™. The primary focus of this effort is to expand the iBlaze product line to access to SQL Server, in addition to Summation's proprietary embedded database engine. 

Primary Accomplishments:
- Designed COM interface layer to abstract data access for both MFC and web-based front-ends
- Wrote data access implementations for Summation's proprietary database engine and for SQL Server in ATL
- Provided C++/MFC wrappers to simplify interaction with COM interfaces
- Convert existing MFC code to communicate with C++ wrappers for recordsets, query handlers, and other data-related objects
- Rewrote existing COM objects to provide better performance, scalability and maintainability
- Designed and implemented  tracing system to allow debugging of objects in testing and production environments
- Wrote query parser to translate Summation's proprietary database language into a platform-independent query object 
- Wrote "sliding window" recordset object for SQL Server, to provide full-table recordsets without constituting the complete recordset at any time
Uplister, Inc. February 2000 – October 2001

As Project Lead (Database), Michael was responsible for all database design, implementation and administration on Uplister’s music playlist-sharing system.  The data tier was three SQL Server 7.0/2000 databases, running on Windows 2000 Advanced Server.  Middleware consisted of J2EE EJBs running in WebLogic 5.1.  In addition to managing a team of up to four full-time consultants and two interns, he worked closely with marketing, middleware developers and testers on all key product features, including song/artist/playlist searching, user activity tracking, data importing and playlist editing.

Primary Accomplishments:
- Designed and implemented 120 of 150 tables, 290 of 320 stored procedures and 16 scheduled tasks
- Planned and deployed 10 major and 27 minor database releases since June, 2000
- Personally developed in T-SQL, VC++, VB, VBScript, ASP, JSP and Java
- Performed code reviews of VB, VC++, JSP, VBScript and DTS projects
- Designed, implemented and tested disaster recovery strategy
- Implemented DB change control, security and source control policies
- Implemented Microsoft Full-Text Search and custom database schema to provide song, artist and playlist searching
Aureal, Inc. August 1999 – February 2000

Michael was one of four software engineers on the Silo Music Player, a WinAmp-like music player that shipped with Aureal’s OEM soundcards.  His primary responsibilities were client/server communication over HTTP and MFC client development. He developed COM objects in Visual C++ 6.0 and Visual Basic 6.0, designed the client’s Playlist Manager window, and developed a client registration database, complete with internationalization features for sixteen language-specific OEM versions of the product. 

Primary Accomplishments:
- Designed internationalized SQL Server 7.0 database for user registration and language-specific upgrades
- Implemented VB COM object to translate XML from server into client-side COM object model
- Implemented ATL COM object using CHttp… MFC classes to encapsulate communication
- Implemented Playlist Manager MFC dialog with highly customized GUI
- Designed and implemented registration, upgrade and first-run protocols between client and server
Charles Schwab,
Retirement Plan Services
July 1998 – July 1999

As a consultant to Schwab Retirement, Michael revolutionized the way Visual Basic and Visual C++ developers interacted with the legacy Pascal/BTrieve retirement plan system.  He did this by inventing a C++ system that translated Pascal BTrieve data into Visual C++ data objects, and vice versa.  He used this system to implement a batch process to update status information on retirement plan members, a nightly process that was benchmarked at 90,000 member checks per hour.  Furthermore, he provided training on the data access system, as well as COM, MTS, ActiveX, ASP and other development topics.

Primary Accomplishments:
- Developed C++ source code generator and data conversion DLL to streamline use of Pascal data stored in BTrieve flat files  
- Developed MTS COM objects in VB/VC++ for batch updating BTrieve records
- Performance tests showed update speed of 90,000 records/hour
- Implemented MFC multi-threaded test application for stress tests on compressed BTrieve files
- Designed MFC user app for bulk copying data from BTrieve files into SQL Server 6.5 tables
- Taught sessions on COM, MTS, ActiveX, and ASP
Hyland Software, Inc. May 1997 – July 1998

Michael was one of twelve developers who worked on Hyland’s document management system, OnBase. He worked primarily on high-speed data imports, but also developed ActiveX controls for viewing documents and images securely over the web.  He also developed a programmable ASCII file parser that could be configured to parse nearly any text format, thereby reducing development effort on new file-parsing projects.

Primary Accomplishments:
- Designed ActiveX Controls in MFC for ASCII, AFP and image interaction over WWW
- Prototyped image-viewing controls using ATL 2.1 to compare ATL and OCX solutions
- Analyzed challenges of migrating to DCOM-based, server-side import processors
- Designed and implemented programmable ASCII file parser
- Performed technical demos at two major industry trade shows
Certifications

Microsoft Certified Solution Developer since November 1999
Microsoft Certified Database Administrator since November 2001
  Designing and Implementing Databases with SQL Server 2000 Enterprise Ed. (passed in beta)
  Implementing Distributed Applications with Visual C++ 6.0
  Implementing Desktop Applications with Visual Basic 6.0
  Installing, Configuring and Administering SQL Server 2000 Enterprise Ed.
  Installing, Configuring and Administering Windows 2000 Server
  Analyzing Requirements and Defining Solution Architectures (passed in beta)
  DB Design/Implementation on SQL Server 6.5
  System Administration of SQL Server 6.5
 

Publications Cating, M.  December 2002.  "Do-It-Yourself Searching."  T-SQL Solutions, pp. 2-6. 
Education

Case Western Reserve University  Cleveland, Ohio                            August 1993 – May 1997
  Master of Science in Computer Engineering & Science  GPA: 3.90 out of 4.0
  Bachelor of Science in Computer Engineering GPA: 3.97 out of 4.0

 
Send mail to webmaster@catingsystems.com with questions or comments about this web site.
Last modified: December 15, 2002