email: emmerik at gmail dot com
web: http://vanemmerikfamily.com/mike
Seeking
Programming positions where low-level, technical knowledge and experience is important, e.g. binary tools, compiler back ends, embedded systems.
Interests
Disassembling and decompilation; binary translation; reverse engineering.
Skills
C 15 years
C++ 13 years
Assembler:
x86 15 years
SPARC 10 years
68K 5 years
Some experience with PA-RISC, Z80, 6502, 6800, 68HC11, 2650,
6502, 6809, and others back to the SC/MP.
Low level code 17 years (disassemblers, decompiler, binary translation, device drivers)
Other languages: some use of Basic, Pascal, Fortran, Unix scripts, sed, awk, Tcl/Tk, dBase, Lisp, Prologue, Simula, Snobol, Cobol
Digital electronics 8 years (test, redesign for testability, PC repair)
Work History
| 2001-2006 | PhD student, University of Queensland. The topic is "Static Single Assignment for Decompilation". |
| 2004 | Consultant, Indec Consulting. Converted a BASIC application to C++ for RailCorp. |
| 2003 | Consultant, Indec Consulting. Assisted with investigations into the Waterfall train disaster. |
| 2003 | Consultant, LEA Detection Systems. A colleage and I successfully recovered missing source code for a C++ Windows application using the Boomerang decompiler and some manual editing. An experience paper was published in WCRE 2004. |
| 1997-2001 | Senior Research Assistant, University of Queensland. Main output: UQBT (a retargetable Binary Translator); I designed and wrote about 80% of the it. Some of the technical aspects included binary file formats, link maps for constructing the target binary at a specific virtual addresses, machine idiosyncrasies such as delay slots; register windows, and x86 floating point compares. |
| 1995-1996 | Contractor, Telstra Corporation. I designed and wrote the Windows Field Terminal (fault report management software). Windows 3.1, C++. |
| 1993-1994 | Research Assistant, Queensland University of Technology. As part of the REVCOMP project, I assisted Cristina Cifuentes with her definitive PhD project, dcc (a machine code decompiler). The static library signature detection work for dcc was published in ASWEC '98 (Australian SoftWare Engineering Conference). |
| 1990-1993 | Developer, Telecom Australia. I was part of the DRIFT project (a multisession communications program with a scripting language). The work involved C++, emulations, hardware layers, interrupt routines, and some reverse engineering, including the use of PeriscopeTM hardware. |
| 1983-1989 | Engineer class 2, Telecom Workshops Brisbane. The work included digital electronics, dBase II/III programming, and the use of ATE (Automatic Testing Equipment). National factory control software rollout for 6 months (before Workshops were closed down). |
| 1981-1982 | Engineer class 1, Telecom Australia (now Telstra Corporation). |
Publications
Pre employment
| High school | Communications receiver; 5" CRO; serial computer (part completed). See nostalgia part 1. |
| University | TTL video terminal; 2650 DOS; 600 baud DECwriter; Z80 Resource (disassembler); ported arcade video game (Frogger on Scrambler); SCSI hard disk interface; external floppy disk units for Amiga. See nostalgia part 2. |
References
Provided on request.
Last updated 9th Aug 2006: Updated and cleaned up; new sections
email address