Simon Chadwick

 

Microsoft BizTalk and .NET Specialist

 

13641 Vaquero Court, Saratoga, CA 95070
http://www.chadwickinfo.com

simon (at) chadwickinfo.com

650.906.3428

(This résumé can be downloaded in Word, PDF, RTF and Text formats.)
Revised 
October  2007

BizTalk Server
Microsoft .NET
WCF and Web Services
SOA
C# and VB.NET
SQL Server and ORM
RosettaNet, HL7, HIPAA
XML and XSLT
MapPoint and GPS

 

A seasoned software architect with many years experience designing and developing a variety of applications and systems software. Current expertise involves .NET enterprise architecture and development, and using BizTalk Server for XML document translation and routing, both in Enterprise Application Integration (EAI) solutions, and in supply-chain solutions between trading partners using the RosettaNet, HL7, and HIPAA standards. Core competencies include analyzing, designing, and implementing distributed enterprise applications using Microsoft .NET servers and technologies, .NET smart client development, and GPS interfacing and position tracking on dynamically updating street maps.

 

 

HIGHLIGHTS:

·   22 years of full-time commercial software engineering experience;

·   Design and implementation of many BizTalk-based architectures for integrating a variety of business applications;

·   Using Biztalk in supply-chain and trading partner implementations supporting the RosettaNet, HIPAA, and HL7 standards;

·   Extensive experience architecting .NET-based solutions, especially auto-deploying smart clients and Web Services;

·   Strong database design and implementation expertise specializing in SQL Server 2005 and object-relational mapping (ORM);

·   Solid software design, implementation and debugging skills using C# and VB.NET;

·   Extensive design and development experience, specializing in Windows Server 2003 and 2008, XP, and Vista;

·   GPS-PC interfacing, NMEA protocol decoding, and mobile GIS application development;

·   Creative problem solving and analytical abilities, with outstanding verbal and written skills;

·   Analysis of business requirements, deployment phase planning, and project team planning, assembly, and coordination.

 

 

SPECIFIC SKILLS:

·   Microsoft: Windows 2003 and 2008 Server, Windows XP and Vista, BizTalk Server 2004 and 2006, .NET Framework, WCF, IIS, ASP.NET, XML, MapPoint 2006, SharePoint 3.0, Office Web Components.

·   Languages: C#, VB.NET, PowerShell, VB, VBScript, XSLT, TSQL; JavaScript, Perl, Tcl/Tk, DHTML, UNIX shells.

·   Tools: Visual Studio.NET 2005, BizTalk Accelerators for RosettaNet, HL7, and HIPAA, Microsoft Office 2007 suite, Visio, Expression Web, Subversion (svn), PGP and GnuPG encryption, Visual SourceSafe, XMLSpy, regular expression editors.

·   Databases: SQL Server 2005, MS Access (especially ADP front-ends to SQL Server).

·   GIS/GPS: NMEA decoding to plot current position on detailed street maps; Microsoft MapPoint 2004 automation.

 

 

MISCELLANEOUS: U.S. Citizen since 1998;    BS (Honors) in Computer Science, University of Cape Town (1984).

 


CAREER AND CONTRACT HISTORY:

 

September 2006 to June 2007:       .NET Architect and BizTalk Specialist at a Startup Company, San Francisco, CA

At this early-stage startup company I was engaged as the chief architect and lead developer. My responsibility was the whole server-side system of a new SaaS-based medical claims management product, supporting web-based clients running in physicians’ practices. I designed and engineered the database, data access layer, business logic layer, web services, application server, and the BizTalk subsystem for transmitting HIPAA 837 and EZ-CAP claims and receiving responses. This work involved close coordination with the project manager and business analyst in discussing and planning product features, including user management, permissions, and privileges. The design and implementation of the claims processing and state management features were also my tasks. I developed a .NET ClickOnce smart client prototype to replace the initial UI developed using Adobe Flex, which for many reasons proved to be the wrong technology for such a mission-critical line-of-business application. My other contribution was a sophisticated PDF claim generation module, for dynamically creating standard CMS-1500 claim documents from the database.
During this time I also configured and maintained the company’s hosted servers, including the SharePoint, VPN, VersionOne, and Subversion systems.
Technologies: BizTalk Server 2006, .NET 2.0, C#, Web Services, SQL Server 2005, ORM, Subversion, VersionOne.

 

