Introduction

This CV is primarily a list of projects I have worked on because I consider these to demonstrate my abilities more than formal qualifications. I have also included a list of my hobbies and activities I take part in for my own amusement. There is considerable overlap between these areas, however.

If I find a job interesting I will do it well, regardless of whether I have had training or not - I am very self motivated in the right conditions.

Education and history

My education includes A levels and two years of university, reading computer science, which I left due to boredom. (Although I did enjoy the advanced C course, which I passed with a very high grade.)

Since then, I have been working writing and designing software and hardware, and looking after my family. I take open university courses from time to fill in some of the gaps in my knowledge.

Summary

I think I would be happiest if self-employed, but I lack the organisational skills to achieve this. If you run a small close-knit company and find that I have skills you can use, then read on. Otherwise, I am probably not the person you are looking for.

Projects

Many of my projects are listed on my website's home page. These in particular are selected as I feel they would be of most interest to the kind of employer I would want to work for.

  • Presently - Automotive projects

I am currently working on designs for an engine management system with some unusual features. Whilst there are “Off the shelf” solutions available, I am doing this for my own enjoyment and education. I am also designing an electronic dashboard, and associated computing modules.

  • Ongoing - Linux kernel work

I Submit code to be incorporated into the Linux kernel other than my PDA and arm26 work - for example, I have submitted a number of bugfixes and I was the first to implement working support for SD controllers under Linux (without the benefit of specifications to help my work).

  • Ongoing - Linux PDAs

Currently I am contributing to the handhelds.org project in the form of a port of Linux to the Toshiba e-series handhelds. The ports are quite functional already and information is available here.

  • 05/06/2003 - Mass spectrometry software

I have written from scratch a complete data acquisition and display system for use with mass spectrometers (and other similar equipment). It runs under Windows and Linux, and is highly flexible.

  • 08/05/2003 - ARM26 Linux

I have spent some time repairing the port of Linux (a near-complete overhaul) for arm26 and have had this work accepted into the mainstream Linux kernel. It has given me considerable insight into the workings of the Linux kernel. I have also been able to use this project to teach myself about bringing up a system with no OS ROMs, initialising and probing the hardware, etc.

  • 14/12/2002 - Speedtouch firmware

I bought a speedtouch ADSL modem and got it running on Linux using some drivers I found online. I discovered the modem had an ARM7 CPU internally, and decided to contribute a free 'firmware loader' to the project (which was previously using a binary 'blob' from the windows driver). I completely re-wrote the firmware used to upload the OS image, and it was included in the next driver release. Visit the driver projects homepage for reference.

  • 01/05/2000 - Claranet (large UK ISP)

I worked for a year at claranet, following my departure from university. During my time there I implemented a number of systems, including writing an email↔SMS gateway from scratch - a technology that was new at the time. This program passed the telco verification tests first time, and has, to my knowledge, only ever had one bug found. I also rewrote a considerable chunk of their internal customer database frontend (C based CGI and web forms), increasing its reliability and functionality substantially.

  • Ancient history

I have always enjoyed programming - indeed, I have been doing it since I was 7 years old. Around age 13 I wrote a pupil ranking database system for a school in Manchester, and was payed for this by MEC. The program is still in use today, unaltered, and with no known bugs. As mentioned above I have a broad interest in programming in general, and my more current work can be seen on my website.

Skills

  • Strong C development.
  • Strong testing skills - my code rarely has bugs in it by the time I release it.
  • Reverse engineering and low level development
  • Several UNIX variants - particularly Linux and BSD, but also Solaris and AIX
  • Several CPU architectures, particularly ARM, x86, SPARC and MIPS.
  • An understanding of what my code does on a low level in the system, allowing me to write more efficient code.
  • Overall system design, from conception, high level, through to implementation and low level requirements.
  • Java maintainance
  • SQL (mysql, postgresql) database design and implementation for high performance SMS / email systems
  • Data analysis, including fuzzy matching algorithms.

Hobbies and fun stuff

I enjoy a wide range of activities, from reading to flying. Some I do often, some rarely, and some I wish I could do more often or at all. Here are a few of them:-

  • Reading (mainly sci-fi, fantasy, and technical manuals)
  • Walking and mountain climbing, particularly in the lake district.
  • Working on my car(s)
  • Swimming.
  • Horse riding.
  • Ice skating.
  • Playing the guitar (recently begun learning, 2007)
  • I organise a small social gathering locally
  • Dungeons and dragons (the role-playing game)
  • Designing small but useful programs and electronic toys.

I'd like to take up hang gliding, however I cant do this for a number of practical reasons at the present time.

 
home/cv/my_cv.txt · Last modified: 2010/07/03 00:10 by ian
 
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki