Below is a short summary of the work experience received at each of the companies I've worked for, and of some of the other projects I've been involved with, either at University or in my own time. Most recent experience is listed first. Follow the links to find out more about my work or about the companies in question.
Work Experience at Parametric Technology (UK) Ltd
I have spent two and a half years at PTC as a senior software engineer working in Bracknell, Berkshire and now Fleet, Hampshire for the European R&D section of this CAD/CAM company. All the work has been with creating a new graphical interface and tools for their CAD product - Pro/Engineer. Writing in C and using X, Xt, Xm/Motif, Win95 and NT on all variants of UNIX and NT workstations. Major projects included Japanese Language support and overlay plane support, both of which involved one or two months at the company's headquarters in Waltham, MA, USA. Find out more about my job at Parametric, skills I have made use of, and areas of expertise I have gained working there.
Work Experience at Laser-Scan Ltd
I spent eighteen months working in Cambridge for Laser-Scan, (an established leader in Geographical Information Systems software) as a software engineer, writing telecommunication analysis software. Experience was also gained in project management, quality audit (ISO 9000) procedures, customer training, and on-site consultancy. I received a letter of commendation from the company thanking me for a highly successful month of consultancy in Taejon, Korea, at the Korea Mobile Telecomms Research Center.
Ray Tracing (Gallery)
Outside of work, ray tracing has been my biggest project, with over 2500 hours being spent over the period from 1989 to 1995, working on a sophisticated pure assembler ray tracing application for the Acorn RISC Machine (ARM). This has since resulted in my giving a lecture on the ray-tracer as part of the Computer Graphics course for the MSc group and third year BSc at Imperial College. Also, I was approached by a technical author who has described my work and included some of the images in a published book on computer graphics.
Once the project had reached a point where it was generating good images, a company called Arxe systems funded further work on the project, and I worked for them for two summers. The application is now owned by a German company - 'Evolution Computer', and has caught the interest of a Japanese company for use in the top end television and film markets. The ray tracer has featured on stands several years running at the Acorn User Show in Wembley and went on sale in 1995 across Europe under the name of Merlin. Experience has been gained in writing and using a number of different rendering and image processing programs and techniques.
Other Relevant Experience (University projects etc.)
Programming experience in C, Modula-2, ARM Assembler, Prolog, Miranda, Hope, Pascal, Fortran, X-Windows, CSTools, and RISC BASIC V. Machines used include a 32 Transputer Meiko Computing Surface, Sun Microsystems equipment 3/60, Sparcstation I, Sparc 2 and Sparc 10, IBM PC x86 architectures, Apple Macintosh, Hewlett Paccard 712, 715, 750 and 775, Digital DecStation 5000 series and DecStation Alpha, Acorn Archimedes and PC 600, and Commodore Amiga. Operating systems used include UNIX, SUN OS, Solaris, Ultrix, HP-UX, DOS, MEIKOS, ARM RISCOS, and AMIGADOS. The most experience has been with the UNIX operating system, coding in C, and with the Acorn RISC Archimedes computer, coding in C and ARM Assembler. Database systems used include the Oracle and Ingres relational database management systems.
Projects within the Computing course include the following two:
A 4 week project to develop a simple ten layer VLSI editor, written
in C for a SUN 3/50, consisting of a set of 2D editing procedures and object
hierarchies.
A 10 week project as one of a team of 5 developing a garden design
program, written in Borland C++, for a Naga 486 PC. This involved documentation
of the requirements specification and the functional specification, coding,
testing, and the writing of a user manual, the latter of which was my responsibility,
along with the coding necessary to create a simulated real-time 3D walk
through of the users design of the garden. This allowed the user to move
through the display, showing everything from garden sheds to patio tables
with parasols, and herbaceous plants to willow trees.
The final year individual project consists of an implementation of the
Finite Element Method applied to a two dimensional structure on a parallel
machine. This involved the creation of a full 2D structure editor for generating
structures such as bridges or towers, which ran on a transputer, and also
the creation of an interface between a Meiko computing surface and a host
SUN sparcstation IPX to allow an X application to be run on a transputer.
Code written by the Aeronautics department for the Meiko surface then took
the structure along with a set of forces at each node, and applied the
Finite Element Method to the data to see how the structure distorts under
those loads, finally returning the processed data to the calling program
which displays the results.