CEO ShinobiControls | COO Visiblox
2010 - 2015Scott Logic- Ran their internal product business. Initially I led the technical development and managed the public release of Visiblox Charts—a .NET WPF/Silverlight charting component.
- Launched a new product venture ShinobiControls—building tools for mobile development, and led it from inception to a market leading position.
- Served as a performance manager—mentoring junior and senior staff members and doing performance reviews and career development work with them.
- Built an internal MIS dashboard application on Groovy/Grails to support business decisions.
- Ran numerous consulting engagements to assist with the embedding of our products in client applications; including clients such as Transocean, Adidas, Microsoft, and more.
Technologies: Grails, Groovy, Objective-C, Java, Windows Presentation Foundation (WPF), .NETSenior Software Engineer
2007 - 2010TomTom- Worked as part of the R&D unit based in Edinburgh—developing and maintaining traffic detection algorithms, map processing, and device research.
- Developed and maintained a custom multi-threaded, high-throughput geo database engine for a high volume throughput of data. The engine stored ~200 terabytes of map and GPS data for batch-processing. During my custodianship, I improved the throughput performance of the engine by a factor of 10.
- Maintained the map generation process for turning the TeleAtlas map data into a custom map database format suitable for traffic detection and trip analysis. The process ran quarterly, generating maps for large parts of the globe, and maintained a maximal historic compatibility for analysis across maps.
- Developed an algorithm for detecting map errors and new road geometry based on GPS trip data retrieved from TomTom devices.
- Built a custom WebKit engine for use on an ARM based mobile device, as part of a new UI architecture based around HTML5. I also, as part of this project, built a prototype HTML5 front-end, and browser plugin for rendering maps.
Technologies: Bash Scripting, JavaTechnical Director
2000 - 2007Edina Software- Progressed from graduate developer to being the technical director (CTO) of the business in 5 years.
- Participated in and led numerous consulting projects in that time including a number of large systems for the Scottish Qualifications Authority—developing high school results acquisition and processing systems.
- Oversaw the overall technical strategy for the business—including architectural decisions, technology decisions, and skills development.
- Mentored, managed projects, and provided technical leadership as well as pure software development.
- Acted as the CTO of an intrapreneurial startup venture, ioEng, focused on mobile workforce enablement (in the pre-smartphone era). Architected and led the development of a sophisticated data capture and processing product.
Technologies: XML, HTML, .NET, Java