Mobile: +61 422 395 599
Email: zik@zikzak.net
Zik Saleeba enjoys involvement with advanced technology and designing solutions to difficult problems. He has fifteen years of commercial experience in senior roles in addition to his doctoral qualifications. He is quick to adapt his skills to new areas, is innovative in his thinking and has a great breadth of experience across the entire spectrum of computing applications.
Technical architect, Team leader, Consultant, Analyst/Programmer
C/C++, Java, python, perl, JavaScript, SQL
Linux, Windows
Embedded computing, IP networking, electronic design, compiler design, robotics, UNIX system administration
This was a 100% research thesis with the topic "A Self-Reconfiguring Computer System".
Minor thesis topic "Structural Video Compression".
Started the "Robotics and Embedded Control" department of a new aerospace company in Switzerland. Over a year and a half I expanded the department to five people. Duties were very broad and included managing the department, recruitment, system design and architecture, hardware development and software development.
The department's purpose was to provide control systems to the company for their line of UAVs and blimps, including all facets - hardware, embedded software and desktop software components. I dealt directly with the CEO in gathering requirements and liased closely with other department heads to create tightly integrated systems. We successfuly shipped sophisticated in-house developed blimp control systems and the UAV control system was progressing well when I returned to Australia.
RAPID project: Software architect and lead developer of a Linux-based operating system, drivers, support libraries and tools for an embedded computer for the "SmartBus" system. Included Linux kernel and driver development as well as application development plus PIC microcontroller development.
VAN project: Part of a team developing an embedded system to control a set of in-vehicle radios. Development was in a C-like language specialised for the Rabbit embedded platform. One of my tasks was to port a TCP/IP stack to the platform and develop all the associated drivers.
Started as a developer with Avanteos - a superannuation provider. Over time progressively more senior work was performed until the position of Technical Architect was attained. Later team leadership was added to the responsibilities. The team grew to a size of 17 people.
The greatest achievement in this role was designing a unifying reporting system to replace three old reporting systems. This new system improved maintainability and functionality of the reports significantly. Both development and design roles were involved. This system is core to Avanteos' business.
The position of Technical Architect involved a great deal of mentoring and problem solving as well as design tasks. Presentations on the system and staff training courses were also prepared. Consultation to the business was also frequently provided. Reported directly to the CTO and worked with him on estimates, high-level architectural decisions and many other challenges.
Joined NEC Research Australia on a project to develop a satellite-based TV and internet system for use in remote locations in China. Development was outsourced to India so our role was to provide detailed designs for outsourcing.
This role changed to a development role when a working prototype was needed quickly. This one-man project produced a working satellite TV system based partly on modified open source software (xine).
Founded "Zikzak Technologies" in 2000. Initially this was a vehicle for personal consulting activities but the company grew to three people. Business was brisk during the dotcom era but fell off after the crash.
As well as attracting a number of established clients the company provided a vehicle for some serious research. A cross-compilation system designed to convert software from one operating system to another was one such project. Some progress was made in this ambitious goal but the project was not completed. One component of this system - an x86 decompiler - is amongst the best decompilers in the world today.
A security system written in UNIX/C++/Qt required some custom user interface widgets. Several new widgets were developed for the remote security application. A new Perl-based scripting language was also added to the system.
Interval Research Corporation was a company founded by Microsoft founder Paul Allen to create avenues for new products through basic research. Zikzak's involvement was in designing and developing a cross-platform streaming video system using Interval's proprietary video codec. The target was an embedded Linux-based set top box.
Most of the development was done from our office in Melbourne with occasional visits to Interval in Silicon Valley.
Traffion had recognised a failing in existing ad-revenue tracking systems - the lack of an ability to relate ad clicks to actual sales. Their system used cookies and redirects to track a user's activities through a web site to determine the effectiveness of advertising. Zikzak was called in when their existing system was unable to deal with the large volume of page requests. A totally new architecture boosted their performance by an order of magnitude and gave them additional options for scalability.
After Zikzak's design and prototyping the system was developed in co-operation with Traffion's internal team.
A car parking web site using online mapping was developed in co-operation with graphic design studio Deadfish Design. Development was in Perl and MySQL with some sophisticated algorithms being developed for fast geographical search.
A later enhancement added a radio receiver which was able to interpret the protocol used by Melbourne's city parking signs. This permitted realtime parking availability to be displayed on the web site.
A number of small web site related jobs were performed in collaboration with graphic design studio Deadfish Design.
Several web site development projects were done in a variety of systems including Java, JavaScript, Flash, Cold Fusion and Perl. Technical consulting for tender applications was also provided.
One example: Zikzak aided in the development of the Compaq superannuation web site. Development was in Java and ASP, concentrating on interoperability issues and ASP conversion.
Another example: The Crown Casino web site needed JavaScript communications between frames running Macromedia flash. Zikzak provided the JavaScript expertise.
Developed an online e-commerce system for the ISP Netspace Online Systems to operate with the CBA credit verification system. This credit server was designed for high reliability and throughput by emulating multiple virtual terminals operating simultaneously. Concurrent operation of batched and interactive transactions were supported without performance degradation for interactive users. All development was in C++ and Solaris x86 UNIX.
A second contract from Netspace involved updating their billing system to handle new tax requirements (GST). They had chosen to replace their system entirely and were aided by Zikzak in developing part of this system in Perl, C, UNIX and Oracle.
Designed and implemented in Java a central host database system to control a wide area network of vending machines. Challenges included electronic commerce (credit card verification) and strong encryption.
Designed and implemented from scratch most of the LookSmart search engine and maintained it through many revisions and enhancements. The code serves several million web pages per day from a single Sun server. This performance was achieved using a custom database based on memory mapped files with high locality of data. The technology developed for this system won the 1999 Australian Technology Award
Wrote a script language and hardware interfacing for a PC-based circuit board test rig. C++.
UNIX system installation and administration of DEC Alpha machines for the Monash University Department of Earth Science.
Duties included writing drivers for a video capture card, image processing, postscript programming, UNIX system setup, Btrieve database application programming and plastic card printer programming.
Tutoring and practical courses for the Monash University Computer Science Department. Tutorials, discussion groups and creation of practical courses in subjects including computer architecture, systems analysis and design, digital electronics, foundations of computing, operating system design, digital communications and assembly language programming.
Creation of an assembler/simulator for teaching purposes, written in C to run in a Macintosh environment. February 1992.
Developed a control program and user interface for a PC fax peripheral also being developed by AES.
Wrote a commercial-quality video library management system.
| Skill | Years used | Last used |
|---|---|---|
| Languages | ||
| C / C++ (g++, Visual C, Visual Studio .net, STL, boost, design patterns) | 23 | Current |
| Java | 4 | 2005 |
| SQL | 5 | 2009 |
| python | 1 | 2008 |
| perl | 1 | 2009 |
| JavaScript | 1 | 2008 |
| Others - shell, Verilog, Ruby, Haskell, assembly (PIC, x86, 68k, MIPS, 6502, Z80) | Various | Various |
| Web programming | ||
| HTML / DHTML / AJAX / SOAP / XML / CSS | 9 | Current |
| django | <1 | Current |
| Operating systems | ||
| Linux / UNIX | 20 | Current |
| Windows (windows 3.1 though windows 7) | 18 | Current |
| Other technologies | ||
| Database - MS SQL Server, Oracle, MySQL, PostgreSQL | 5 | 2009 |
| IP networks - TCP/IP, HTTP, PPP, SMTP, NNTP, FTP, SNMP, DNS, DHCP, POP, Samba, IMAP, MIME, socket programming | 3 | 2010 |
| Revision control - Subversion, git, CVS, RCS, PVCS, Visual SourceSafe | 15 | Current |
| Embedded processors - PIC, ARM, STM32, AT91, rabbit | 4 | Current |
| Embedded dev systems - Keil, Crossworks | 2 | Current |
| User interface toolkits - qt, gtk+, MFC | 2 | 2010 |
| 3d graphics - OpenGL | 1 | 2010 |
| Compiler tools - lex, yacc, bison, llvm | 3 | Current |
| Cryptography - RSA, DES, IDEA, MD5, AES, Blowfish | 1 | 2010 |
| Software modelling - UML, Rational Rose, Rational Suite | 3 | Current |
| Electronic design - Eagle PCB CAD | 3 | Current |
| Microsoft office - Word, Excel, PowerPoint, Visio, Project | 4 | Current |
"A Self-Reconfiguring Computer System"
by Zik M. G. Saleeba
PhD thesis, 1998,
Monash University Computer Science
"Public Access Sites in Australia"
by Zik Saleeba
Chapter in "OzInternet" edited by Berny Goodheart and Frank Crawford
Prentice Hall, 1995
ISBN 0 7248 0905 8
"DRAMA: Dynamically reconfigurable abstract machine architecture"
by Michael Saleeba
Technical report 95/238, 1995,
Monash University Computer Science
"Fast prime number generation with reconfigurable logic"
by Michael Saleeba
Technical report 95/239, 1995,
Monash University Computer Science
"A Dynamically Reconfigurable Computer Architecture"
by Michael Saleeba
Published in the Proceedings of ACSC-16, 1993.
Presented at ACSC 16,
The Australasian Computer Science Conference,
Brisbane, Australia, 1993
"A Reconfigurable Logic Array Processor"
by Michael Saleeba
Poster presentation, ISCA 92,
The International Symposium on Computer Architecture
Surfers Paradise, Qld, Australia
"Structural Video Compression"
by Michael Saleeba
Presented at DICTA 91,
Melbourne, Australia, 1991.
Proceedings of DICTA 91
In 1991 founded and acted as leader of the Monash University General Access UNIX Group, a group of students interested in setting up a computer for general student use, to be run by students. We acquired a machine for student use which was named yoyo.cc.monash.edu.au. Acted as co-system administrator for a year, and did much work on making the system available to everyone at Monash University, and on improving the system software. Yoyo was a great success, and continues to the present day.
Started operating a mini-ISP from home as a hobby in 1992. This system "zikzak.net" was among the first public internet providers in Australia. It's gone through many incarnations over the years but is now operated only for a small group of friends.
The "Networking in Australia FAQ" was a list of Frequently Asked Questions on becoming connected to Australian networks which I maintained during the early days of the Australian internet. The FAQ was republished in a number of places including magazines and books and at once stage was distributed with Apple's internet connectivity software.