|
Key
Skills
I
believe that my two key skills are an ability to pick up new
technologies quickly and a good grasp of software project
planning and design. Every task I have undertaken has involved
something new, and I have not missed a deadline in over 10 years
(maybe longer!)
In terms of tools and technologies, I have recent experience of
the following:
Languages: C, C++, VC++, Java, NetLinx; Perl,
Python, JavaScript, VBScript, VBA; 68K assembler, ARM assembler;
HTML, XML, WML, JSP; SQL.
Environments: Windows, Windows CE, PalmOS, Linux.
with
earlier experience of many others. I have been programming in C
for 18 years, C++ for 14 and Java for 10. I am familiar with a
range of design techniques and QA tools and processes.
Professional Experience
[snip]. November
2001 — present
I set up
[snip] as a company to provide software services. Amongst
my clients have been:
[snip]
November 2004 – February 2005
I worked
on two projects subcontracted from [snip]. The
exact details are confidential, but the work involved design and UML modelling of automotive systems.
[snip] June — November 2004,
February 2005 — present
I
developed the software for a custom-install smart house. An AMX
NetLinx system was used to control all aspects of the house
heating, lighting, security and audio-visual systems.
[snip]
Limited
January 2004 — present
[snip]
are piloting a smart-card online payment scheme. I carried out a
use-case analysis for the system and then developed their pilot
software. It is a highly distributed system using strong
cryptography (JCE), the Java OpenCard library, applets, JSP,
servlets and PostgreSQL databases.
[snip]
January 2003 — present
[snip]
specialises in home entertainment systems. In partnership with
[snip] I have developed a generic remote control system for
multiple home audio devices using Flash and C++, targeting
Windows and Windows CE devices, with the possibility of
extending to Linux.
[snip]
November 2001 — present
I handle
all technical aspects of the software translation projects they
undertake (help, resource files, localisation problems etc.) and
have acted as interim project manager and technical advisor. As
part of this role I have developed an extensive set of Perl
tools for the preparation and QA of software translation
projects.
[snip]
July 2002 — September 2003
I
designed and implemented a demonstration of [snip] SoundServer
working with Philip's new iPronto "home control panel". It
integrates remote control of the SoundServer with an online shop
simulation and access to Muze information on the artists and
albums. The design made use of UML techniques. The JSP
application uses Struts with Java tag libraries interacting with
a PostgreSQL database, plus associated Perl and C‑based tools. I
later undertook a second contract to extend Imerge’s PalmOS-based
remote control program.
[snip]
June — August 2003
I was
part of a team of experts called in to analyse and document a
legacy payment processing system written in C, C++, Java and
Perl. I also performed a security audit of the system.
[snip]
1999 — 2001
Vice
President, Engineering
[snip] is a spin-off from Cambridge Consultants that
develops software to deliver content from a single source to
multiple platforms including handheld devices and WAP/i-mode
phones.
I joined
[snip] at its inception to recruit and head its development
team. I built up a staff of eight developers and then
successfully delivered three releases of the product set to
schedule and to the required level of quality. I was responsible
for the product's architecture (for which we used UML) and was
involved in all phases of their development. We created products
targeted for Windows, Solaris, Linux, Windows CE, PalmOS and
OpenTV, written in C++, Java and C. We supported mobile phones
through providing WML and i-mode gateways and I investigated
porting our microbrowser to EPOC (now called Symbian OS). Good
initial architecture allowed us to retain a large amount of
commonality between these various products, speeding development
time and reducing maintenance.
As a
line manager, I was responsible for the pastoral care and
development of the team and built up a system of appraisals
mixed with informal day-to-day contact that ensured that issues
were dealt with and training needs were met. As senior member of
the technical team, I also dealt directly with customers and
investors, providing technical input to meetings. I left
[snip] when it decided to raise revenue through sales of
adult content.
[snip] (Cambridge) Ltd.
1996 — 1999
Senior
Engineer / Project Leader / Consultant
[snip] was
a small research and consultancy company that specialised in
distributed computing. It was influential in the specification
of the RM-ODP and CORBA standards. It was acquired by Citrix
Systems Inc. in August 1998. Citrix’s product range focuses on
thin-client computing.
I
started at [snip] as a project manager for a large number of
internal, DTI-funded and European consortium projects. This
required frequent contact with our project partners, the DTI,
and the CEC; project planning and standards setting; business
planning; contract negotiation, and line and project management
of local staff. The projects were all in the field of
distributed computing, and I did development work on their ORB
products (in C and C++), handled build and debug tools, and
contributed a paper on signed mobile code solutions.
As the
projects I managed were completed I moved to the industry-funded
ANSA research team. There I helped to develop a flexible Java
middleware platform, including an IIOP stack that made use of
Java introspection to avoid the need to generate stub code. I
also assisted with the development of a training course showing
the applicability of UML to distributed systems design.
For a
short period before acquisition by Citrix, I acted as consultant
for a merchant bank on two projects to set up a documentation
standard, and to design a CORBA-based logging system. Within
Citrix, I was the leader of the security management team,
designing and implementing a performance statistics monitor for
NT and UNIX, a SOCKS extension to Citrix’s Win32, Windows CE and
Mac clients, and an architecture for adding SSL support to
Citrix’s products.
[snip]. 1990 —
1996
Principal Engineer / Engineering Manager
[snip] is
a Finnish multi-national developing and manufacturing
telecommunications equipment. I worked for the R&D group
specialising in transmissions network management.
I was
Technical Authority for enhancing [snip] existing Transmissions
Management Computer (TMC) to provide a key part of the GSM
system developed by the ECR900 consortium. This was a
challenging project, as it required extensive modification of a
product already at its limits in order to make it compatible
with the other manufacturers’ equipment used within the system.
I then
moved to leading a team that grew to six people. I was
responsible for the delivery of the core of a network management
product, TMS-OS, within very tight timescales. The core,
comprising around 200,000 lines of C++, supported a distributed
persistent object model (held in an Oracle database) with
multiple concurrent users. I was a technically hands-on team
leader and played a major part in the specification, design,
implementation and testing of the core. The design of the system
was carried out using OMT, a precursor to UML.
My
position as a team leader and technical authority also involved
me in liaison with the other teams on TMS-OS (a multinational
project with around 100 staff). This was as an adviser on
technical issues and as a participant in the design and
implementation of certain critical areas. This participation was
also at the project level in tasks as diverse as the
specification of quality standards and customer support during
field trials.
TMS-OS
resulted in 18 internal patent suggestions, all but two of which
were either wholly or partly credited to me. Of these, five have
resulted in UK patents being granted.
I was
then technical architect for the second release of TMS-OS, which
involved 35 effort years of development and testing over 6
months and came in two weeks ahead of schedule. After that
delivery, I moved to specification work on a new Windows NT
based product, familiarising myself with Visual C++ through
training courses and some prototyping work.
[snip]
1987 — 1990
Software
Engineer
[snip]
was a Cambridge-based company of about 100 people producing IBM
PC-compatible LAN software, providing simple icon-based user
interfaces for networking facilities.
For my
first project, I wrote a PC based defect report system. This
used an SQL database and led to my writing a parser that allowed
SQL to be embedded directly within C code. I then helped port
[snip] existing Tapestry 2 from DOS to OS/2. This gave good
experience of a team working to deliver a quality product on a
new platform within limited timescales. Finally, I planned and
carried out an investigation into the products available for
supporting generic windowing code for use on multiple platforms
(Windows and OS/2 Presentation Manager). This led me to design
and write a generic windowing class hierarchy in Objective C.
Throughout my time in this company I was also a prolific writer
of tools and utilities.
[snip]
Summer 1986
Using C,
I wrote a natural language parser based on probability chains. I
also acted as system manager for a MicroVax, and wrote a VT52
terminal emulator in ARM assembly language.
[snip],
Cambridge Easter 1986
I wrote
a parts catalogue database browser using Fortran and Ingres’s
embedded query language.
[snip], Bretby
Summer 1985
I
assessed the suitability of the expert system languages SAGE and
ENVISAGE for writing mining-related expert systems against that
of the programming language POP-11.
[snip]. Division 1983 —
1984
I worked
for the [snip] Management Information and Control Division,
where I developed and upgraded a number of management
information report programs written in PL/I. I also wrote a set
of applications using IBM’s ISPF menu–driven user interface for
mainframes.
Education
Queens’
College, Cambridge University.
1984 — 1987
MA in
Economics and Computer Science.
Davenant
Foundation Grammar School, Loughton.
1976 —
1983
3 A
levels, all grade A. 11 O levels, including French and German.
Adult
Education Classes
Institute of Linguists Intermediate Diploma (Spanish)
GCSE Russian
British Sign Language Level 1
I have a
reasonable command of conversational Spanish, and am able to
read French newspapers. I have taken adult education classes in
French, German, Spanish, Finnish, Japanese, Russian and British
Sign Language, and am an Associate of the Institute of Linguists
(AIL). I also have a City and Guilds Radio Amateur’s Certificate
achieved through study in my own time.
Papers
Status of Industry Work on
Signed Mobile Code;
8th
Joint European Networking Conference, 1997. (JENC8)
DIMMA – A Multi-Media ORB (ed.);
IFIP International Conference on Distributed Systems Platforms
and Open Distributed Processing, 1998. (Middleware
’98)
Personal
Date
of birth:
1
February 1966
Nationality:
British
.
Driving license: Full,
clean
Marital status:
Married
Interests: Bridge; reading; languages; skiing; walking;
crosswords (compiling and solving); cryptography; cookery;
travel. |