April 2006 to June 2006:  .NET/BizTalk Specialist at Employee Health Systems, El Monte, CA

At EHS (www.ehsmd.com) I designed and implemented the first phase of a BizTalk-based system for processing medical claim documents received in a variety of formats, among them scanned paper claims converted to XML using OCR. This system includes a custom claim validation and pre-processing engine using an XML-based declarative rule specification file. I also designed the initial database for maintaining claims and related data. The BizTalk server uses web services to communicate with the application server, which performs claim archiving, validation, and loading into the database. All received claims formats are mapped into a common EHS XML claim format.
Technologies: BizTalk Server 2006, .NET 2.0, C#, Web Services, SQL Server 2005.

 

September 2005 to Present:           .NET/BizTalk Specialist at Pre-IPO Company, San Francisco, CA

Designed and implemented a BizTalk system for a pre-IPO company in the personal health records (PHR) business. The company provides online access, consolidation, and management of all types of medical documents. The BizTalk system automatically fetches electronic laboratory reports in HL7 format from medical testing laboratories, and makes these immediately available online to the requesting physicians. I designed and developed the database and reporting system that allows these laboratory results to be viewed as both tables and charts, including plot charts enabling physicians to do trend analyses for selected tests.
I also designed the architecture for the second generation of the company’s online PHR system, which provides very high security and protection of all client documents and data, and much improved performance and scalability. This new Service-Oriented Architecture (SOA) incorporates secure internal web services between system tiers, split-key encryption of medical documents, session and sequence tokens, and a secure network configuration.
Technologies: BizTalk Server 2006, HL7 Accelerator, .NET 2.0, C#, Web Services, SQL Server 2005 and Reporting Services, VersionOne.

 

July 2004 to August 2005:              .NET/BizTalk Specialist at the Pasha Group, Corte Madera, CA

Engaged by Unitek Information Systems to design and implement a BizTalk-based communications subsystem for the Pasha Group, an international transportation, vehicle processing, and logistics company. I analyzed the requirements and specified the architecture for a system to process more than 90 different document exchanges with vehicle manufacturers, trucking and rail companies, and other logistics firms. These documents included vehicle shipping manifests, dealer allocations, accessory installation orders, damage reports, vehicle arrival, dispatching, and departure notifications, vehicle status and location reports, billing notices, and vehicle window labels. The BizTalk system exchanged flat EDI files with these trading partners, and converted these to and from common XML documents which were exchanged with Pasha’s vehicle management application. I was responsible for designing and implementing the entire BizTalk solution, including the EDI and XML schemas, conversion maps, custom pipeline components, custom adapters, web services, orchestrations, and the event log monitoring system. I also engineered the operators’ custom Transmission Control Console application, a .NET smart client application for monitoring and controlling all the inbound and outbound document communications. This whole project was a huge and complex undertaking, and has been very stable, reliable, and usable since going live in May 2005. It has also been a great validation of BizTalk Server 2004. For more information about this project please visit http://www.chadwickinfo.com/SCC_Pasha.htm.
Technologies: BizTalk Server 2004, .NET 1.1 framework, C#, Web Services, .NET smart clients.


 

April 2004 to June 2004:                .NET Architect at ADP, San Ramon, CA

