- Proven IT professional with 20+ years of software architecture experience. Methodology guidance of teams using AGILE/Scrum, and Waterfall Coding.
- Possesses over 20 years of experience in dual roles consisting of both Architect and Developer responsibilities. Duties include but are not limited to creating an enterprise architecture moving existing legacy systems, architecting and assisting in coding of several GIS projects, architecting and developing LINQ/WCF based application, and also architected and developed core IT tools used by the PMO.
- Experienced with the development of C# threading tools used in architecture of multi - threaded applications, and experience constructing in a SOA pattern with prolific use of web services.
- Over 5 years’ experience in WPF/WCF environments. Also worked on applications comprised of a WPF/WCF based enterprise web console and a C++ based search client, backed by MS SQL Server 2008. Other projects included migrations to SharePoint portals.
- Lead experience includes Development Manager over a team of 20, Senior Lead .NET Portal Architect and Plant level deployment team lead over a team of 12, and Lead Developer (100%) over a team of 4.
- Extensive experience totaling 6 years in regards to data warehouse architecture across multiple industries and disciplines. Experience with ETL tools such as Informatica, ERWin, Oracle, Teradata, and the SAP BW.
- Focused experience within the manufacturing industries in regards to MES systems, LES systems (logistics/supply chain), SCADA, and low level process control. Master’s thesis was in regards to decision support in manufacturing. Embedded applications work composes approximately 20% of my career.
- Current focus using Visual Studio 2012 and the .Net 4.5.1 runtime in multi-threaded applications using the System.Threading.Tasks assembly and the new “async” keyword. In addition, current focus is on forensic re-architecture cleaning up web applications constructed suing NHibernate.
- Extensive experience in Lean/Six Sigma and Six Sigma environments, Manufacturing Execution systems, ERP, PLCs, OPC Servers, Data Historians (GE Proficy and others), and SCADA control systems.
- Use of and exposure to the Capability Maturity Model and CMMI during a six year career at Confidential .
Enterprise Architecture and Development Team Manager
- Building Advanced Messaging Queueing Protocol service stack to enable transfer of data to disparate software application consumers. Portions of this code are written in C++ with the majority of the code in C# running in .Net Framework 4.52. Currently working with SQL Server 2014 including new “in-memory” tables.
- Use of the Health and Human Services Enterprise Performance Life cycle (EP:LC) process from software solution ignition through its sun downing. The process is composed of 10 phases and is similar to TOGAF .
- I am heading an effort to refactor a large scale system that allows CDC employees to review expenditures on a global scale. The General Ledger runs in Oracle Financials with several custom modules specific to CDC and government usage.
- The user interface is currently written in AJAX/ASP.Net. This is being migrated to WPF.
- The refactored system will employ web service engines (my specialty) in order to communicate between applications and components. Due to previous issues with preparing data warehouse scale data for the review process, previously existing SQL Server jobs will be implemented using Windows Services with intelligent control to prevent failure during heavy load.
- The refactored system is load balanced. This involves the heavy usage of threading currently being implemented on .Net 4.0. As such, features of the Parallel Task Library are being employed.
- In September 2014 work in Java was added to build a framework that can touch and authenticate against a variety of directory servers including Microsoft AD, Apache DS, Fedora DS, generic LDAP, Novelle Directory, Open DS, Open LDAP, OpenLDAPRfc2307, RFC2307, and .Sun ONE. I had previously performed extensive work with Sun One. This work is in support of content management.
- I have worked as an independent consultant since December of 2012. In this work I have acted as an architect/developer for multi-threaded transaction processing applications supporting MVC front ends. The work was focused on .Net 4.5 using Visual Studio 2012 running against Windows Server 2012/SQL Server 2012.
- Performed primary architecture work for Windows 7 Phone applications.
- In this work my focus is at the enterprise level where large scale backend infrastructure is employed.
Environment: C#, Visual Studio 2012, Web Services, MVC4, Oracle, Mainframe DB2, and SQL Server 2008/2012, TDD, WinCE and Windows 7 Phone.
Enterprise Systems ArchitectResponsibilities:
- Created an enterprise architecture moving existing legacy systems written in Visual Basic 6.0, Visual FoxPro 2.5, and paper systems to a new model composed of C# based Windows services as the data layer, WPF user interfaces, and an OPC server deployed to tie machine level systems to the architecture and upstream to SAP. (An MES architecture).
- The business layer ties to the MES system using BizTalk. The BizTalk Rete engine is used within the core MES for logical representation.
- During this period a framework consisting of some 80,000 lines of C# and C++ code was composed. At the machine layer, some 30,000 lines of code were produced. Clients PLCs were Allen-Bradley. The OPC server was Kepware.
- Brought on at OFS Fitel/OFS Optics based upon previous experience in the manufacturing sector and specifically work with manufacturing execution systems.
Environment: C#, C++, SAP ECC 7.0, WCF, WPF, Oracle, TDD, WinCE for embedded systems in a Lean/Six Sigma environment.
Operational Systems ArchitectResponsibilities:
- The primary languages used were C# and C++, with some SQL. ‘Platforms’ were web, desktop app, backend, and mobile. Backend systems were mainframe and Unix.
- The front-end travel booking system was operated by TravelPort and other GDS profile vendors
- Most significant work from a developer’s perspective was the development of C# threading tools used in architecture of multi-threaded applications as well as performance diagnostics with issues such as races and deadlocks. This work was being performed in .Net 4.0 and in applications using System.Threading Tasks.
- New software development conducted using the rational process. The interface between the mainframes and server/desktop level applications was Tibco Rendezvous. Most systems were constructed in a SOA pattern with prolific use of web services between Delta and its various vendors.
- Employed portions of the Rational Process. The primary artifacts used by developers are class diagrams and threading models (Non-RUP).
- Systems were real-time and often integrated with FAA systems as a secondary data source.
- The focus of systems was eventing data and messaging within the real-time systems realm.
Environment: C#, C++, DB2, Tibco, WCF)
- Performed C# applications development for the company’s identity client/server personal information search application. The application is comprised of a WPF/WCF based enterprise web console and a C++ based search client, backed by MS SQL Server 2008 (C++ on Windows, C on Mac, and C++ on Linux. SQLite used for data transfer through ActiveSync.) Application used the .Net 4.0 framework and the MVC Release 2 framework (Some MVVM also used). Portions of the application used Ext.net/AJAX. The client installed as both a service and an executable application that can be started by the service. IDF software uses Microsoft Enterprise Library and is a heavy user of Unity for IoC.
- Work focused on building a distributed version of the application where the workload was determined at the enterprise console level and based on this information clients were loaded remotely individual PCs within the corporate domain.
- Applications included data management applications, risk assessment applications, sheet generation, and an ArcMap extensions used for visual editing of pipeline data using linear referencing. Current applications used Telerik Controls in a modified MVVM pattern due to their level of complexity and need to “skin” applications. Web front-end applications were being moved to Prism 2.2 and Silverlight 4. (Based upon the original Composite Application Guidance recommendations issued by Microsoft.)
- Applications ran against wither ArcGIS 9.2 or ArcGIS 9.3.1 with work in progress on ArcGIS release 10. Applications were written in Visual Basic and C#, with the greater portion being in C#. Work was underway to move applications to Silverlight 4.0 using the ESRI Silverlight API. For the ArcGIS release, 10 applications feature editing used ESRI’s new feature service. Moving to Silverlight 4.0 was extremely critical for web based GIS applications because these applications are RIA or Rich Internet Applications where state was difficult to maintain in the asynchronous web environment. Thus RIA Services introduced in .Net 3.5 and expanded in .Net 4.0/Silverlight were critical.
Environment: WPF/WCF with ASP.Net and Winforms. Patterns include Structured MVVM, MVC, and PRISM libraries with Silverlight.
- Led a Team of 20 as Development Manager.
- Architected and assisted in coding of several GIS projects using the Google API and various data-stores to support various efforts. (The Google API and AJAX running on .Net 3.5 with time split around 80% development and 20% project management.) Maintained ongoing support of ArcGIS applications built using the C# interface or API’s.
- Architected and developed a LINQ/WCF based application used to build “discovery” type queries against data stores. The application was developed using SQL Server 2008, Oracle, other data sources, and Visual Studio 2008 (.Net 3.5). Hands on coding effort involved around 80% of my billable time.
- Developed while also managing developers working on various DoD contracts in the Georgia region. These efforts spanned technologies including old C++ and VB based ASP applications through current .Net 3.5 applications using AJAX and LINQ. Focus areas included SAP system support for government entities; data driven applications; GIS applications (ArcGIS); manpower applications; and general informational websites. All new development projects (except SAP work) were driven using IBM’s Rational Tools. Some of the projects combined the old technologies with new, i.e. ASP and ASP.Net.
- Generated the action plan for maintaining a large portal site written using VB based ASP on the portal and ASP.Net in various client modules. Maintained specific VB/ASP pages while directing the coding efforts of other developers. (50% hands-on/50% management and design)
- Designed and implemented the security mechanism in the application via AD and Common Access Cards. (100% hands-on development)
- Developed C# components used by Expression Blend application authors for various Army applications at different sites.
- Heavy MOSS 2007 development for multiple sites. Work included Windows Workflow Applications running on SharePoint.
Senior Lead .NET Portal Architect/DeveloperResponsibilities:
- Managed Team of 12, and focused on migrating user interfaces and middleware technologies to Microsoft products, specifically those technologies built around the .Net Framework.
- Architect and develop core IT tools used by the PMO that included a custom built Project Tracking Database as well as Capacity Planning tools. These systems are currently being moved to SharePoint and Project Server using WPF, WWF, and WCF. (60% developer/40% project manager.)
- Migrated away from the SAP NetWeaver Portal to SharePoint Portal using Active Directory for single sign-on. This effort included development of code level standards. (40% hands-on/60% project management)
- Migration of core business systems used for Coopers Cooper Connection sales and marketing tool to the .Net 2.0 Framework using a backend SAP bolt-on for business logic. (80% hands-on/20% project management)
- Conversion and update of all Visual Basic applications to C# using either Webforms or Winforms. (100% development)
- Heterogeneous systems still exist within Cooper’s application inventory. Custom Membership classes were developed with C# to allow single sign-on authentication to occur across systems. (50% architect/50% developer.)
- Movement to core SOA application architecture is approximately 40% complete. The challenge has been architecting Web Services and exposing them through WPF to allow easily constructing SOA client service requests. (50% architect/40% project manager/10% development)
- Plant level deployment team lead for Microsoft Dynamics AX (Axapta). Although Cooper was deploying ECC 6 within the overall corporate structure operations at the manufacturing level utilized Oracle applications that we migrated to MS Dynamics. This application suite utilized custom components written in .Net 2.0 to tie to machine level control (PLCs.)
- Development methodologies used were AGILE/Scrum, Waterfall, and Cowboy Coding. (100% manager and architect.)
Senior .Net Architect/Implementation ManagerResponsibilities:
- Managed Team of 6 on a short term contract to assist Varec in re-architecting a Supervisory Control and Data Acquisition system from standard Microsoft C++ technologies in a non-managed code environment to C# Microsoft .Net using web services and OPC (OLE for Process Control) services. The end result was a system where configuration was possible by assembling base code and various web services designed to accomplish specific tasks. A web service interface was designed to work in conjunction with remote terminal unit OPC servers.
- Designed core web services supporting non-real time SCADA functionality.
- Designed and developed the web service OPC interface in C# and interfaced to OPC using the System.Interop assembly.
- Began to develop the specification for the presentation layer using beta MS Indigo.
- Developed the security model using ASP.Net SQL Authentication.
- Managed Development Team of 2/Managed Operations Team of 4. Was Lead Developer 100%, team of 4.
- Project focused on re-architecting a multi-language web site that used Verity’s search engine technologies. Originally written in VB 6.0, HTML, Jscript, and running against SQL Server 2000, the application was re-architected and moved to .Net 2.0 using VB.Net. The app used an IBM load balancer running on AIX that spread the workload across the web farm. C++ services running on NT 4.0 backed a web based authoring tool for publication of documents in the system that was called Comperio (A Price Waterhouse Coopers product.)
- Completed all high level design, data modeling, process modeling, and object modeling for Comperio using .Net 2.0 Framework. Developed test suites for application validation.
- Supported the ongoing maintenance for legacy Comperio spanning VB, C++, HTML, and Jscript coding.
- Developed a C# web replication application with a Winforms interface.
VP of DevelopmentResponsibilities:
- Managed Team of 65, while managing and participating in the various development projects undertaken by the company. These projects ranged in scale from small Windows based applications to enterprise scale data warehousing and core financial systems., i.e. SAP, PeopleSoft, etc.
- Role was to define coding standards and establish software development practices for the organization. During tenure Expeditionary was assigned a CMM Level III status.
- Established and led a Microsoft .Net development team, and directed marketing efforts to provide clients applications programming services based on .Net 1.1 using Visual Studio 2003.
- Led team of Twelve J2EE developers. This staff maintained and developed new client applications using J2EE technologies, primarily web service based applications.
- Work was performed to assist clients in need of embedded development using native assembler and C++. These efforts were focused on the controls market in support of heavy machinery and other equipment.
Project Manager/Development Manager/DeveloperResponsibilities:
- Managed Teams Varying in Size of 4 to 25. (Some projects 100% Manager, Some Projects 100% Developer: total development time approx. 60%).
- Project Manager for Oracle Applications Development. Applications architecture and project management of a team of 10 persons, including developers, database administrators, and business analyst. Tools included Oracle Forms on UNIX (X-Terminal forms), Oracle 7.0, and C++ front end applications (primarily X-Windows apps on Solaris or AIX.).
- Developed using a broad range of technologies including PowerBuilder, J2EE (JSP) development, large scale data warehousing using Teradata and Oracle, ETL Tools such as PowerCenter (and later Ascential), and AI tools such as Gensym to enforce network quality-of-service.
- Developed custom C code based middleware for communications between legacy Prime Computer systems and UNIX based Oracle applications.
- Acted as a developer and manager for Oracle Forms development on UNIX systems.
- Performed C++ development in support of a terabyte scale human resources system using Borland C++. Also performed extensive Visual C++ development across a broad range of applications.
- Acted as a Microsoft Access Developer and as a Visual FoxPro developer on short term projects. Developed QoS applications using Gensym’s product suite.