Andrew Robb
Personal Particulars:
- Position:
- UNIX, C++ programmer.
- Age:
- 43 years
- Availability:
- immediate
- Qualifications:
- BSc Hons Mechanical Engineering
- Experience:
- IT Professional with over 20 years experience of the
computer industry covering a broad spectrum of the
project life cycle:
- 6 years experience of C++ under UNIX (GNU)
and 2 years under Windows (Borland).
- 10 years experience of C under UNIX and DOS.
- Over 11 years experience as a UNIX systems administrator.
- Currently working on a web-pad device.
- Previous work on a customer management system.
- Past Experience:
- Responsibility for the system administration and
maintenance of 8 HP-UX and 3 IRIX systems.
- Configuration and general support for over 20
PCs (Workgroups and 95).
- 11 years experience of MATLAB and C MEX-files.
- 10 years of FORTRAN (Modal Analysis).
- Maintained HP1000 RTE-A minicomputer.
- 4 years of HP BASIC (Rocky Mountain).
- Some Turbo Pascal.
- Address:
- 23 Middleton Avenue
- Hove
- East Sussex
- BN3 4PH
- Phone:
- +44 (1273) 388052
- FAX:
- +44 (1273) 414385
- Mobile:
- +44 (7790) 743966
- E-Mail:
- AJRobb@bigfoot.com
EMPLOYMENT HISTORY
- FEB 2000 - DATE: Ångstrom (start-up)
-
- Position:
- Linux consultant (also C++).
-
- JAN 1998 - FEB 2000: X-TENSION (PROJECTS) LTD.
-
- Position:
- C++ UNIX Developer (also script).
-
- DEC 1978 - JAN 1998: RICARDO CONSULTING ENGINEERS LTD.
- Position:
- Principal Engineer, Powertrain Refinement Dept.
- C++, ISO/IEC 14882-1998:
- This has been his principal programming langauge since 1997.
His experience covers six years.
Programming with draft ANSI and ISO/IEC compilers (GNU, Borland and HP).
Currently writing with gcc-2.95.2.
Previously worked with HP ANSI C++.
He used Rational Rose for
design and documentation.
- C, ANSI X3.159-1989:
- This was his principal programming language for eight
years (1989-1996). Excellent programming skills for
writing portable code, e.g: 16-bit DOS through to 64-bit
UNIX from same source.
- UNIX Programmer (HP-UX, Linux, IRIX)
- He devised and implemented new analysis techniques that
are in daily use within the department and sold
commercially. He also wrote systems administration
software (mostly C but some shell-script). This included
a back-up system (based on cpio format) to perform
incremental back-ups with a minimum of impact on the
network and host systems (separate processes for reading
and writing using share memory).
- UNIX Systems Administrator:
- He has experience in writing and maintaining shell scripts for Bourne,
Korn and C shells. At Ångstrom, he has been acting as UNIX consultant.
At X-Tension, he maintained their UNIX systems.
At Ricardo, he was responsible for; specifying, purchasing,
installing and maintaining UNIX systems and software
within the department of over 35 (mostly graduate
engineers). These used NFS, NIS, DNS and SMB (Samba).
He maintained the systems with critical patches and CERT
advisory notices. He implemented and maintained the site
DNS servers. He also implemented the department Intranet
WWW server in 1995 and wrote several on-line technical
training manuals.
- Windows Programmer (Workgroups, 95 and NT4):
- In the space of a month he rewrote an application that
took the previous programmer 18 months not to complete.
He used Borland C++ Application Expert to lay
down the framework and Class Expert to build
the GUI and define transfer buffers.
- MATLAB Programmer:
- He was principal author of ASTRA (automated
software for transmission rattle analysis). This also
uses phase-demodulation (Hilbert) and resampling
(Shannon) to identify rattling in pairs of gears using
simple instrumentation (inductive probes). This is
correlated with measured sound and vibration to rank the
importance of each gear pair. Most of the processing is
in compiled C MEX-files.
- FORTRAN, ANSI X3.9-1978 + MIL-STD-1752:
- For ten years (1978-1988) this was his principal
programming language. He developed automotive emission
test cycle simulation software. This predicted vehicle
emissions from steady-state test-bed data. He also wrote
a control strategy optimisation program as companion to
the simulation program. Together they were used to
optimise diesel fuel-injection timing and EGR (exhaust
gas recirculation) control strategies for a US EPA
parametric trade-off study (particulate v. NOx
at maximum fuel economy). He also optimised
modal analysis code.
- HP (Rocky Mountain) BASIC:
- In 1983 he completed the acoustic intensity analysis
software (driving a 2-channel FFT analyser) and added the
data presentation software.
This stayed in daily use (almost untouched) for 12 years.
- Signal Processing:
- Sampling (anti-aliasing/Nyquist).
- Resampling (Shannon).
- Fourier Transforms (including window selection/limitations).
- Hilbert Transforms (including amplitude/phase demodulation).
At Ångstrom, he has been configuring Linux to run on prototype web-pad devices.
He is also there to form the backbone of a C++ team for e-commerce application development.
At X-Tension, his last task was to program the Vantive side
of middleware (Tuxedo) for EDS in Paris. Data handling within middleware uses C++ STL containers.
The Vantive consultants recommended against using the Vantive API.
Instead, access to the Vantive's Oracle database tables was through:
- Pro*C
- PL/SQL stored procedures
- SQL views
He designed it this way so that changes to tables and/or business rules
only required changes within Vantive's database (to the views and/or stored procedures)
and not to the compiled code (i.e. the Pro*C was fixed).
The same middleware programs were used simultaneously on both development and production databases.
Database skills were widely available at the client for maintaining the logical views presented
to middleware.
With the middleware developed, he then spent some time on optimising the database
(indices, views and stored procedures).
Access times with a full customer database dropped from 50 sec/query (first row)
to 40 query/sec (all rows), i.e. 2000 times faster. A single query took 1/6 sec.
His previous task at X-Tension was also middleware related.
He was programming in C++ using Remedy's Action Request System
API. He was responsible for the final development of the production code.
This also included the interface to Keenan's Arbor/BP and the main scheduling
engine.
The production code was developed from a prototype middleware system.
This also acted as the operational business layer between a service desk GUI
(Remedy) and a billing system (Keenan Arbor BP).
He was first contracted, at X-Tension, to write the
Remedy side of the prototype system.
It runs as a daemon process under HP-UX
and uses a UNIX message queue to marshal requests.
Results are returned through a separate named pipe for each request.
The requests are defined by a table,
which can be read from a Remedy schema (Sybase table).
Previously, at Ricardo, he wrote a data re-sampling program for a client in
the USA in 1990. At his last contact with the client in 1995, it
was still in increasing use. His 5000 lines of C had been left
untouched (although recompiled on other platforms). This
processing engine implements both Hilbert transforms
(for phase demodulation) and resampling to transform time-series
data into the powertrain's flywheel angle domain. The
client's developments have been built around this processing
engine.
He has written a demonstrator program under IRIX to play sound
files synchronously (to facilitate subjective A-B comparisons).
He also wrote a filter program to apply both fixed-frequency and
tracking notch filters to binaural audio data (Head Acoustics).
- He maintained:
- 8 HP-UX workstations running LMS Cada-x since
1990.
- 3 IRIX workstations running Adams and MATLAB
since 1993.
- 28 PCs running:
- Windows for Workgroups 3.11 and Microsoft
Office.
- Windows 95 and Office 97 Pro.
- Windows NT4 SP3.
- Microsoft Internet Explorer.
- NCD PC-Xware.
- Linux (Slackware 3.2) - principally for X.
- 8 networked printers.
- 3 NCSA httpd servers (IRIX and HP-UX).
- Author of on-line training manuals (written in HTML).
- CGI for system maintenance.
-
- He gave technical assistance to Computing
Services Dept:
- DNS database for local networks (RFC 1957)
- Samba to integrate Windows and UNIX.
- Secure FTP servers.
-
- Signal Processing Techniques:
- Between 1987 and 1994, much of his time was devoted to
the development and application of advanced signal
processing techniques to problems with automotive NVH (noise, vibration
and harshness).
-
- Energy Flow Analysis:
- This is an experimental/theoretical technique to
determine the important paths for (car interior noise)
energy. It is similar to the more theoretical Statistical
Energy Analysis. He wrote the code to perform the
experimental analysis. He refined the general technique
to make it much less sensitive to experimental/systematic
errors.
-
- Modal Analysis:
- When he joined what became the Powertrain Refinement
Dept., he was performing experimental modal analysis of
powertrains. This included debugging and optimising
(including vectoring) the analysis code. He reduced the
typical time to load and display an animated mode shape
from 20 seconds to under one second. He introduced
similar speed improvements to the data reduction and
greater improvements in the analysis.
-
- He was so successful that the costs reduced from £25,000
to £5,000 and it was no longer worth quoting for jobs
(then on cost-plus). With experience, the quality of the
data acquisition (using over-sampling) and analysis
techniques improved. He also developed an ancillary
technique for modeling the effect of ribs etc. This
correlated very well for bending modes against full FEA.