I have not updated my CV since 2006. I now have a permanent job as a C# programmer.

This is my academic CV. It is also available in Microsoft Word 2000 and text formats.

I also have a regular 2-page CV [HTML | Word | text].

Dr. Andrew Philip Broad,

address suppressed on public academic CV.


Nationality:         British

Date of Birth:      suppressed on public academic CV

Email:                 see website

Website:             http://geocities.com/andrewbroad/


A highly skilled computer-scientist with outstanding academic achievements, my core skills are in programming and software-development, technical writing, research, and composing new fields of knowledge.

I work accurately, thoroughly, systematically, innovatively, and with integrity. I love to learn, and I am determined to succeed.





University of Manchester                                                                              1997–2003

          PhD in Computer Science (2003)

                      • Comparative Code Understanding of Information Models

            MPhil in Computer Science (1999)

                      • The Application of Case-Based Reasoning

                           to the Understanding of Constraints on Information Models


I founded the field of comparative code understanding, and applied it to the task of comparing EXPRESS information models. This entails combining comparison with the extraction of higher-level knowledge about constraints in the models. Syntactic constraints are automatically annotated with explicit descriptions of their semantics (higher-level constraints), enabling semantic equivalence to be assessed despite syntactic differences.


I took the initiative to put my notes on research, thesis-writing and vivas on my website.


Skills: research, technical writing, programming (in Java), design, planning, presentations.


Knowledge: code understanding, code generation, software reuse, semantic equivalence,

data-translation, integration, case-based reasoning.


Publications: two conference-papers – I gave presentations for both:


[1] Broad A. and Filer N. (1999). Applying case-based reasoning to code understanding and generation. Pages 35-48 in: Watson I., editor. Proceedings of the Fourth United Kingdom Case-Based Reasoning Workshop (UKCBR4), University of Salford, Salford, England, 15th September 1999.


[2] Broad A. and Filer N. (2000). Extracting constraint knowledge from code: A case-based reasoning approach. Pages 83-96 in: Bramer M., Macintosh A. and Coenen F. (editors). Research and Development in Intelligent Systems XVI: Proceedings of ES99, The Nineteenth SGES International Conference on Knowledge Based Systems and Applied Artificial Intelligence, Cambridge, England, 13th-15th December 1999. Springer-Verlag, London. ISBN 1-85233-231-X.



My wider research-interests include case-based reasoning, natural-language processing, comparison and matching, information integration, code understanding, automatic programming, software reuse, and programming-language design.





Civil Service Fast Stream Summer Placement Scheme, CESG, Cheltenham           2004–2005

• 5-week summer placement + 10-month extension, working from home.

• I was given a brief to write a driver for a USB device to read the RAM of an iButton

  from 16-bit MS-DOS mode (which has no built-in USB access). My job entailed

  searching for information that could help me with this challenging task, and combining

  the relevant information into a working prototype – which I achieved within 6 months.

• I used the remainder of my placement to develop a 32-bit Windows version which can

  write as well as read the iButton’s RAM, and to write up a 121-page design-document.

Skills: research, programming (in C and 80286 assembler), technical writing, self-discipline.

Knowledge: USB protocol, UHCI, 1-Wire protocol, low-level PC architecture.





University of Manchester                                                                             1994–1997

          BSc in Computer Science with First Class Honours


          • Williams/Kilburn Medal (outstanding final-year student)

            • ICL Prize (top final-year student)

            • Professors' Prize (best second-year single-honours student)


Knowledge: artificial intelligence, knowledge-based systems, natural-language processing,

programming (object-oriented, procedural (C), functional, concurrent), language-design,

compilers, operating systems, networks, machine-architecture, theory of computation,

logic, software engineering, databases.

CS3900 project: object-oriented library of problem-solving algorithms in C++

(pattern-directed inference, truth-maintenance, propagation via constraints).





Lymm High School, Warrington                                                         1987-1994

          Four `A' Levels (1994)

                        Computing (A), Mathematics (A), Physics (B), German (B)

          Nine GCSEs (1992)

                        Computer Studies (A), English (A), English Literature (A), French (A),

                        German (A), History (B), The Sciences: Double Award (A,A),

                        Mathematics (A), Mathematics Extension Paper (Merit)



I am an experienced programmer, particularly fluent in Java, JavaCC, C/C++, BASIC and Standard ML (I have also programmed in Perl, LISP, KnowledgeWorks, Prolog, lex & yacc, Pascal, Intel 80x86 and Motorola 68000 assembler-languages, and Z80 machine-code).


I am competent with word-processors (e.g. Word), desktop-publishing packages (LaTeX and FrameMaker), databases (e.g. ORACLE/SQL, Access), spreadsheets (e.g. Excel), Web-browsers (Netscape and Internet Explorer) and PowerPoint.


My general computer-literacy enables me to learn new programming-languages and software-packages quickly. For example, it only took me a couple of hours to learn Access from scratch when I volunteered to help St. Joseph's Family Centre recover from a computer-crash in December 2002.


I am a Professional member of the British Computer Society (MBCS).





• Classic computer-games and Spectrum-emulation. I have written room-editors for Manic Miner

   and Jet Set Willy, over 400 rooms, and various patches in Z80 machine-code.

• Following professional tennis, writing match-reports; playing tennis and table-tennis.

• Listening to music and collecting records.

• Reading – factual and fiction (e.g. sci-fi, Tolkien).

• Learning natural languages and translating foreign text to English.



REFEREES – unavailable on public academic CV.

Hosted by www.Geocities.ws