Note: This content is
accessible to all versions of every browser. However, this browser
does not seem to support current Web standards, preventing the display of our
site's design details.
2006 – Present; Software Engineer,
Oerlikon Contraves AG (www.ocag.ch)
- Video and Audio Streaming. In charge of development of a video streaming widget
to imbed with in a QT graphical user interface. The requirement of the widget was to
support multiple input streams linked to various output displays, while maintaining
a low CPU load. Although SDL was considered, it did not meet the required specifications,
and so a DirectX solution was implemented.
2006 – 2006; Image Processing Software Engineer,
Endoxon AG (www.endoxon.com)
- Primary responsibility was for the streamlining
of job submissions to a Linux cluster. After defining the specifications and
assessing solutions, the “Torque” cluster management system was selected for
its compatibility with the native Linux kernel. Responsible for the
implementation and testing of the above software. With 63 Linux boxes this
resulted in saving time and financial expense to the firm.
- Other responsibilities included creating Perl
scripts for the merging of labels and mapping information to produce maps for
hardcopy use. Extended the capabilities of old C++ code to accurately import
png (image) files.
- Streamlining Endoxon’s proprietary mapping
system, as it was currently inefficient and cumbersome. Undertook
investigations into optimizing image processing code and analysing new image
libraries. Converted Perl scripts (interfaced to ImageMagick) into (~2500
lines) C++ code linked to VXL, to make the scripts run faster and increase the
quality of the imaged Maps.
2002 – 2005; Computer Vision Software Engineer and
Researcher, ETH Zürich (www.vision.ee.ethz.ch)
- Team Leader for the “realistic texturing”
project. Managed five students in the development of the “point and click”
computer graphics software package for pasting texture onto arbitrary 3D
surfaces (~40000 lines of C++ code), which included the development of an
automatic graphical mesh parameterisation method. Responsible for the design
and implementation of a texture database, for feeding data back into the main
application. This was a world first technique in surgical simulation for
- Team member of the “virtual-reality surgical
simulator” project. Responsible for the development of the Graphical fluid
model for the simulation of real-time interactive bleeding, including defining
design criteria and research into algorithmic models.
- Mentored students and supported their (PhD)
research degrees by validating research methods and techniques and supplying
solutions and ideas and keeping them focused.
1996 – 2002; Computer Vision Software Engineer and
Researcher, University of Queensland, (www.itee.uq.edu.au)
- Recipient of a ”Large Australian Research
Council” grant to identify different terrain types from synthetic aperture
radar images using texture recognition. Developed software (~30000 lines of C++
code) that led to the conception of an application for finding and classifying
unique areas from a ground view radar images suitable for mapping. The method
was different from other methods, as it did not require all possible terrain
types to be pre-modelled before classification.
- Awarded a “New Staff Grant”, for the software
development of a target recognition system for synthetic aperture radar images
(~20000 lines of C++ code). This was a DSTO (Defence
Science and Technology Organisation) military project, for which I
improved their target recognition system by using texture analysis to find
anomalies in the background terrain texture from the synthetic aperture images.
Software Engineer, The Julius Kruttschnitt Mineral
Research Centre (www.jkmrc.com)
- Head software engineer for the following
projects: Texture analysis of mineral core samples; Rock joint modelling for a
caving study; Deglommerisation and mineral segmentation for the Mineral
- Texture analysis of mineral core samples.
Modelled the visual characteristics of the various mineral layers
taken from ore samples and viewed under an electron microscope (~20000 lines of
C and Fortran90 code). The visual characteristics determined the mining
potential of the ore, for which we were able to supply quantitative analysis
that transcended the objective analysis previously given by the mineral
- Rock joint modelling for a caving study.
Modelled the three dimensional properties of joints (cracks) in the
rock faces of a caving wall (~15000 lines of Fortran90 code). In particular we
were able to supply error analysis with these models and display a 3D graphical
view of the joints. The analysis gave an indication to the cave-in probability
of the cave and also provided an insight into the amount of explosives required
to extend the cave.
- Deglommerisation and mineral segmentation for
the Mineral Liberation Analyser. Developed an
automatic mineral segmentation algorithm (~40000 lines of VC++ code). Using
this software, images taken from an electron microscope of various ore
compositions could be automatically segmented into their mineral components.
1990 – 1991; Development Engineer, Telstra Australia, (www.telstra.com.au)
- Developed the graphical user interface for
Telstra's nationwide alarm system. Utilising Telstra proprietary graphical
tools, this interface was developed to monitor errors within Telstra’s
1989 – 1990; Assistant Electrical Engineer, Pasminco Ltd.
- Responsible for the preparation of estimates for
the installation of heating equipment.
- Audited valve equipment for the purpose of
equipment support and maintenance.
- 1999, Doctorate (Ph.D), University of
Queensland, Thesis: Nonparametric Markov random field models for natural
- 1991, Bachelor of Engineering with 1st class
honours, Majoring: Electronics and Communications, Honours Thesis: Computer
recognition of handwritten postcodes.