In ADP’s Claims Services Group (www.adpclaims.com), I was tasked with analyzing and recommending a strategy for migrating existing systems to C# and the .NET framework. These applications involved automotive claims estimating and management. In a significant part of this assignment I developed three .NET smart client reference applications, for demonstrating the advantages of
converting the current web-based claims management applications into .NET smart clients that use web services, as part of an overall Service Oriented Architecture. These .NET reference applications used many resources from Microsoft’s Patterns and Practices group, including the Smart Client Updater application block and many design pattern templates. I also worked on a committee of other ADP architects and developers to define a common .NET architectural framework for all the claims management applications. My engagement was completed with a comprehensive white paper discussing the adoption of .NET smart clients and related technologies by ADP.
Technologies: VS.NET 2003, .NET 1.1 framework, C#, Web Services, Microsoft .NET Application Blocks.

 

July 2003 to March 2004: .NET/BizTalk Specialist at Cap Gemini Ernst & Young, Roseville, CA

Engaged by CGE&Y to design and implement the HIPAA transmissions gateway for their client PacAdvantage, a large health insurance Third Party Administrator. I designed the architecture for processing documents between the back-end Websphere/J2EE system and the BizTalk servers. These documents included the HIPAA 834 benefits enrollment and maintenance and the HIPAA 820 premium payment, and I designed the XML schemas for these. The communication between Websphere and BizTalk uses internal web services. I led the development and testing of all the BizTalk components, including the web service, a complex C# preprocessor for splitting very large (> 100 MB) XML documents into chunks before BizTalk channel translation, and a C# AIC for recombining the resulting X12 EDI chunks, encrypting them using PGP, and transmitting them using a .NET FTP client. The BizTalk system has mapping channels for 14 trading partners, including HealthNet, Blue Shield, and Kaiser. I also developed a monitor for the BizTalk suspended queue and event log that generates email notifications, and a separate C# application for testing the web service interface and manually submitting XML documents to BizTalk.
Technologies: BizTalk Server 2002, BizTalk Accelerator for HIPAA, .NET 1.1 framework, C#, Web Services.

 

May 2003 to June 2003:                 .NET Specialist at Microsoft Corporation, Mountain View, CA

Developed applications to demonstrate new features of the Microsoft Office System 2003. A C# .NET assembly was written using the new Visual Studio Tools for Office (VSTO) beta, allowing an Excel 2003 workbook to function as a front-end to the eBay auction system. This solution allows an eBay power seller to manage inventory, list items, view auction status and sales, and generate invoices, all from within Excel. I also developed a custom web service using VS.NET that wraps the eBay SDK, and used FrontPage 2003 with SharePoint Services to design a web site that used this web service to display syndicated eBay listings and to perform customized item searches.
Technologies: .NET 1.1 framework, C#, Web Services, Office 2003 beta, Windows Server 2003, VSTO beta, Windows SharePoint Services, eBay SDK and API.

 

October 2002 to April 2003:          .NET Specialist at Allstate Financial Group, Lincoln, NE

Architected and developed the prototype of the next generation of Allstate’s agent application for generating life insurance quotes and illustrations. This was the company’s first exposure to rich client applications written using the .NET framework and C#. I designed and developed a rule-based business logic engine for this agent application, enabling the rapid addition of new insurance products with minimal coding, using a custom C# application to configure the business and validation rules for each new product. In a subsequent phase of this assignment, I designed and developed the mechanism by which this application is securely distributed and automatically updated from the Allstate web servers to the 40,000 agent users. This mechanism uses the smart client, or no-touch, deployment technology of the .NET framework, and drastically reduces the costs of distributing, maintaining, and supporting the rich client application used by the Allstate agents.
Technologies: Microsoft .NET framework, C#, Web Services, ASP.NET, XML, Visio.

 

July 2002 to September 2002:        Supply-Chain Consultant at Volgen America, San Jose, CA

Architected a system to transfer order shipment requests from the firm’s Axapta ERP system to the BizTalk Server running at the fulfillment company. The ongoing implementation incorporates both on-demand and automated mechanisms to generate and forward requests to the remote server, using HTTP/S. The design includes the logging and reporting of transmitted requests, allowing the correlation of fulfillment requests with outstanding and backlogged orders.
Technologies: Microsoft .NET framework, C#, ASP.NET, SQL Server 2000, XML, Visio.


 

