I am currently a software engineer at www.holidaylettings.co.uk
and have a wealth of technical skills with over 12 years experience working as a
developer and am Microsoft certified.
I have a keen interest in new technologies and have been looking at the following
for various side projects at home:
- HTML5 and mobile applications including Android and iPhone
- Silverlight/WPF specifically for the MVVM design pattern.
- NoSQL databases and key value stores, RavenDB, MongoDB,Amazon simple storage and
- Sharding and scaling out databases
- Cloud based storage and hosting including Amazon EC2
- CQRS design pattern
- ORM technologies and frameworks
- Microsoft MVC Java, Ruby and Python community for ideas on different ways of software
- Database migrations and continuous deployment methodologies
- Messaging, SOA, MSMQ and message queue technology in general
- RESTful API's
- Requirements analysis and specification writing skills. Including using Visio and
Balsamiq for mock ups.
- Knowledge of MSF, Waterfall, SCRUM, XP, Kanban and other software methodologies.
- Understanding and implementation of software design patterns including MVP and MVC
Ruby, Java, Python
- Databases: SQL Server 7-2008. MySQL 5, MarkLogic XML database, Lucene.net, RavenDB.
- Web development skills: XHTML, HTML5, CSS, Web Standards, ASP.NET, jQuery and YUI.
- Windows/Smart clients: MDI forms, Asynchronous threaded applications, MVP, MVVM
and Click Once.
- Web Services: understanding of SOA. SSL, Soap Headers. Asynchronous calls, SOAP,
WCF and OAuth
- Windows Services: written and installed.
- Testing and Source control: nUnit, MSTest, nAnt SVN, Mercurial, CruiseControl.net
- Bug tracking – Fogbugz, Jira and various home grown systems including one that I
wrote for a client.
- Deployment: IIS configuration, MSI and Installshield routines written for IIS Web
servers and RM CC3 Networks
- Customer facing skills, providing onsite support for schools with install and product
- Microsoft Visual Studio.NET 2003/2005/2008/2010.
- Microsoft SQL Server Enterprise Manager, MySQL workbench and HeidiSql.
- RedGate SQL Compare and Data Compare.
- ScaleOut StateServer
- NUnit/NAnt/MSTest/TestDriven.net and selenium
- Rhino Mocks and Moq mocking frameworks.
- StructureMap and NinJect IOC containers.
- CruiseControl.NET and TeamCity continuous integration.
- Various ORM tools (LLBLGEN Pro, nHibernate, Subsonic, Linq2SQL, Entity Framework
4 code first, Massive, Dapper and PetaPoco) using both Active Record and Repository
- Sourcegear Vault/Fortress, SourceSafe, Subversion, git and Mercurial source control
- Installshield Developer
Microsoft Certified Application Developer
For Microsoft .NET, Microsoft Certified Professional
- 316 Developing and Implementing Windows-based Applications with Microsoft Visual
C# .NET and Microsoft Visual Studio .NET
- 320 Developing XML Web Services and Server Components with Microsoft Visual C# .NET
and the Microsoft .NET Framework
- 315 Developing and Implementing Web Applications with Microsoft Visual C# .NET and
Microsoft Visual Studio .NET
- 229 Designing and Implementing Databases with Microsoft SQL Server 2000 Enterprise
08/2009 - Present
Holiday Lettings Ltd
2nd Floor, Barclay House
242-254 Banbury Road
- Investigated and implemented an OAuth solution as a service around existing soap
web services for a mobile project.
- Migrated team from svn to mercurial dvcs.
- Mentored other developers with an MVC side project.
- Upgraded team and live web servers to use latest .net 4 framework and tools with
- Secured the advertisers website journey with SSL including writing a library for
development team to reuse for SSL related pages.
- Used ILMerge and sn.exe to combine a .NET assembly used by classic asp pages with
its dependency on the MySql connector to enable xcopy upgrades of the MySql connector
simplifying deployment to the web farm.
- Part of the team that integrated Experian web services for integrated identity and
postcode search with JSON for the website
- Built web service consumer to a TeleSign api including using Moq to mock business
logic without consuming real web service
- Wrote automated unit test suite with unit-console as a basis for any future continuous
- Improved memory footprint of nightly process to transfer Holiday Lettings property
inventory to Trip Advisor.
- RESTful availability and calendar search web services written and now being used
by the Trip Advisor website.
- Mocking, Inversion of Control, Dependency injection and repository patterns introduced
to the team.
- Enquiry survey response system written which is an automated process that handles
the entire enquiry survey process end to end including email templates and email
11/2008 - 08/2009
Churchlands Business Park
- Maintained and supported existing VB.NET asp.net localized website
- Wrote documentation for existing functionality
- Wrote specifications for new functionality including visiting client's sites with
Managing Director to discuss new projects and gather requirements.
- Provided 3rd line support for client.
- Ran code review meetings.
- Developed new features with VB.NET, SQL Server 2005 and Telerik UI components.
- • Sourced and installed scale-out server for centralizing sessions across web farm
initially then started to cache more data to improve performance and reduce load
of database server.
01/2006 - 11/2008
Solution Revolution Limited
67 East Street
Clients and projects included:
- Pearson Education/Harcourt Education
I was the Lead developer of the ODE World little bits of learning project where
I was responsible for 5 developers within an agile team that included UI Testers,
Content Experts, SCRUM Master, Accessibility experts and project and program managers.
I helped gather the original requirements from the domain experts and setup the
initial architecture using nUnit tests, RhinoMocks mocking framework and a nAnt/nCover
and CruiseControl.NET automated build process. I also worked with the UI Testers
to help implement the selenium UI testing framework from Thought Works.
The application was an ASP.NET C# website built using model view presenter, interfaces,
inversion of control and factory design patterns using a service layer that an .asmx
web service used as a thin wrapper over for a Windows Click Once Smart client that
was used for the internal administration of content.
The application also used an XML MarkLogic xml database and Microsoft SQL Server
2005 database including Full Text Search for the search engine side of the application.
I also worked on other ad-hoc projects that included writing CSV import tools.
This file-sharing and management application I quoted and specified was built under
budget and within time and is now being used in the UK and South Africa. It enabled
the client to share large documents via FTP without the IT department having to
manage the IIS security or temporary file storage for often temporary file sharing
between staff and external clients.
The application was designed as a c# asp.net front end, SQL Server 2005 backend
along with windows service scheduler and a custom solution that I wrote to handle
the creation/deletion of windows accounts/ftp virtual directories and the deletion
Design patterns included inversion of control, interfaces, concrete classes and
a custom data access layer talking to stored procedures.
- Mesacom (UK) Limited Postureminder DSE
For this project as a C# developer I helped meet with the client to gather requirements
and document and write a specification to design a Display Screen Equipment training
and self assessment system that is now being used by Ricoh UK.
This system I helped to build was used built using ASP.NET C# and Microsoft SQL
Server backend along with a Window Service scheduling system. This application used
the model view presenter pattern also however we re-used the clients own data access
For this application I converted the Photoshop PSD documents into an XHTML template
for use as the Master Page and helped integrate my clients Shopping Basket into
the application. I also amended and helped write additional stored procedures.
I was also involved with client meetings
For this project I was involved in technical and onsite desktop support including
the setup of a domain controller, exchange server and backup and UPS systems.
- Berkeley Executive Cars
For this client I designed and built a logo and page design using XHTML and CSS.
I also provided technical and onsite support for the client.
- Spratt Endicott Solicitors
I quoted, specified and built a C# asp.net application with Microsoft SQL Server
Express backend that is today still used for companywide helpdesk and ticketing
support. This application also used LLBLGen pro ORM tools.
- SS20 Skate Shop
This client required an automated solution that would take and transform data from
a custom built CRM and automatically upload this data to an online store provider
for their e-Commerce solution.
This application was a Windows Forms Desktop Application written in C# and had a
plug in architecture to allow the same data to be uploaded for future uses such
as Amazon, ebay or froogle etc.
11/2005 - 12/2005
Southill Business Park
- Maintain www.conveyancingportal.com with C# asp.net
- Maintain web service application layer using C# asmx services.
- Provide code reviews with junior developers.
- Provide daily and weekly updates to management.
03/2002 - 11/2005
Senior Application Developer
Harcourt Education International
Senior Application Developer
- Created MSI installers for Heinemann elearning products including Easiteach content.
- Designed and developed C# windows forms application for WYSIWYG creation and packaging
of QTI content for learning management systems.
- Designed and developed content management system for QTI based question content
including asset management and content source control using C# asp.net and my own
custom Active Record style ORM pointing to a SQL Server 2000 database.
- Investigated using AI and Rule Based Expert Systems for assessment based products.
- Provided support and code reviews for junior developers and contractors.
- Helped maintain OLTP/OLAP real time assessment engine used by schools over the UK
- Migration of Heinemann.co.uk site from classic ASP to ASP.NET
- Developed learning management systems for Heinemann elearning products.
- Provided on-site support for installs and product based queries.
- Designed and developed xcopy content deployment mechanism for learning management
system using C# windows services.
- Setup code best practices, developer environments and build process utilizing unit
tests, source control, automated NAnt build scripts and Installshield install routines.
02/2001 - 03/2002
36 Magdelen Road
- Developed Members Area for www.eyeforaerospace.com for exclusive database driven
content, PDF presentations and audio files.
- Implemented XML newsfeed syndication for www.eyefortransport.com so that all new
content was also written to XML for syndication to both www.moreover.com and www.isyndicate.com.
- Designed www.global-list.com and set up / installed SSL on IIS web server.
- Created Stock Grabber system to pull Aerospace stocks from various financial sites
for use in newsletter wizard that I built.
- Developed Generic Form System to enable designers to cut and paste a dynamically
generated form into any web page with automatic database capture, confirmation email
and personalised thanks page. (www.eyefortransport.com)
for the order form and SSL and AspEncrypt component / client side personal certificate
for secure emails
- Created an advanced search feature that also captures the search terms for reporting
- Built HTML / Text newsletter wizard (www.auto-asia.com)
- Developed and implemented an 'Add your comments' feature for news articles (www.eyeforaerospace.com)
03/2000 - 02/2001
- Developed FreeTel's website which includes parsing news feeds from XML to HTML
- Designed and developed the company's intranet including a database driven, web based
customer support logging system.
- Liaised with clients that required websites from the business plan stage through
to the creation, development and testing of the final sites
- Developed a test site for the group that required individual users to login to a
database and download software to configure a PC to access a new dial up account.
- Deal with 2nd line support calls from subscribers
01/2000 - 03/2000
IT Support Technician
IT Support Technician
- Provide 1st line support for a variety of external clients by analysing the problem
and providing a resolution where possible
- Provide user training on the Microsoft Office suite of applications along with Lotus
- Create reports daily regarding call status
- Developed web pages that delivered on-line reporting based on data held in a Microsoft
SQL Server database
Harcourt Education International Ltd
Henry Ayres Head of Assessment Technologies
Harcourt Education International Ltd
Serverside Graphics Ltd.
18 Maddox Street
London, W1S 1PL
Mesacom (UK) Ltd
3 Banbury Road
Linked In Profile