PyCon AU
As the 6th director of PyCon AU, I lead a team of volunteers spread across four cities to deliver a large scale event while upholding its reputation for quality and inclusivity.
I am a developer with a deep appreciation of the technical, and focus on its intersection with the social. Software is made for people, by people, and I try to code with that in mind.
I'm experienced in designing creative solutions to problems and using software to bring them to fruition, and I'm interested in adding mentorship to that skillset.
I'm enthusiastic about developer tooling, API design, developer experience, and technical communication (including documentation, technical writing, and public speaking), as well as user experience and UI design.
My background is in front- and back-end web development in Python, Django, React, TypeScript, JavaScript, React Native, CSS, and others, and I enjoy learning new tools and fields.
As the 6th director of PyCon AU, I lead a team of volunteers spread across four cities to deliver a large scale event while upholding its reputation for quality and inclusivity.
I am responsible for bringing products from the design phase through to production, in a team of three serving a company of 1,300+ staff.
I build web and Android frontends with React, React Native, TypeScript, CSS and GraphQL, and backends in Python and Django.
I also advocate for improvements to processes and tooling, such as peer review, style guides, static analysis tools, and configuration tools.
I helped provide Python and Django expertise for a ground-up rewrite of a legacy ColdFusion SaaS product.
I worked in a team of two developers designing and building software and websites with Python, Django, Django CMS, JavaScript, React and React Native.
I worked on projects from requirements analysis to delivery, and worked with IT Support to understand and fix pain points.
I also advocated for and worked to implement automated unit testing, property-based testing and continuous integration.
I explore how command-line tools are user interfaces just like their graphical counterparts, and how a CLI tool designed with care can be easier for developers to learn, use, and spend their time on the task they're trying to achieve.
I compare the experience of building a website in the three most popular Django content management systems at the time, and how data models inform the conceptual structure of an application and affect developer and user experience.
Bridgekeeper is an alternative approach to access control with Django, with permissions specified using an expressive in-code DSL. Permissions can filter database queries as well as test individual objects, making it unique amongst Django authorisation libraries.
I aim to make Bridgekeeper's API terse and convenient while being understandable and accessible, and to design and document it to be accessible without understanding the set theory concepts behind its design.
Lorikeet occupies a space I wish more libraries did: it provides everything up to, but not including, the UI layer, instead exposing hooks on which developers can build an interface that suits their users' needs and their brand.
In designing the server-side API, I took inspiration from design patterns in the Wagtail API to build a system that made simple things simple and complex things possible, without constraining usefulness or exposing unnecessary complexity.
I studied for most of my degree at Flinders in the BSc(Hons) High Achievers Program, which allowed me to work with research projects including the Serval disaster-resilient telecommunications project and the Computer Archaeology Laboratory.
I entered industry prior to completion, and so chose to leave the High Achievers Program to graduate without completing an additional Honours year.