<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Resume - Timothy J Stebbing</title>
<style>
div, body, h1, h2, h3, td {
font-family: sans-serif;
}
body {
font-size: 10pt;
}
h1 {
font-size: 16pt;
}
hr {
margin-top: 1em;
margin-bottom: 1em;
}
p {
margin-left: 2em;
margin-right: 2em;
}
</style>
</head>
<body>
<h1>Resume - Timothy J Stebbing</h1>
<h2>Programmer</h2>
<b>1/13 Windsor Street<br/>Kingston Beach, TAS 7050<br/>
tjstebbing at gmail dot com - +61 3 6229 7969</b>
<hr/>
<h2>About</h2><p>Hi, I am a programmer with a primary focus on all things Python
and a specific taste for the Twisted Networking Framework for development of
Servers, GUIs and Web UIs. I am a decent Linux/Unix system administrator
when the need arises and have a particular affection for Ubuntu Linux. I
develop open source software in my free time, I have a wife and 2 girls and
am currently living in Hobart, although we're interested in moving back to
Victoria at some point. I have been employed as a software developer by
various companies in Australia and the US since 2000.</p>
<h2>Commercial Experience</h2>
<a href="http://revver.com">Revver Inc.</a> <i>January 2006 - May 2006</i>
<p>I worked for 5 months as a contractor on revver.com for LA based company
Revver Inc. as part of a distributed Twisted Python development team located
around the world.</p>
<p>Technologies involved include Python, Twisted Python, PostgreSQL,
SQLAlchemy, Nevow web framework, MochiKit and Javascript. These where used in
building distributed processing software using twisted's Perspective Broker
in the backend and JSON/JSONP with MochiKit Javascript to build dynamic
'web2.0' UIs.</p>
<p>I contributed to the development and maintenance of the revver.com viral
video website by bug fixing, test writing and feature development. I also
performed minor system administration tasks such as software deployment,
managing Trac, packaging software as .debs etc. I was involved in
implementing the syndication features of the application, namely RSS and
JSON feeds for the site content in various formats for consumers such as
AOL, Yahoo etc. I also developed the use of JSONP to deliver revver
syndication UIs as dynamic HTML widgets embeddable in foreign websites without
the traditional security limitations of AJAX.</p>
<p>I assisted in the running and mantainence of the
<a href='http://firefoxflicks.com'>FirefoxFlicks</a> competition
which was hosted by revver.</p>
<p>While at revver I developed a pure Javascript templating mechanism which allows
static XML templates to be loaded into the browser using XmlHTTPRequest. The
templates define 'macros' with slots which are populated from JSON or AJAX
requests, which are then displayed in the UI, effectivly moving the processing
load of content rendering from the server to the client.</p>
<a href="http://nunatak.com.au">Nunatak Systems Pty Ltd</a> <i>December 2002 - January 2006</i>
<p>I worked at Nunatak Systems for 3 years developing their mainline
document management system, customisations of the product for industry
verticals, and also escrow development for various customers. My tasks at
Nunatak were many and varied, when I arrived in 2002 the product was a PHP
/ MySQL based web application running on Linux and custom built embedded
devices. Over the years we ported the logic componants to be a Twisted
Python service communicating with a PHP front-end. Various other UIs were
built and systems integrated, Win32 GUI, Zope/Plone integration, ldap, SMS,
WAP, WEBDAV etc. all built using Python and Twisted.</p>
<p>While at Nunatak I was part of the small (2.5) man team which designed and
developed <a href='http://conveyit.com.au'>ConveyIT</a>, the system used
by most legal agencies in Tasmania to perform conveyancing. Integrating half
a dozen government services using a variety of protocols the system cut the time
to perform a conveyance from 21 days to around 24 hours. The entire project
was completed using Python and Twisted, and utilises an advanced OODB, SMTP,
XML-RPC, Perspective Broker, FAX and SMS, Payment systems, even
implementing its own workflow engine etc. The project used the Nevow web
framework to provide the user interface.</p>
<p>I developed many Zope and Plone products for various customers, most
notably a system for <a href='http://comnap.aq'>COMNAP</a> used to manage
shipping and air traffic matters in Antarctica. This project involved some
fairly heavy customisation to how Plone works in general including
implementing a customised workgroups system which acted as user sources
managable within each workgroup (used to represent countries with interests
in Antarctica). Before I left Nunatak I was developing a Plone frontend to
the core twisted python document management service which would form the
basis of a new system for managing aged care facilities in Australia. This
UI made heavy use of AJAX to communicate directly with the Twisted process.</p>
<p>Some of the general tasks I was required to perform: Software developer
(LAMP toolchain), Software developer (Python/Twisted/Nevow toolchain),
System Administrator for critical services (we hosted our own products),
Debian Packager, System Admin for general machines (RH, Debian, Ubuntu),
Liasing with customers re specifications, Initial meetings with customers,
Customer support, Managed RCS (CVS and later SVN), Managed internal systems
like Trackers, Mail servers, routing etc. Hardware diagnostics for custom
built embedded Linux machines, Documentation Writing, Project Specifications
and various other things.</p>
Oceana Blue <i>Mid 2002 - December 2002</i>
<p>For about five months I ran a home business providing contracting
services to the Emergency Services Training Initiative department of
<a href="http://swin.edu.au">Swinburne University</a> where I developed a
prototype online learning system for building courses based on managed
learning objects. The system was LAMP based and developed in conjunction
with a swinbourne developer.</p>
<a href="http://cyber.com.au">Cybersource Pty Ltd</a> <i>2000 - 2002</i>
<p>I worked for cybersource for a couple of years where I cut my teeth as
a web developer with PHP, ASP, and some Zope. I also
contracted out doing basic Linux systems administration, was responsible
for 1st level customer support (the phone guy) and helping out other
contractors with odds and ends development. I credit cybersource and
especially ConZ for my opensource ethos and getting me started as an
opensource hacker.</p>
<h2>Opensource Experience</h2>
<a href="http://nufox.berlios.de">Nufox XUL Toolkit</a>
<p>I am the creator of the Nufox XUL toolkit, built on top of the
Python / Twisted / Nevow stack it provides 'desktop like UIs through the web'
by coupling a bi-directional AJAX based RPC protocol with XUL and a PyGTK-like
API for developing applications server-side without the need to write XML.</p>
<a href="htp://twistedmatrix.com">Twisted Python</a>
<p>I am a member of the Twisted Python community, having contributed to
several Twisted sprints in Australia, and am a regular on #twisted.</p>
<h2>Papers</h2>
<a href="http://osdc2005.cgpublisher.com/proposals/15/index_html">Nufox at OSDC 2005</a>
<p>I presented a paper on the Nufox toolkit at the Opensource Developer Con
in December of 2005.</p>
<h2>Primary Skills</h2>
<table>
<tr>
<td>
<ul>
<li>Python</li>
<li>PHP</li>
<li>SQL</li>
<li>HTML/XUL/AJAX/JS</li>
</ul>
</td>
<td>
<ul>
<li>Twisted</li>
<li>Zope/Plone</li>
<li>Documentation and Specification writing</li>
<li>Unit Testing</li>
</ul>
</td>
<td>
<ul>
<li>Ubuntu Linux</li>
<li>Debian GNU/Linux</li>
<li>RH Fedora Linux</li>
<li>OSX</li>
<li>Windows NT, 2k, XP</li>
</ul>
</td>
</tr>
</table>
</body>
</html>