CV
Competencies
- .NET (Framework/Core), C#, ADO.NET / LinqToSQL / EF, ASP.NET MVC, Blazor
- .NET Core on Windows and Linux
- OSIsoft PI AF SDK, WebAPI and RTQP
- OPC Foundation DA/HDA
- Windows services, desktop, mobile (Xamarin Forms)
- OData, WCF, IIS Http modules and handlers
- Java, JSF, Tomcat
- SysAdmin - WS2012R2 - WS2016, hyper-v, AD, Exchange, SQL Server, DFS/R, IIS
- C/C++ Embedded/IoT
- Docker, Azure
- InfluxDB
- Python / JavaScript / CSS / HTML / Bootstrap4
Development Tools
- Visual Studio - versions from 6 to 2022 ... even VC++ 4 somewhere ;)
- PI Dev Club membership with access to OSIsoft support and PI licenses
- IntelliJ Ultimate current subscription (includes PphStorm, PyCharm etc.
- O'Reilly learning subscription, online library for books (35K+) and video training (30K+ hours)
- Visual Studio Code - C#, C++, Python, Javascript, npn, Java, Git
- MAPS Microsoft Partner kit, Azure, Office 365, OS, Servers (e.g. SQL Server) and CALs (current)
- TeamViewer, Slack, Zoom
- Git (previously SVN and some Bzr)
- DevExpress and Syncfusion component licenses
- ngrok, Nodejs / Gradle / Gulp / InfluxDB / PostgreSQL
- Various Dell servers and network equipment for use in testing
Notable Achievements
- Sole developer on a new IIS/HttpHandler/.NET application connecting to various Process Historians (in this case in the Oil and Gas industry) to be accessed from Java applications. This software is now in production use in the North Sea. Despite this being a new business environment, the development was a significant success and was related to other work, currently in production use in Azerbaijan and in Canada.
- Over a period of sixteen years, wrote software for, integrated, and maintained, a set of technologies around SQL, Web/IIS/.NET/ASP.NET MVC, Mobile (latterly including Xamarin Forms), Windows services, and an existing (and old) ERP system, which enabled a small company that supplied mission critical printer maintenance to succeed even when competing with much larger companies; winning contracts with FTSE 100 companies for very significant quantities of printers and meeting tight SLAs.
- Wrote and maintained a solution for a major Hire Purchase / Loan provider (one of the largest UK banks) for printing loan agreements at point of sale. This system was (and is believed to still be) handling greater than 50% of the agreements in the UK for certain “large ticket” items and has been operating for well over fifteen years with only minor updates.
- As part of a three-person team, handled foundation / support / infrastructure / interface code for an “output processing” system used by a telephone-based loan provider (now part of a major UK bank). This system scaled from an initial £200K per day of agreement processing, to £10M per day, over a ten-year period with just one refresh at the mid-point. The system was very highly valued by users and very easy to operate.
Recent Certification
- OSIsoft PI AF SDK Developer Certificate
- OSIsoft PI WebAPI Developer Certificate
- OSIsoft PI SQL (inc' RTQP) Certificate
Recent History (further information upon request)
February 2021 (ongoing) - Freelance Development
- Maintaining an old WebForms app, refactoring, and then creating a new MVC app for the site
September 2020 to November 2020 - Freelance Development
- PoC and performance testing .NET core app on Ubuntu, OpenMAMA (C/C++/C#) from Vela Superfeed to database (MySQL, InfluxDB)
September 2019 to February 2020 - Freelance Development
- Maintain, and add features to, a Python ETL system (SQLAlchemy, Alembic, PETL, Excel, SQL Server - Research organisation)
February 2019 (ongoing) - Sys Admin
- Dell server maintenance and development work for a local company
February 2019 to September 2019 - Personal Development
- PI DA/AF system setup
- PI AF SDK certification
- PI WebAPI certification
- PI SQL certification
August 2012 to December 2018 - Freelance Development
- IIS application connecting Java code (Tomcat) and OSIsoft PI AF Client. C# & Java. (Achievement 1)
- IIS application connecting Java code (Tomcat) and OPC DA / HDA. C# & Java
- Java JSF application (Tomcat / PostgreSQL) for editing extensive and detailed configuration
- Minor JavaScript work for graph generation
- Application to firewall WITS0 data (Windows service and related GUI). C#
- Application to transfer / firewall UDP data across a network using specific rules. C#
January 2001 to July 2018 - Freelance Development / SysAdmin
- Develop application suite to integrate SQL Server 2000 – 2014 T-SQL, Web/IIS, Mobile. C# and various
- Windows services (C#), and an existing ERP system, to provide user / customer access to a fully integrated remote engineer management system. (Achievement 2).
- Develop CRM system (specific to their old ERP system) using ASP.NET MVC attached to the local ERP system and with company specific facilities.
- Administer servers - WS2012R2 / hyper-v / AD / Exchange / SQL Server / DFS / IIS.
- Develop and maintain the system outlined in Achievement 3. C++ app, IE integrated
- Develop and maintain the system outlined in Achievement 4. C++
June 2008 to October 2014 - Developer, Primary School Management Software
- Windows desktop C# application for managing progress against the National Curriculum (and other more detailed targets). Major design points were ease of use by non-technical teachers and a combination of purpose designed graphics for detailed “at a glance” achievement monitoring. Installed at a number of schools in Lincolnshire including large multi-form entry schools.
January 2001 to July 2012 - Supplier / Frrelance Development
- Work on a Windows based C++ system for processing data, initially a GUI based system but needed conversion to run as a service with the GUI working remotely over the network
- Continued development of an embedded system to connect PCs with high-speed Xerox printers, initially designed to be driven by IBM mainframe connects (Bus and Tag), x86 and C++
May 2001 to August 2014 - Supplier / Freelance Development
- Various Windows applications / services for processing data. C++ or C#