What have I done?


September 2019 - Current: VisionsLive: Senior Developer

Implemented video conferencing system to create a new product as part of an existing software offering. Worked with C#/ASP.NET on the back-end, with React and Material UI on the front-end. Occasional work with Node JS backend systems and Docker infrastructure maintenance. Modified, updated and implemented build systems for Docker-hosted Node JS backends and React applications.

April 2014 - September 2019: In Touch: Technical Lead

Technical leadership and mentoring role. Guided development of products to benefit the business. Designed and implemented system for managing configuration and deploying updates to embedded equipment distributed over a wide area. Designed and developed monitoring system for embedded sensor network. Documented and implemented new processes for both technical and non-technical aspects of the team. Mentored staff for professional development and ensured effective use of resources by taking advantage of individuals’ strengths and weaknesses. Analysed technologies for potential usage in new products. Led a shift in primary technologies whilst building colleagues’ knowledge of new systems. Working primarily in C# and ASP.NET on the on the back-end, with Vue.js and jQuery UI. Smaller projects involving Python/Django, embedded C/Assembly, and a smattering of other technologies.

October 2011 - April 2014: In Touch: Software Developer

Web front-end and server back-end development role. Performed full software lifecycle tasks, from Analysis to Maintenance. Development of business-oriented applications using ASP.Net (MVC with C# and VB.Net), MS-SQL, HTML, JavaScript, CSS. Setup and maintenance tasks on both Windows and Linux servers. Integration of various GIS technologies and datasets, including GeoServer, PostGIS, OpenLayers, OpenStreetMap, OS MasterMap and OS OpenData.

Performed mentoring and guidance of interns and new development staff. Assessed technical skills of candidates during interviews and provided recommendations based on their skills.

August 2009 - October 2011: OpenBet Technologies Ltd: Software Developer

Web-oriented software development role. Performed analysis for projects, organised automated testing and reviewed code as required. Developed customer-facing systems using HTML, JavaScript, Tcl and IBM Informix, as well as various back-end and development/testing tools.

August 2010 - June 2011: Time spent on secondment with new company expansion in Canada, extended periods working on-site with customer contacts. Performed pre-live development tasks, as well as launch-period and post-launch support. Arranged initial automated functional testing and static analysis setups. Performed analysis for further changes.

Summer 2007: Prolog: Baggage Claim Executive

Trained staff when new employees were required, kept to strict targets. Routinely dealt with confidential customer financial information.

2005-2007 (intermittent): IT Consultancy

Assisted with family's computer consultancy. Implemented PHP-based time-management system for a local business, with features according to customers' requirements. Worked with business to assess need for a new system.

Winter 2005-Spring 2006: Prolog: Call Centre Executive

Took customer orders using various systems.


February 2014: Normannis Website Revamp

Revamp of the website for Historia Normannis re-enactment group. Worked closely with the group head to put together new design extended from existing concepts. Staging of new features to ensure timely delivery of high-priority requirements. Implementation of the new look and feel as a WordPress template to allow maintenance by a wider variety of users. Creation of UI widgets where needed.

February 2014 - Current: Membership Details Management System

Design and development of bespoke system for collecting and managing membership details. Collecting of requirements from various stakeholders and resolving conflicting requests. Consideration of data protection issues of handling sensitive personal and medical details. Creation of system using the Django framework and further development projects. Iterative changes yearly as required by changing needs.


2006 - 2009: Lancaster University: BSc Hons Computer Science (2:1)

Major course: Computer Science (Optional modules: Embedded Systems; Artificial Intelligence; Special Topics in Computer Science)

Group Project: "Guided Vehicle Parking System" - group implementation of java-based networked parking management and vehicle guidance system. Used pseudo-3D overhead guidance and interface suited to touch-screen interfaces. Responsibilities included implementation of the map rendering system and development of the accompanying website.

Dissertation: "High-rate sampling and compression in Embedded Sensor Networks" - involved implementation and evaluation of compression system on low-powered devices. Written as thesis and demonstrated with an oral presentation.

Various Java projects: 2D physics simulation and rendering, basic JSP/Tomcat implementation, genetic algorithm for route finding, recursive descent parser, various non- course projects (NMEA parser, IRC client)

C and ASM coding: file-system design and implementation, networked chat program, DNS client, database code, wheeled robot control code

Minor course: Mathematics - modular course, combined core maths and engineering-specific topics

2001 - 2006: Sudbury Upper School and Sixth Form

A-level: Physics (B), Maths (B), Further Maths (D)

GCSE: 6 A*-C (including Maths and English), 5 others.

Skills & Qualities

  • Experience programming C#, Python, JavaScript, Java, Tcl, VB.Net, PHP, C and NesC (XScale platform).
  • Experience with the ASP.Net MVC platform as well as knowledge of classic ASP
  • Database development, query design and optimisation experience in IBM Informix SQL and Microsoft SQL Server/T-SQL. Also some knowledge of MySQL and Access based systems.
  • Knowledge of a wide range of web-related technologies, including: JavaScript, HTML5, Ajax, jQuery
  • Proficiency with standard workplace software: Windows, Office, Linux, etc.
  • Basic knowledge of French and German.


  • Amateur Radio, course and examination taken in order to gain license
  • Involved in 12th Century Re-enactment group, perform public displays, giving information to members of the public on various aspects of relevant history

Any questions?

If you'd to ask me anything more - feel free to email me at james[at]jamescheese.co.uk