June 2002 to July 2002:                 BizTalk Consultant at Actel Corporation, Sunnyvale, CA

Analyzed the requirements for a solution to transfer order information from a JD Edwards ERP system to a Siebel CRM system, and designed the resulting architecture based on BizTalk 2002. Designed and implemented a custom application for extracting the order information from the JD Edwards DB2 database. This application invoked a local stored procedure that retrieved the data from the AS400 using the linked server mechanism of SQL Server. Implemented a custom BizTalk component (AIC) for inserting any type of data set (orders, account information, etc.) into the Siebel EIM tables. Designed and configured the BizTalk document schemas, the map file, and both test and production channels and ports. Ran extensive tests and performance benchmarks. Implemented automated failure monitoring mechanisms, including a system for generating and sending email alerts for the BizTalk suspended queue. Trained and mentored the company’s staff in BizTalk development and operations procedures, and produced detailed documentation on the whole BizTalk solution.
Technologies: BizTalk Server 2002, SQL Server 2000, Visual Basic, XML, SourceSafe, Visio.

 

March 2002 to June 2002:              BizTalk Consultant at DisCopyLabs, Fremont, CA

Architected and implemented a system for channeling order batches from many different sources into the company's ERP system. This was a perfect fit for BizTalk Server, and the following batch order formats can now be processed: custom CSV flat-file, Yahoo stores XML schema, Microsoft Commerce Server schema, and X12 EDI. Order batches in these formats are mapped to a common "universal" format, which is then processed by a custom BizTalk component (AIC) that validates the details of each order, inserts the orders in the ERP system DB, sends email acknowledgements, prints batch reports and pick slips, and generates reply documents. I implemented the entire BizTalk system, including the document specifications, and the map files for producing the universal batch orders. I designed and developed the custom batch processing AIC component, and also a monitoring application for batching orders produced by Commerce Server.
Technologies: BizTalk Server, SQL Server 2000, Visual Basic, XML, Visio.

 

December 2001 to March 2002:     RosettaNet Consultant at DNS Electronics, Sunnyvale, CA

Hired to manage the design and implementation of a system for integrating the client's back-end ERP system with its trading partners, using the RosettaNet framework. This began with resolving network and security issues, including digital certificates and the foundation BizTalk configuration. The first targeted trading partner was Intel, and implementing the initial RosettaNet PIPs involved extensive liaison with Intel’s RosettaNet team. The architectural design of the client’s RosettaNet solution was based on Microsoft’s BizTalk Server and the new Accelerator for RosettaNet, and incorporated custom PIP process implementations using BizTalk orchestration (XLANG) schedules. Managing and implementing this solution involved significant customizations to support simultaneous test and production systems at Intel, and to support different PIP document versions used by subsequent trading partners. In addition to these extensions, I designed and developed the interface mechanisms between the client’s ERP system and the RosettaNet servers, the email event notification subsystem, and the document logging and auditing facilities. I was responsible for the coordination of extensive testing with the Intel RosettaNet team. This was done for each PIP prior to promoting it from test to production status.
Technologies: BizTalk Server and Accelerator for RosettaNet, SQL Server 2000, Visual Basic, XML and XSL, IIS, ASP.

 

July 2001 to December 2001:         Intranet Consultant at WorkRite Ergonomics, Petaluma, CA

Designed and developed a custom intranet portal for the company. This web site includes such features as news and announcements, a searchable corporate directory with staff images and office locations, a multi-format document categorization and delivery system, a login and permissioning system for access to restricted pages, in-browser dynamic pivot tables for studying corporate sales data, dynamic charting of business and sales data, a corporate contracts and agreements viewer, and discussion forums (newsgroups). To administer the portal site, I developed applications based on MS Access to manage the contents of the underlying SQL Server database – there are management interfaces for news and announcements, corporate contracts, staff and departments, documents (including categories and binders, and an uploading facility), and for maintaining the web portal navigation menu.
Technologies: SQL Server 2000, Windows 2000 Server, MS Office Web Components, Access 2000, Visual Basic, IIS, ASP.

 

