An experienced IT degree educated Software Architect/Developer with over 20 years continuous commercial experience utilising various technologies including the latest Microsoft products.
I have extensive commercial experience in the .NET framework encompassing c#, ASP.NET, web services and the use of XML technologies. I have excelled at every level from developer to architect and have extensive experience of the full development life cycle
I'm currently looking for a challenging contract in central Europe.
.NET Consultant / Developer at Grenke Leasing, Baden-Baden, Germany
April 2015 – Present:
Development of a suite of microservices for the company’s website. Initially adding the ability for customers to digitally sign contracts using DocuSigns restful API.
C#, T4, DocuSign, microservices, CQRS, DDD, WebApi, Visual Studio 2013
Senior Web UI Developer at HypoVereinsbank – UniCredit Bank AG, Munich, Germany
January 2014 – March 2015
Development and maintenance of a global intranet application central to the bank traders’ daily duties. Involving the creation of new ASP.NET WebForms when constrained by the existing architecture. Additionally architecting and implementing new modern responsive SPA applications with AngularJS and Bootstrap 3 to provide reference designs for the future of the intranet site. The Angular views were built using a combination of UI Bootstrap, Kendo UI and custom directives. Client side data repositories were utilized to communicate over WebAPI to an NHibernate backend for all the relevant data.
C#, NHibernate, Visual Studio 2010, SQL Server, ASP.NET, AngularJS, JavaScript, JQuery, BreezeJS, Bootstrap 3, SignalR
.NET Consultant / Architect at Sinfonie, Berlin, Germany
November 2013 – Present
Creation of a T4 based T4 framework to generate the entire source code and supporting visual studio files based on a SQL Server based data model
T4, C#, Entity Framework, Visual Studio 2012
.NET Consultant / Architect at KPMG, Berlin, Germany
September 2013 – December 2013
development of an internal web application to support the company’s staff carry out its core business. Creation of a reference architecture to be used as the foundation for future projects.
ASP.NET, MVC 5, WebApi 2, Entity Framework 6, KnockoutJs, OData, VB.NET, Visual Studio 2012, JQuery
Interface Architect: Volkswagen Financial Services AG, Germany
August 2012 – August 2013
Coordinating the connection of web services from disparate systems to provide a holistic sales experience for car dealerships in global markets. Leveraging Enterprise Architect to produce UML diagrams to define business processes as well as the technical activities between the systems. Customisation of the printing module to meet Russian market requirements. Development of a set of DSLs to rapidly move from an in-house MVC framework to a MVC4 based solution utilising KnockoutJs and JQuery.
Enterprise Architect, WebServices, SOA, C# 4.0, ASP.NET MVC4, Visual Studio 2012, UML, DSLs, T4, KnockoutJs, Javascript, JQuery
.NET Consultant: Voxtron GmbH, Germany
January 2012 – August 2012
Helping to ensure the delivery of a telecommunication system for the Austrian railway network that connects the rail employees using voice over IP to legacy rail infrastructure. Design and creation of a web portal for administering the system configuration stored in a “Model First” based Entity Framework repository.
C# 4.0, WCF, SQL Server 2008, ASP.NET MVC3, Telerik Extensions for ASP.NET MVC, Kendo UI for ASP.NET MVC, ADO.NET Entity Framework 4, Unity
Architect / .NET Consultant: eResearchTechnology GmbH, Würzburg, Germany
May 2011 – December 2011
Production of the functional specification of an internal software management system to automatically configure and deploy SOA components in the enterprise. Part of the team implementing the solution in C# utilising a database centric back end exposed to a WPF front end through a WCF service layer. Due to the software running in environments that require FDA approval the software was developed under a variant of Microsoft’s MSF where great care was made about the tracing of requirements through to implementation so that the software could be properly verified and validated.
C# 3.5, WCF, WPF, SQL Server 2008, Enterprise Architect
Architect / .NET Consultant: Francotyp-Postalia, Berlin, Germany
May 2010 – March 2011
Responsible for the introduction of DSLs into the development iteration process to automate the generation of code for areas of the system where distinct code patterns could be identified and reused. Migration of an Informix based solution to Postgres including the transformation of SQL code as well as the C# and C++ business layers.
C#, DSL, T4, WinForms, WCF, XML, XSD, NetTiers, Informix, Postgres NUnit, VS 2010, C++
Architect / .NET Consultant: PSI Transcom, Berlin, Germany
June 2009 – May 2010
Creation of a VisualStudio hosted DSL to reduce on-going development costs. The DSL was based on UML’s class diagram and provided an intuitive and familiar way for developers to design software using a model driven approach. The DSL automatically generated / updated C# or VB.NET code to reflect the model. Subsequent changes to the code resulted in the model automatically updating to reflect these changes; providing a true bi-directional code generator. Additionally responsible for the migration of the train scheduling web sites from VS2005 to VS2008 and refactoring to a new internal API.
C#, DSL, T4, XML, VS 2010, VS Automation, ASP.NET
.NET Consultant: Impuls Systems GmbH, Gersthofen, Germany
November 2008 – March 2009
Team member involved in the development of a new public facing insurance web portal (http://www.impuls.com/). The project was run using Scrum and in German for both communication and development. The portal was developed in C# for both the business layer and in conjunction with ASP.NET to create WebParts for the SharePoint 2007 website. Extensive use was made of DevExpress’s web control suite.
C# 3.5, ASP.NET, SharePoint 2007, XML, VS 2008, SQL Server 2005, JavaScript, JQuery, LINQ, DevExpress
Head of Software Development: n.runs AG, Berlin, Germany
August 2008 – November 2008
Brought in to the company with the responsibility of managing the company's software development department, leading a distributed small team of developers and ensuring the delivery of the company's security product APS. This involved establishing a SDL compliant version of Scrum within the company and introducing TFS and Groove to ameliorate the communication and tracing problems prevalent in a distributed company. Although the department had to be closed down due to the difficult economic situation, an initial release of the product was completed and ready for market. Along with the successfully migration from a Subversion based revision control system to a TFS SCM and CI environment.
C#, WinForms, WPF, WF, XML, XSD, NUnit, VS 2008, TFS, SVN, Groove
.NET Consultant: Francotyp-Postalia, Berlin, Germany
August 2007 – August 2008
Development of a C# WinForms application to concurrently communicate with up to four large franking machines. Collecting statistical information about the franked letters as well as controlling the physical devices.
Design and implementation of a SOA to expose a tiered backend system leveraging WCF. Approximately 90% of the source code was generated using CodeSmith and the .NetTiers template library along with project specific templates written to save significant development time.
C#, WinForms, WCF, XML, XSD, NetTiers, Informix, NUnit, VS 2005 & 2008
.NET/GIS Consultant: Sopra Newell & Budge, Edinburgh, UK
June 2006 – July 2007
Design and implementation of COM extensions for ESRI’s ArcGIS product, based at the Scottish Executive. Additionally responsible for mentoring team members as well as working with the Executive to define their development and deployment strategies and guidelines for .NET. Creating development and deployment strategies and guidelines for the General Registrars of Scotland within a .NET and ArcObjects context.
This included:
- Introducing the adoption of design patterns.
- Leveraging application blocks such as Microsoft Pattern & Practices Group’s Enterprise Library.
- Review and re-architecture of deployment strategies for GIS desktop applications.
- Introduction of SCRUM as an agile development methodology.
- Introduction of community tools such as NDoc. NAnt, NUnit and NCover
- Established the use of FxCop for static code analysis and automated unit testing with NUnit.
- Liaison with internal customers to ensure requirement fulfilment and mitigate against scope creep.
- Liaison with the infrastructure administrators to ensure release integrity to the enterprise.
- Architecture and development of foundation libraries to enable rapid development of a holistic suite of applications.Architecture and development of foundation libraries to enable rapid development of a holistic suite of applications.
C#, ASP.NET 2.0, WinForms, ArcObjects, GIS, XML, XSD, Oracle, COM interoperability, NDoc, NAnt, NUnit, NCover, VS 2005
.NET/GIS Consultant: ESRI UK, Edinburgh, UK
January 2005 – June 2006
Design and implementation of the strategic cash flow module for the Forestry Commission. Developed in C# as a plug-in extension for ESRI’s ArcGIS product to be used nationally by the Forestry Commission for their cash flow projections. Design and implementation of web application to serve map images from ArcIMS to a web portal leveraging ASP.NET 2.0. Maintenance of the water quality website for a large English local authority in Java based on a MVC architecture using JSP.
C#, ASP.NET 2.0, WinForms, ArcObjects, ArcIMS, GIS, XML, XSD, Oracle, Java, COM interoperability, NDoc,, NUnit, NCover
.NET Architect / Consultant: The EssentiaGroup, Glasgow, UK
September 2004 – December 2004
Short term contract to integrate the client’s VB.NET CRM application with a third party’s CTI system.
Enterprise Services, VB .NET, XML and XSD.
Product Manager: VisionWare Plc, Glasgow, UK
March 2002 – September 2004
Responsibility for the architectural design and development of an entity identification product developed using .NET technologies. The product allows multiple backend systems to be linked and common entities, such as customers, to be identified, cross-referenced and effectively cleansed. Data modifications can then be synchronised between the various systems via a published messaging interface.
My responsibility was to architect the product to utilise .NET technologies and provide technical expertise to produce a more secure and scalable solution.
This included
- Use of web services and remote components to provide a standard interface for internal as well as third party developers encouraging a service oriented architecture.
- Use of COM+ enterprise services to produce scalable and secure n-tier architecture. This included the use of LCE to allow easy extension of core functionality.
- Extensive use of XML/XSLT and XSD schemas to format, validate and distribute data between systems.
- Creation of a suite of extensible custom web controls for rapid creation of a web front-end application, which were exposed using Digital Dashboard.
- Use of MSMQ messaging for integration with legacy systems through BizTalk 2004 and other enterprise level integration systems.
- Creation of a secure web application targeted for a web farm environment.
This was very much a hands on and lead by example role and included mentoring and managing a team of less experienced staff. Scrum was adopted for running the project to allow for the frequent changes in requirements and the need to frequently demonstrate runnable versions of the software. All development was done in C# with judicious use of the UML using Visio.
C#, ASP.NET, ADO.NET, SQL Server T-SQL, COM interoperability.
Software Consulting UK Ltd., Edinburgh, Lothian
1998 – March 2002
An 18-month contract for Vodafone Ltd during which I was responsible for the design and implementation of various win32 and intranet applications for Vodafone (Finance Department). Development was carried out using ASP, ASP.NET, C#, VB.NET, Visual Objects, and Oracle Financials 8i. This was a senior developer role for win32 applications and team leader for intranet applications.
Team leader tasked with the development of Windows contract management and billing system application for The City of Westminster. This included frequent visits to client site for design and progress meetings.
Designed and implemented an optician’s till system, using CA’s Visual Objects for Windows.
Visual Objects, ASP, ASP.NET, C#
Senior Analyst Programmer /Team Leader: Cashfac Solutions Ltd, Livingston, Lothian
1995–1998
responsible for the full lifecycle of a number of small to large projects. This included the design, development, implementation and team management of a large cash management system. My role also included the mentoring of junior staff and the production of the overall architecture and programming framework.
Institutes such as The Royal Bank of Scotland, The Bank of Montreal and The Royal Bank of Canada are using these systems.
Clipper, Visual Objects
Software Engineer: Marconi Simulation & Training, Donnibristle, Fife
1990–1995
providing system support for a large RAF simulator. Development environment: Ada / Actor – Unix / Windows. Work involved frequent visits to RAF Kinloss for acceptance testing of new modules.
My duties also included the design, implementation and four months on-site support for of an underground simulator for the Hong Kong underground (MTRC). Development was done in a Pascal/DOS environment.
I was also involved in the design and implementation of the following projects:
- Sonar trainer for the U.S. Navy. Development environment: Actor – Windows.
- Radar simulation for the Royal Navy. Development environment: Ada – Unix
Ada, Actor,Pascal