Resume

Education
University of the Western Cape
Cape Town, South Africa
Masters of Science in Bioinformatics

 

Achievements:

  • Completed my Masters degree research project in just over 6 months instead of the usual 2 years whilst attaining a Cum Laude grade. I was given a 95% mark by the external examiners based in Singapore.
  • Successfully leveraged my engineering experience to rapidly gain traction in an entirely new field gaining experience in gene expression and gene regulation.
  • Successfully developed a novel high throughput machine learning technique to identify miRNA (gene expression regulators) capable of scanning full genomes across multiple species. I drew on my extensive experience in artificial intelligence using genetic algorithms to build a textual scanner based on regular expressions.
  • Achieved significant execution time reductions with parallel programming techniques, reducing 25 days execution time to 74 hours on a computing cluster.
  • Substantially expanded my knowledge of cross platform software development due to the dominant UNIX software systems prevalent in Bioinformatics.
  • Extended my database knowledge in terms of very large database storage due to the need of storing and sorting terabyte databases of gene sequences, in particular the use of the PostgreSQL database utilising complex database algorithms such as nested sets.
  • Contributed to the institutes IT systems by creating a central on-site database of commonly used gene sequences from the ENSEMBL gene database.

 

Technologies:

  • C# on Mono runtime (Linux and Windows).
  • C# on Mono on non x86 multi-processor clustered high-performance computing system.
  • NHibernate / Fluent NHibernate database access.
  • Domain Driven Design patterns.
  • PostgreSQL.

 

Company:
SANBI is an internationally recognised Bioinformatics institute with ties to Stanford in the USA. SANBI specialises in the application of computer science and information technology to the field of biology and medicine.

University of Natal
Durban, South Africa
Bachelor of Science in Electronic Engineering

 

Achievements:

  • Successfully completed thesis on multi-threaded Neural Network Training system which gained me employment at Skye Advanced Technologies during my final year of studies.
  • Gained several certificates of merit in final years subjects.

 

Technologies:

  • C
  • C++
  • HTML
  • WIN32
  • GDI
Experience
SA Home Loans
Durban, South Africa
Lead IT Architect
Independent Software Consultant
Cape Town, South Africa
Independent Software Consultant

 

I work as an independent software consultant specialising in software architecture and the improvement of developer processes in Cape Town South Africa.

Current Clients include South African Homeloans.

Setta Furniture
Cape Town, South Africa
Co-founder, Technology & Operations Officer

 

Achievements:

  • Rolled out a completely open source IT infrastructure.
  • Successfully managed the design, parts sourcing and construction of large format CNC routers including the use and customisation of open source CNC controller software.
  • Drastically reduced furniture prototyping times by creating software that used configurable conventions to bypass the lengthy manual CAD to CAM conversion process cutting times from an hour or two to tens of seconds.

 

Technologies:

  • C# using Mono runtime on Linux.
  • C++ on Linux with QT and GTK# UI frameworks on Linux.
  • Python 2.7 and 3.0 on Linux.
  • Ruby on Linux and Windows.
  • OpenERP for manufacturing resource planning on Apache web server.

 

Responsibilities:

  • Manage and maintain all IT systems and CNC machine hardware.
  • Manage day to day operations such as raw materials stock levels and product distribution.
  • Create software to provide the business with a technological advantage over competitors.
  • Create Business plan and financial documentation that was well received by the investment community.

 

Company:

Setta Furniture is a start-up flat-pack furniture manufacturer employing technology in all aspects of its business operations. Setta uses large format CNC routers, built in-house, linked to a central manufacturing resource planner providing both public and internal stock visibility. Setta employs open source software throughout the business in order to minimise operational costs. Setta has been unable to raise significant funding, in part due to the current poor economic climate and due to the lack of a BEE (Black Economic Empowerment) partner that most investment institutions require in South Africa. With no significant near term growth prospects I decided to pursue other ventures.

Independent Software Consultant
Cape Town, South Africa
Independent Software Consultant and Stock Trader

 

Roles:

  • Freelance consultant on small projects.
  • Active “Day Trader” on London stock exchange trading derivative products.

 

Achievements:

  • Completed a month long course on derivative product trading.
  • Built a WPF based application for real-time stock market trading based on the “Point & Figure” charting methodology. The application provided comprehensive pattern recognition techniques for common trading signals.
  • Integrated real-time trading data from the e-Signal data platform into the WPF application.
  • Integrated Google data and calendar web services into the trading application via the Google API framework.

 

Technologies:

  • WPF using Caliburn framework.
  • Silverlight using Caliburn framework.
  • NHibernate / Fluent NHibernate database access.
  • Domain Driven Design patterns.
  • WCF.

 

