| Full Name
|| Nicholas Paul Jenkins
| Postal Address
|| P.O. Box 397, Summer Hill, NSW, 2130, Australia
| Year of Birth
|| Dual citizenship – Australia and the European Union (United Kingdom)
| Tertiary Education
|| University of New South Wales
1992 – 1995 B.Sc. in Computer Science
1996 – 1997 Computer Science Honours, Part time
Awarded First Class Honours
- June 1994 to December 1997, Part-time, Software Support Specialist, Digital Equipment Corporation
- January 1998 to May 2000, full-time, Software Support Specialist, Compaq Computer Australia
- Part of a small customer-service orientated group providing end-user, internal, second and third -level help desk over-the-phone support on a per-call or contractual basis to customers in Australia and New Zealand on a wide range of desktop, networking and development issues on the x86 and Macintosh platforms.
- June 2000 to Current, full-time, Managing Director, Calculix Pty Ltd. Overall responsibility for two web-based PHP applications for academic institutions that help solve the problems of organising and planning academic timetabling. Responsibilities included:
- Gathering and understand complex business requirements
- product scope and design
- implementation and development (using PHP front-end, Java back-end, and PERL and shell scripting for glue)
- sales and marketing
- product support, maintenance, and ongoing enhancement
- sales, invoicing, administration and general management
| Other developer work
- 2003: Wrote Diplo-matic, an automated PHP site for playing Diplomacy (the board game from Hasbro) among my friends, for increased security after several incidents of email spoofing.
- 2006-2007: Involvement in MediaWiki, the open-source PHP software behind the Wikipedia, possibly the most-visited PHP web site in existence:
- Discovered several XSS security holes in MediaWiki - CVE-2006-2611, CVE-2006-2895, CVE-2007-0177.
- Wrote an automated fuzz tester for MediaWiki.
- Reported approximately 90 bugs in MediaWiki.
- Given SVN commit access.
- Various commits to rectify bugs that I reported or that annoyed me.
- Started the commit access documentation to help new MediaWiki developers to code in the "house style".
- Wrote a syntax checker for checking the entire English Wikipedia corpus (over 1 million articles) for invalid/incorrect use of wiki text, a project was started to rectify these and within 2 weeks this project was completed because of massive community involvement.
- Produced a database schema image to explain MediaWiki's tables and the relationships between them, and group them by related functionality.
- Wrote can-we-link-it, an automated link-suggesting tool for articles in the English Wikipedia.
- Started a wiki-related blog aggregator to gather wiki-related and Wikipedia-related blog posts in one central point.
- 2007: Remote protoyping work for WikiMetro.org, a Beijing-based company creating location-specific data feeds and wiki pages for all US cities. Prototype was built upon MediaWiki, and done in PHP. Implementation was to be done in China (due to vastly lower labour costs), but determining ability was a problem so I then wrote a take-home PHP test for assessing Chinese programmers prior to employment.
- 2008-2009: Co-developed a PHP-based site for end-user currency exchange. Currently seeking partners with an Australian Financial Services License & overseas distribution network.
| Currently skilled in
- PHP - since mid 2000, 9+ years of development experience, PHP 3.0.17 through to PHP 5, throughout whole product life-cycle (design, implementation, testing, debugging, maintenance, iterative enhancement) for mission critical applications, for both corporate and open-source applications.
- MySQL - database design, SQL queries, identification and remediation of slow queries, and automated local and remote snapshot backups.
- Linux (server and desktop) - system administration for co-located servers from 2000 onwards (initially running RedHat, and then moved to Debian), using Linux as primary desktop O/S since mid-2008 (Ubuntu).
- PERL (for data import/export), Java (for back-end computation), shell/bash scripting (for automation of maintenance tasks called via cronjobs).
- Server administration: Apache web server, packet-based firewalls, qmail.
- Wikis, especially MediaWiki - core code, extensions, usage.
- HTML and web authoring
- LANs, networks, TCP/IP
- Office desktop applications: Microsoft Office 4.x, 95, 97, and 2000; OpenOffice.org 2.x and 3.x
- MS-DOS, Windows 3.1, Windows 95, Windows 98, NT 3.51, NT 4.0, Windows 2000
| Previously skilled in
- ANSI C / C++, Microsoft Visual C++ 6.0
- Visual Basic 5.0 and 6.0, Visual Basic for Applications macros and automation
- Programming the Microsoft DirectX APIs
- Macromedia Dreamweaver 3.0
| Certifications Achieved
- MCSE (Microsoft Certified Systems Engineer)
- TCP/IP for Windows NT
- Networking basics for windows 95 & NT
- Windows 3.1
- Implementing and Supporting NT workstation 3.51
- System Administration for MS SQL server 6.0
- Implementing and Supporting NT server 3.51
- MCP (Microsoft Certified Product Specialist) Certifications:
- Excel 5.0
- Word for windows 95
- Microsoft Developer Stream Certifications:
- Windows Architecture I
- Windows Architecture II
- Visual Basic 5.0
| Industry Memberships
- Sydney PHP group
- SLUG (Sydney Linux User's Group)
- Linux Australia
- Wikimedia Australia
| Published Writings
- N.JENKINS and T.GEDEON, Genetic Algorithms Applied to University Exam Scheduling, Proceedings of Australian and New Zealand Conference on Intelligent Information Systems (Dunedin, New Zealand, 24th- 28th November), pp 1034-1038, 1997
- SyncML: an introduction, its potential, its problems - published in LWN on April 8, 2009.
- Good movies (e.g. IMDB top 250)
- Games and game theory
- Contemplating the nature of the universe
- Skiing, despite the fact I'm not particularly good at it
|| Available upon request