|Email:||(contact me though this email address for full contact details)|
Marital status: Married, one child
Date of Birth: 12/11/64
Full driving licence, own car, etc.
I am an experienced Software Engineer with hardware design experience, educated to Degree level. My background in hardware and embedded software design gives me an insight into the performance implications of high-level software architectures. Recently I have gained experience in communications. I have a keen interest in engineering in general, and so gain much satisfaction from "making stuff work", from the smallest microcontroller to large software systems.
Mathematics A + S1 (Distinction in Special Paper)
Electronic Systems A
Use Of English Pass
First in BEng (Hons) Electronic Engineering (four Year course), sponsored by Marconi Instruments.
I have also dabbled with Visual Basic, Awk.
Senior Software Architect at Magic4 Ltd. Magic4 (http://www.magic4.com) provide embedded messaging solutions for mobile handsets and smartphones. Current products include both EMS and MMS messaging clients, integrated into the handsets of several mobile phone manufacturers. I am responsible for the architectures of new products, in particular the MMS messaging client. This is designed to be as portable as possible, as it has to be integrated into a wide range of RTOS' , or even no RTOS at all, depending on the software architecture of the target device. This has required knowledge of:
Software is primarily developed in C, as C++ compilers are not always available for the target environments. I have also been developing testing tools in C, C++ and Java.
I also occasionally visit clients and prospective clients to act as technical consultant in the pre-sales and immediate post-sales periods.
Senior C++ Architect, ControlForce Ltd. ControlForce (http://www.controlforce.com) is a mobile data application provider. Its product range centres around data collection and distribution using various hand-held computer platforms, with client/server communications over a variety of media. My responsibility is for the software architecture of the communications systems, both at the server and client ends. I have implemented communications links using:
I have used Microsoft Visual C++ to develop PC and Windows CE applications, and Borland C++ 5.02 for some PC applications. I have also "kept my hand in" with a little embedded development on an AMD '186-based GSM/GPS combo unit.
While at ControlForce I have introduced a revision control system (Perforce), together with the associated work practices to ensure that while development proceeds in parallel, delivered software is fully traceable.
Senior Software Engineer, Telemac Services (Europe) Ltd.
Telemac (http://www.telemac.com) provides systems to support the use of handset-based prepay mobile phone telephony, which has a system for transferring value securely to the handset.
Responsible for maintaining and extending the high-bandwidth server application written with Borland C++ Builder, using Sybase Adaptive Server 11.9 which manages the pre-pay system. Wrote several accessory maintenance/diagnosis programs in Java that also access the database, using JDBC.
Wrote a prototype prepay server application in Java (JDBC, JConnect, Sybase ASE 11.9).
Principal Engineer, Geoworks.
Eden Group Ltd was taken over by Geoworks, a US company based in Alameda, California.
Initially, was involved in supporting use of the OS as before, but as the software base evolved, has been moved to work involving Geoworks' OS software. This is written in C++.
Six months as Engineering Project Leader for the OS tools group, on secondment to the company's US office.
Ported the C++-based OS to the Hitachi SH3 processor. Supported other developers using the port to deliver a product.
Worked on the team developing server software in Java for delivering content and services to mobile phone handsets. Previous experience of real-time systems was invaluable for producing a high-throughput interface to the phone network's SMSC (Short Message System Controller), using IP and RMI.
Technical specialist member in teams doing product workshops with prospective customers. This involves analysing the customer's product concept and trying to assess how Geoworks can turn that concept into a product.
Geoworks had a contract to assist Sonera SmartTrust in developing mobile phone-based e-Commerce. I was involved in brainstorming and specifying a new eCommerce and Public Key system, suitable for power and bandwidth-limited devices.
Built software for prototype "Bluetooth Coke Machine", used to demonstrate Bluetooth e-Commerce technology at several exhibitions.
Software Engineer, then System Architect at Eden Group Ltd, UK.
One of a team of three engineers designing and building a new operating system for PDA-type products, using a 32-bit RISC processor ( Hitachi SH-1). The code was written using assembler and 'C', and the system used a real-time multitasking kernel. Since the processor is new, I have also been involved in finding and working around bugs in the development tools!
Promoted to System Architect, had responsibility for looking further into the future, steering the direction of development of the operating system to enable its use in a wide range of products. Also supported the software engineering staff in implementing applications running under the OS, acting as general system "expert". Involved in the OS port to Motorola's MPC821, Hitachi's SH3, and a Philips MIPS-cored device. The intention was to create a set of APIs that would a) allow for software re-use, and b) allow for binary application portability across products. APIs were constructed such that in the future, legacy applications would not be prevented from working by new features of the OS. This required that each API had to be tested against potential future enhancements.
Project Engineer at Sension Ltd, Northwich, Cheshire, then
Senior Engineer at Di-loG Instruments, a division
of Kane International.
Upgrading and bug-fixing of the software of an automatic
Cable Tester system, written in Pascal and Z80 Assembler. This
system used two Z80-based control units, communicating over an
optical link. One operated the high-voltage (8KV) insulation test
and low voltage continuity measurement apparatus inside a safety
cage, while the other provided the high-level measurement functions
and user interface outside the cage. Modification and repair
of the same system, involving work at the Customers site. Initial
stages of the logger projects detailed below.
In September 1992, Sension was taken over by Kane
international, and the energy logger business transferred to Di-loG.
As part of this change, I was promoted to Senior Engineer.
Project leader for hardware and software design of two energy consumption loggers, one battery powered (low-power CMOS design), the other low-cost. Software written using 'C' and 80186 assembler. Assisted with layout of PCBs for loggers, using Cadnetix CAD system.
The first was a battery-powered device, that used a 80C188EB micro, operated in a "burst" mode, to conserve power. This project unfortunately did not see the light of day.
The second was a mains-powered, low cost device call the Hawk 5000. Based on the 80C188 (for cheapness and ease of software development) it measured energy consumption by monitoring load current using clamp-on current transformers. Resistive and reactive power is measured by sampling current and voltage, and performing the multiplications and RMS calculations in software. Wrote most of the embedded code for the instrument. It was set up and programmed by a "front panel" program, run on a PC. Assisted and managed the writing of this program, written in C++ using the Zinc Interface Library.
Project leader multi-function electrical tester, Hitachi H8/300 based, involving digital and analogue design with mains voltages. The project was very cost sensitive. The FIO-240 measures Earth Fault Loop Impedance, Prospective Short-Circuit Current, and tests RCD breakers, in accordance with the 16th Edition Wiring Regulations.
For both of these products, was responsible for Engineering support for the transfer of the products to production.
Customer support for the above products.
General PC support for the office.
New product evaluation.
Supervising one other engineer.
Engineering support to test and repair department.
Initially Graduate Engineer, and then Design Engineer at Marconi Instruments, Stevenage.
Modifications to a 250W switch-mode power supply. Modifications to a data acquisition board, and an 8088-based CPU board. Extensive changes to control software of a large spectrum analyser, written in PL/M86 and ASM86 running on an 8088-based embedded controller. Real-time, embedded software written in 'C' running on an 80186 using the Jackson System Design formal method, and Jackson Structured Programming. Wrote tool support software for direct code generation from JSD databases, running on PC-compatibles. Spent a short time writing code for the ADSP2100 DSP chip.
During this time acted as unofficial PC support person for the department, in which he worked, and assisted in the setting up and running of a Banyan Vines Local Area Network.
Fairly soon after joining, received the "Student Of the Year" award from the Company.
Spent 13 weeks of each summer vacation at Marconi Instruments, learning about the operation of the Company by spending time in various departments. Produced a report from each period, that formed part of the degree assessment.
Employed for several weeks at a local electronics company, Remsdaq, modifying a modem board, and environmentally testing it.
Tinkering with computers & electronics.