Email me
I am an embedded software engineer with a passion for improving software quality.
Languages |
Platforms |
Process |
Fields of knowledge |
C++ C Java C# Perl DSLs |
Embedded Linux Tizen Windows QNX QT Symbian |
Agile Test driven development Scrum Continuous integration Test automation Release management CM Multisite working Multi-timezone teams |
Smartphone Security Communications Networking Multimedia Speech Recognition Bluetooth Geo-location Open street map |
Work
2011-02 to present | Digital Pariah Ltd, Haverhill – Director and Software Engineer
As director of Digital Pariah Ltd I have undertaken contracts for: · Nujira – Configuration tool for Layer 1 software code auto-generation (C#/C); Refactoring RF TX/RX FPGA pipeline control into OO structure (Matlab OO) · Nuance – Natural Language Understanding cross-platform library for Tizen embedded Linux (C/C++) and Blackberry QNX (C/C++); Android (Java) Speech Application for integration in device firmware · Vlingo – Speech controlled assistant for pre-installation on Symbian OS (C/C++), and a Windows (C/C#) based speech controlled TV application · Cell Telecom – POWDER application (C++) descriptors for WAC Web Runtime (JavaScript/HTML) for firmware integration on Symbian OS In between this work I have created a system (Java/J2EE) using Amazon Web Services to extract and process information from the Open Street Map database (SQL/Postgres/PostGIS). |
2010-06 to 2011-01 | Service2Media, Enschede, Netherlands – Software Engineer
At Service2Media I took a prototype multimedia Lua script engine on Symbian platform (C++/QT/Lua) to release quality in line with the cross platform engine on iPhone, Blackberry and Android platforms. |
2007-08 to 2010-03 | Sony Ericsson, Kista, Sweden – Software Engineer
During my time with Sony Ericsson I was involved in the design, writing, testing release and debugging of multimedia system software (C++) for Symbian OS phones and the creation of a custom made continuous integration build and test server (Make/Perl/HTML). The firmware was released in a number of SEMC phones. |
2006-05 to 2007-07 | Refresh Mobile Ltd, London – Software Engineer
While at Refresh Mobile I was responsible for the Symbian Mobizines client, working closely with the server team to add functionality to the system. My work included C++ coding and testing new client versions, configuring the client for delivery to numerous markets around the world and preparation of the client for passing the Symbian Signed process. |
2005-05 to 2006-05 | Infomatrix Ltd, Cambridge – Software Engineer
I undertook a number of projects mostly based around an embedded Linux Set Top Box primarily used for streaming IPTV; the projects included a device driver (C) for decrypting video streams, a build system and creation of a distributed automatic test system (Perl) for a Tetra web acceleration project. |
2004-09 to 2005-03 | Symbian Ltd, Cambridge – Software Test Engineer
I returned to Symbian to work as part of a small team expanding the Bluetooth audio capabilities of the platform. My role involved working closely with the development team to specify, create and run a series of tests to ensure the functionality, stability and error handling capabilities of new code being added to the operating system. |
2003-06 to 2004-08 | Nokia-Japan Co Ltd, Tokyo, Japan – Software Integration Engineer
During the year in Japan I worked as part of a software integration team bringing a new GSM phone (7610) to market, this involved bringing together early software releases from many suppliers through to the final shipping of the product. The role of my team in this project covered various aspects of software integration, including clarification of specifications, initial integration of software onto the new hardware platform, generation of a build system to ease the release process, configuration of software features, arranging the delivery of custom software from a number of suppliers all around the world, analysis and debugging of software defects, reporting and tracking defects with software suppliers. My role within this team covered all of the above aspects of the project. |
2001-08 to 2003-05 | Mathengine plc., Oxford – Senior Software Engineer
At Mathengine I was product manager for the Zenon multimedia enabler library for handheld computers and set-top boxes. This included heading a small team taking the cross-platform library (C/C++) from a state of functional prototype through to release to hardware manufacturer for inclusion in a device ROM. |
1998-09 to 2001-07 | Symbian Ltd, London – Software Engineer
My role at Symbian involved developing software libraries (C++) and operating system enhancements to support the secure use of software on the Symbian platform. I worked on porting encryption algorithm libraries, a Secure Socket Layer, the design and development of an architecture for the use of secure tokens and smartcards within the system and an analysis of the security vulnerabilities within the platform. |
1994-07 to 1998-09 | Timetrack UK Ltd, Daventry – Director
Comware Products Ltd, Daventry – Software Engineer I was responsible for the creation and maintenance of the software for Comware Products embedded systems, mostly based around Z80 and 6502 processors, including a go-kart timing system and a number of shop data collection systems. During the time I spent with Timetrack I also provided some expertise for the following companies: · Inter Clear Service Ltd – a Certification Authority. I was the main developer of their central key server software which performed the signing of X509 certificates for their customers. · JCP Computer Services Ltd – a Java ecommerce solution provider. I supplied design work for their implementation of SSL. |
Education
1989-1992 | University of East Anglia – Mathematics |