Company:
I took a sabbatical during this period which I could financially afford due to the profitability of my previous consulting business. I got married and spent time with my newborn son, working predominantly on my “day trading” and small short term projects.

Elzaris Technologies
Durban, South Africa
Co-founder, Software Architect

 

Achievements:

  • Successfully co-architected the complete re-design of all “line of business” applications for consulting client South African Home Loans using an MVC based ASP.NET front-end and MSSQL 2005 backend accessed via an ORM.
  • Successfully replaced consulting client South African Home Loans legacy company wide workflow system (e-Work by Metastorm) with a system I personally designed and implemented. The legacy system was unable to cope with the volumes of non-human based workflow being generated. The new system is a scalable multi threaded service capable of handling tens of thousands of workflow transactions an hour and revolutionised the way the company was able to build its “line of business” applications.
  • Successfully championed the change to a DDD development strategy for consulting client South African Home Loans. This included training of business analysts resulting in software that better reflected the business operations, that could be better tested and provided a common language between business and IT resources.
  • Implemented a continuous integration development system for consulting client South African Home Loans. Subversion, Cruise Control.NET, NUnit, FxCOP and MSBuild based. This included training on TDD and mocking for the clients development staff to facilitate the TDD requirement of the CI environment as well as integration into the TRAC issue tracking system that I introduced to the client.
  • Successfully architected a retail software package “DB Manuscript” that generates MSDN style documentation for a database, while initially focused on MSSQL the architecture made provision for other database platforms in the future. This product received excellent international reviews and was sold via the Elzaris website.
  • Co-authored a business plan for Elzaris Technologies that won the Enablis / Business Report business plan competition in 2005.

 

Technologies:

  • ASP.NET (MVC Based, pre ASP.NET MVC framework).
  • C# (reflection, multi-threading, WinForms, .NET Remoting).
  • ORM – Castle Active Record / NHibernate.
  • MSSQL 2005.
  • Javascript, HTML, CSS.

 

Responsibilities:

  • Day to day management of staff and recruiting.
  • Client technical liaison and client staff training / recruiting.
  • Software / System Architecture.
  • Business management and development.

 

Company:
Elzaris Technologies is a software engineering and consulting firm based in Durban, South Africa. They specialise in sophisticated enterprise-wide, mission-critical software solutions across a wide range of industries with a strong focus on the Financial Services sector.
I decided a move to Cape Town to study a Masters in Bioinformatics which has been a long term personal goal.

Skye Advanced Technologies Pty (Ltd)
Durban, South Africa
Chief Engineering Manager


Achievements:

  • Successfully designed and lead a team to develop the Skye T-Base telecommunications software system.
    • The system facilitated broadband radio-frequency spectrum license bid applications. The software produced technical radio frequency simulations using high resolution digital terrain data and combined this with data from a geographic information sub-system.
    • The system produced business decision making reports based on information such as the types and amount of businesses/households covered by a particular radio-frequency network.
    • This software was used exclusively by a large American network operator to successfully bid on spectrum in more than 10 European countries, many of which I was physically present at during the application process.
    • The software produced the “Google Earth” type fly through’s of a city that are taken for granted today at a time when such technology was absolutely bleeding edge.
  • Successfully led consulting teams in several European countries interacting with clients at both a technical and executive level.

 

Technologies

  • Borland Delphi and C++ Builder.
  • C++, COM, ATL COM and Microsoft MFC.
  • C# 1.0 and 2.0, ASP.NET and web services.
  • JavaScript, HTML, CSS, XML.
  • Oracle 8i, 9i including spatial extensions.
  • MapInfo GIS System.
  • Direct X, WIN32, GDI / GDI+

 

Responsibilities:

  • To work closely with the company CEO on company direction and the creation of software systems that would most create the most business benefit.
  • To spend significant business time with clients both locally and internationally, often spending several weeks at a time abroad implementing systems or helping with consulting projects.
  • To lead a team of developers and lead the non-technical staff when consulting abroad and locally.

 

Company:
Skye Advanced Technologies was a technology consulting company operating in two sectors:

  • Telecommunications Sector:
    • Technical, modelling, deployment and decision-support services for broadband wireless in several European countries.
    • Business development and technical design of the first 3G network in Africa for national network operator Sentech.
  • Artificial Intelligence Systems Sector:
    • Advanced petrochemical process control, telecoms and electricity management using AI.
    • Technical analysis of financial indicators using AI techniques.
Engineer

 

