|
|
Simon ChadwickMicrosoft .NET Specialist
14130 Woodview Lane, Saratoga, CA 95070 simon (at) chadwickinfo.com
|
BizTalk Server Winforms,WPF, Silverlight |
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:
·
24 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 2008 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, Windows XP,
Vista, and 7;
·
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, Vista and 7, BizTalk
Server 2006 and 2009, .NET Framework, WCF, WPF, Silverlight, IIS, ASP.NET, XML,
MapPoint 2010, SharePoint 3.0, Office Web Components.
·
Languages: C#, VB.NET, PowerShell, VB, XSLT, TSQL; UNIX shells.
·
Tools: Visual Studio 2010, BizTalk Accelerators for
RosettaNet, HL7, and HIPAA, Microsoft Office 2010 suite, Visio, Expression Suite,
Mercurial (hg), Subversion (svn), PGP and GnuPG encryption, regular expression
editors.
·
Databases: SQL Server versions 2000, 2005, and 2008.
·
GIS/GPS: NMEA decoding to plot current position on detailed street
maps; Microsoft MapPoint 2006 automation.
MISCELLANEOUS: U.S. Citizen since 1998; BS (Honors) in Computer Science,
CAREER AND CONTRACT HISTORY:
July 2004 to Present: .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. For more information about
this project please visit http://www.chadwickinfo.com/SCC_Pasha.htm.
Technologies: BizTalk Server 2006/9, .NET 3.5 Framework, C#, WCF, Web
Services, SQL Server 2008, .NET smart clients.
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,
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 February 2007: .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.
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,
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
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,
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,
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,
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,
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
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,
·
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,
·
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,
·
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,
·
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
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.,
·
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.,
· 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,
·
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,
·
In the Software
Services Division, responsible for customers with
·
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,
·
Helped design and
develop an Intel 8051-based time-division multiplexer for telex line
concentration.
[Revised June 2010]