November 2000 to July 2001:        BizTalk Consultant at Wood Associates, Santa Clara, CA

Designed and developed a BizTalk-based solution for integrating a remote e-commerce system with the JD Edwards ERP system at the local client site. The web-based B-to-B e-commerce system was developed and hosted by Rare Medium in Irvine, CA. The BizTalk server exchanges XML documents containing sales order, order status, and available inventory information, and interacts with the JD Edwards system using custom designed and developed BizTalk adapters. My work also involved negotiating XML document formats with the Rare team, the orchestration of end-to-end testing across the e-commerce and ERP systems, and the installation and configuration of the production BizTalk Server machine. I also produced a BizTalk Server operations manual for use by the Wood Associates IT department.
Technologies: BizTalk Server 2000, SQL Server 2000, Windows 2000 Server, XML, Visual Basic, IIS/ASP.


 

June 2000 to December 2000:        Principal Engineer at marchFIRST, Silicon Valley eCommerce Practice, Cupertino, CA

·       Designed and developed an XML-based web application providing in-store sales assistance and product catalog browsing and searching. The target browsers are wireless PocketPCs and laptop kiosks, which use wireless LAN technology from 3Com.
Technologies: SQL Server 2000, Windows 2000 Server, XML and XSL, IIS/ASP, Visual Basic, Visual InterDev, Platform SDK for PocketPC.

·       Worked on internal pilot projects using Microsoft’s BizTalk 2000 and SQL 2000 servers. Conducted research using these new products with XML schemas.

 

December 1995 to June 2000:        Senior Software Engineer at Concero, Austin, TX and San Francisco, CA

·       For Traq Wireless, a B-to-B startup company providing cellular phone management services to corporate clients, worked on the requirements analysis, architecture, data model, and design of the initial web application. Acted as team lead during the development of the initial phase, and designed and built the rate plan analysis and optimization engine.
Technologies: SQL Server 7.0, VB, MTS, IIS, ASP, Visual InterDev, Windows 2000.

·       For AT&T Wireless, assisted the development of the Java-based GUI client for the National Business Ordering system for wireless services and phones. Performed related ordering scenario unit testing and debugging.
Technologies: Java/JFC/Swing, Inprise JBuilder, Windows NT, CVS.

·       At Nortel Networks, worked on the analysis and architectural design of a web front-end to Nortel's NT-based small business PBX products. The design employed browser-based Java applets using RMI to communicate with the NT server, and IIS/ASP for the web page provisioning. PBX management data was sent between the NT server and Java applet clients using XML.

·       For Network Decisions, designed and developed a smart card-based web application on Windows NT for demonstrating typical smart card loyalty functionality. This included a downloaded ActiveX control that provided the interface between the web browser and the local smart card, allowing the transfer of data between the smart card and the remote server database.
Technologies: Windows-NT, IIS/ASP, Visual Basic 6.0, Visual J++ 6.0, J/Direct, ADO, Access DB.

·       At Visa International, specified, designed and developed a Java-based package for benchmarking the performance of terminals, readers, and various JavaCard-based smart cards. Designed and developed the client and probe GUI applications.
Technologies: Java, JavaCard, ISO-7816, Symantec Visual Cafe, Visa Open Platform, Java Ring/iButton.

·       For Motorola Imaging and Storage, worked on the prototype of a disk drive simulation package. Designed and developed the application GUI and framework, and the model configuration parser.
Technologies: Java, Symantec Visual Cafe, KL JChart.

·       At Schlumberger/Globalsoft, designed and developed a Windows NT DLL in VC++ for integrating Microsoft Developer Studio with the Schlumberger Omniworks change management system.

 

August 1994 to December 1995:    Product Developer at BMC Software, Austin, TX

·       Worked on client/server-based administration products for Sybase and Oracle. Designed and implemented C++ class library of Sybase database objects, and the mechanism for populating a tree of these objects from a Sybase database.