Achievements:

  • Successfully designed and implemented an electricity demand predictor for a major local oil producer saving them very significant amounts of money once deployed. The system was based on the NeuralWare toolkit and was implemented in Borland C++ Builder.
  • Successfully created a prototype user-interface for the COGSYS expert system to allow visual designing of expert systems natively on windows rather than requiring UNIX.
  • Successfully created software to facilitate tracing of contour maps of South Africa to produce high resolution digital terrain models for use in the ATDI Radio Frequency Planning software system.

 

Technologies:

  • Borland Delphi and C++ Builder.
  • C++, COM, ATL COM and Microsoft MFC.
  • Javascript, HTML, CSS, XML.
  • Oracle 8i, 9i including spatial extensions.
  • MapInfo GIS System.
  • Direct X, WIN32, GDI / GDI+

 

Responsibilities:

  • Responsible for the support of the COGSYS expert system.
  • Responsible for artificial intelligence consulting projects.
  • Responsible for conducting training on radio-frequency planning software.

 

Company:
Skye Advanced Technologies was a technology consulting company operating in two sectors:

  • Telecommunications:
    • Technical, modelling, deployment and decision-support services for broadband wireless in several European countries.
    • Business development and technical design of the first 3G network in Africa for national network operator Sentech.
  • Artificial Intelligence Systems:
    • Advanced petrochemical process control, telecommunications and electricity management using Artificial Intelligence techniques.
    • Technical analysis of financial indicators using AI techniques.
Profile

I am a technical specialist working as a software architect, developer educator, agile methodologies champion and advisor to business in the Microsoft .NET space. I have over 14 years of successful experience and expertise in enterprise level IT system and software design with proven problem solving abilities both locally and internationally. I hold a B.Sc. in Electronic Engineering and an M.Sc. in Bioinformatics.

I am strongly business-value focused and highly pragmatic. I pursue business IT goals with stringent engineering practices to reliably deliver on business requirements with solutions that are both maintainable and extensible.

I have a good understanding of the softer issues when building IT solutions, such as managing change and including stake holders early to foster ownership and inject excitement for new projects. I am comfortable interacting with business stake holders from advising executive management to engaging with end-users.

I have a passion for creating business process management systems resulting in solutions that have created measurable business benefits such as optimising the flow of business information, ensuring adherence to key business strategies and un-paralleled insight into business operations.

Table of Contents
Technical Skills
Languages
Skill Level Years Experience Last Used
C# 5 7 Current
C++ (including STL, MFC, OWL) 4 10 2004 & six months in 2011
C 3 5 1998
SQL 4 13 Current
JavaScript 4 10 2009
HTML 4 10 2009
CSS 3 10 2009
Python / Ruby 1 0.5 2011
XML 4 10 Current
Databases, Platforms & Development Techniques
Skill Level Years Experience Last Used
Microsoft SQL 2000, 2005, 2008 4 7 Current
PostgreSQL 3 4 2011
Oracle 8i, 9i 3 5 2001
SQLite 3 5 Current
Windows Operating System (Dos, Windows 3.0 – 7) 4 22 Current
Linux Operating System (Ubuntu) 3 4 Current
Microsoft Visual Studio 2005 – 2010 4 11 Current
Mono Develop 4 3 Current
QT Creator 1 0.5 Current
Technologies
Skill Level Years Experience Last Used
ASP.NET / ASP.MVC 4 10 2009
Dependency Injection 4 5 Current
LINQ 3 5 Current
MEF 2 0.5 2009
ORM (object relational mappers) 4 5 Current
Silverlight / WPF (with Caliburn framework) using MVVM 3 2 2009
WCF 3 2 2009
QT UI 1 0.5 2011
GTK# UI 1 0.5 2011
Techniques & Practices
Skill Level Years Experience Last Used
Object Oriented Design (S.O.L.I.D. Principles) 4 7 Current
Continuous Integration (Cruise Control.NET) 3 7 Current
BDD (MSpec & xUnit BDD) 3 5 Current
DDD 3 5 Current
TDD (xUnit, NUnit) 3 5 Current
SCRUM 2 1 2009
Mocking 3 5 Current
Tools
Skill Level Years Experience Last Used
Dependency Injection Containers (AutoFac, StructureMap, Ninject) 4 5 Current
NHibernate / Fluent NHibernate / NHibernate Search / Fluent Validation 4 5 Current
DVCS (GIT, Mecurial, Bazaar) 3 3 Current
Subversion 4 6 Current
MSBuild 3 5 Current
Rhino Mocks/ Machine.Fakes
3 3 Current
XUnit / MSpec 4 5 Current
Cruise Control.NET / FxCOP / StyleCop / Gallio 3 5 Current
Powershell 1 1 2009
Lucene.NET 1 1 2009
Skip to toolbar