About Me

Consultant Software Engineer


With my broad background in software development and street navigation I offer consultancy services in areas such as:

  • Building compelling in-vehicle and pedestrian navigation products extracting maximum value from available map and georeferenced content.
  • Prototyping map-based software systems including LBS and turn-by-turn applications.
  • Authoring requests and responses to map and LBS related commercial bids.
  • Writing and delivering clear and authoritative training materials particularly in the mapping, navigation and LBS fields.
  • Tuning of navigation software components such as guidance, routing and vehicle positioning.
  • Migrating navigation and LBS products from commercial map databases such as supplied by NAVTEQ and TeleAtlas to OpenStreetMap.
  • Most recent development experience is on the Android mobile platform and Linux + PostgreSQL + PostGIS + Apache + PHP + Drupal web server platforms along with Perl scripting and Java applications.

I am a strong believer in solving problems with re-use, particularly drawing on Free Open Source Software with careful attention to selecting sources with appropriate licensing.


January 2012 – present Freelance consultant working with a wide variety of clients throughout Europe including Wireless Logic, Gewi and NIS GLONASS. Android, Java, C++, Python, Perl and PostGIS development in the general cartography, GIS, navigation, UBI, LBS and publishing areas.

July 2000 – December 2011 Principal Consultant for a leading worldwide supplier of navigable map data, NAVTEQ (later Nokia). Projects undertaken in technical lead and consultancy roles for market-leading clients in handset, network, automotive sectors as well on public sector projects. Development projects included proof of concept work in C++ and MS-Windows for a mobile location based technology startup, UK Government consortium work on investigating probe-vehicle technology and J2EE server software to support desktop, Mobile phone browser and PDA clients for a carrier provider. Consultancy and training delivered to companies at all stages of the navigation product development lifecycle from product concept through to pre-launch field testing.

June 1999 – July 2000 Technical architect for a prestige software consulting company, Parallax Solutions. Ran as technical lead on a re-engineering project with Ford Motor Company which now processes orders for all vehicles sold in Europe using the system. The solution based on Java and Oracle involved seamless integration to a live, legacy, mainframe-based system without interruption of business. The project started out as a proof-of-concept which demonstrated that the company’s approach would indeed offer the cost savings, increased flexibility and increased performance required by the customer.

1997 – 1999 Developed components of in-vehicle navigation system for Jaguar Cars as part of a major automotive component supplier, Denso. Development in ‘C’ using OMT to proprietary Hitachi-based embedded hardware platform including vehicle networking applications (SCP protocol), in-vehicle diagnostics, emergency calling and navigation user interface. Also provided extensive customer-facing support including specification and acceptance testing criteria negotiation, program management and sign-off testing in Europe, USA and Japan. Developed testing tools in C++ using Windows CE touch devices.

1995 – 1997 Developed various server-side systems for an Internet-based personal finance company that was a startup offshoot from Mitsubishi Electric. Systems included real time X.25 data feed processing from London Stock Exchange to internal SQL Server. CGI programming in Perl and ‘C’ for a web-based mobile ‘phone share price alert system, including dial-up interface to all UK mobile network centres. NT server used throughout as platform.

1993 – 1995 Worked on team (as technical lead) to produce network management system for a major Japanese PC manufacturer, Mitsubishi Electric. Involved GUI development in C++ and network management design based on SNMP standard. Windows 3.1 used as baseline client platform.

1991-1993 Developed integrated security systems for a major Japanese PC manufacturer, Mitsubishi Electric. This involved software production from Microcontroller assembler to Windows VxD device drivers to Windows client applications. Design work included a key management system for a distributed security policy administration system and encrypted hard disk and infra-red key card token systems.

1989-1991 Developed Ethernet device drivers in Intel 80×86 assembler for a major Japanese PC manufacturer, Mitsubishi Electric (formerly Apricot Computers Research and Development). This included design, code and test of drivers to work in MS-DOS and Windows 386 environments. Drivers for DECNet, NetBEUI and TCP-IP were developed.

1988-1989 Developed production test systems in ‘C’ for a successful British metrology company, Renishaw. This included control software for proprietary serial communications protocols.