·       Ported the UNIX server component of this application from HP-UX to AIX and to Solaris. This involved POSIX conformance, and implementing dynamically loaded shared library functionality on each architecture.

·       Developed a Tcl/Tk-based configuration and control GUI for the Unix server.

·       Implemented an architecture-independent build system for the server component using GNU make, supporting RCS and PVCS.

·       Installed and configured internal WWW server (NCSA httpd), and maintained BMC internal WWW home page and information services (HTML), including on-line development utilities manuals.

 

December 1991 to August 1994:    Senior Software Engineer at SHL Systemhouse, Orlando, FL

·       In the Telecom Delivery Unit, developed a remote Intelligent Maintenance System for NT Meridian PBXs, in partnership with Vista-United, Disney's telecommunications company. Running on IBM RS/6000s under AIX, this system provided Vista's network operations center with a dynamic graphical view of remote PBX sites, with drill-down maps, a scrolling alarm window, alarm acknowledgment and trouble ticket screens, and remote diagnostic session windows. Wrote the functional requirements for the user interface, and used the Object Interface C++ GUI class library (v4.5) for the graphical front-ends.

·       AIX system and network administration, and development tools and utilities configuration and maintenance (i.e. RCS, xlC/C-Set++, X, xdm, FVWM virtual window manager, Perl and shell scripts).

·       Developed a custom network performance monitoring system for a satellite data communications company. This work was on a Sun workstation platform, involving X Windows and OSF/Motif GUI development with the UIM/X development tool and XRT/graph screen plotting system. Built the network statistics archive module using a Sybase database, and was also responsible for the Sun-based X.25 communications module used for retrieving statistics from the monitored network.


 

June 1991 to November 1991:       Contracting Software Engineer at Scientific Atlanta, Melbourne, FL

At the Network Systems Group I worked in a team developing a new SUN-based network management system (NMS) for the company's satellite network products. My responsibility was the design, development and integration of the module providing the interface functionality for the Telematics ACP series of X.25- based network nodal processors. This mainly involved UNIX/C system programming with the Brixton X.25 API.

 

November 1989 to May 1991:        Contracting Software Engineer at Timeplex Inc., Dallas, TX

·       Worked on the TimeView-2500 NMS, which provides an X Windows-based front-end to an X.25 network of Timeplex's Timepac nodal processors.

·       Designed and developed the remote node firmware download and booting modules, including X.25 handlers for remote call connection, file transfer protocol handlers and node configuration database translator (Informix to node binary format).

 

May 1988 to November 1989:        Software Engineer at Reuters Information Services Inc., Hauppauge, NY

·       Worked in a team developing the workstation component of the Reuters Dealer Trading System (RDTS), an international 24-hour foreign exchange and commodity trading system. Another project, the Dealing Advanced Reuter Terminal (DART) was integrated with the RDTS workstation software to give traders a multi-windowed environment for direct instrument trading. Programming was done in Microsoft C with Windows 2.1 and DECnet-DOS LAN interface.

·       Designed and developed the RDTS message and last trade ticker display modules, and the RDTS-DART data interchange protocol and interface handlers.

 

May 1987 to March 1988:              Software Engineer at Reuters Limited, London

·       In the Digital Systems Development Group, worked on a LAN server gateway between Reuters Monitor datafeeds and a LAN of Reuters Intelligent Workstations. This was in C under Microsoft Windows on Compaq 386s.

·       Designed and developed the interface module between multiple Monitor lines and the LAN transport service.

 

April 1986 to February 1987:         Software Engineer at NCR Central Africa, Harare, Zimbabwe

·       In the Software Services Division, responsible for customers with NCR Towers, and for UNIX support.

·       Designed and developed a data capture system under UNIX in C and Bourne shell, using INGRES DBMS, allowing high volume data entry on a small UNIX front-end, from which formatted data was sent to the NCR processing host.

 

March 1985 to February 1986:      Programmer at Telecommunication Technologies, Boksburg, South Africa

Helped design and develop an Intel 8051-based time-division multiplexer for telex line concentration.