Director2008 - PRESENTBitWorks
Technologies: REST APIs, Web Components, jQuery, Vaadin, .NET, Java, Angular, Full-stack
- Planned, architected, managed, estimated, quoted, delivered, and supported multiple software projects from $1,000 apps to $400,000 systems.
- Assembled a team, formed procedures, set up coding standards, created toolchains, deployment pipelines, and various other aspects of full-lifecycle development.
- Worked closely with clients and determined what makes a software project successful and tracking progress to meet those goals.
- Gained extensive experience estimating software projects, then managing and delivering on those estimates.
- Provided long-term support and maintenance of projects.
- Developed projects according to best practices for long term reliability, maintainability, and minimal technical debt.
- Evaluated and worked with a wide range of tools and technology to meet customer requirements with a focus on web technology stacks including Java Servlets, Apache Tapestry, ASP.NET, .NET MVC, Vaadin, jQuery, AngularJS, Angular, Ionic.
Software Engineer2015 - 2018Builders' E-Commerce
Technologies: Print, MapFish, JPA, PostGIS, PostgreSQL, Vaadin, Java
- Took over the development of a Vaadin web application after the lead developer left. Immediately made a few changes to reduce monthly hosting costs by 100x, improve the performance, fix critical bugs, and reduce deployment times from 30 minutes to 1 minute.
- Worked closely with the product manager to implement and trial new features using an Agile approach.
- Designed and created a system for scraping large GIS datasets, translating and inserting them into PostGIS databases, then matching appropriate data sets with end users and restricting their queries to localized datasets.
- Managed multiple production Linux servers hosting supporting services to the main web app: Alfresco (Document Control), Flowable (BPMN), Mapfish Print (PDF Maps).
- Managed and mentored other team members.
- Created a white-label theme engine for fast customer onboarding, to allow new businesses to quickly customize the product branding.
Software Engineer2015 - 2016Ecotech Environmental
Technologies: Microsoft SQL Server, Desktop, .NET
- Created a dust monitoring database with lab data input and integration with lab scales.
- Built a reporting add-on to auto-generate detailed monthly reports using Microsoft Excel and Word that would usually take several days to complete.
- Created a companion field logger to download data from dust monitoring equipment and sync back to the main database.
- Built a data export to transform and export data into a format required by a propriety client database.
Software Engineer2014 - 2015Aurum Catering
Technologies: SQL Server Reporting Services (SSRS), IIS, Microsoft SQL Server, Model View Controller (MVC), ASP.NET MVC, .NET
- Developed software for the full lifecycle from requirements and design to delivery and support.
- Built a touch-screen-friendly web application design for use in a mobile environment.
- Integrated an existing client infrastructure and systems.
Software Engineer2012 - 2015Stonevale Group
Technologies: JasperReports, JOOQ, H2 Database, Vaadin, Java
- Worked on the full life-cycle software development from requirements gathering and architecting, to delivery and maintenance.
- Collaborated with the client using an Agile methodology to obtain quick feedback.
- Designed and implemented a zero downtime continuous delivery pipeline.
- Managed and led a development team in a remote environment.
- Integrated the client's existing systems and conducted a staged migration across for minimal client disruption.
Software Engineer2009 - 2014Balfour Beatty | Wooly Parsons
Technologies: GIS, ActiveX, Microsoft SQL Server, Java, Windows Forms (WinForms), .NET
- Built a bore maintenance risk database as a web application using Java, Apache Tapestry, H2 database and Open Office for report generation.
- Created a water-monitoring lab system as an extension to the bore maintenance database which included lab and field data input, data import from external labs, report generation, data export to propriety client systems, a calculation engine and data validation engine.
- Developed a companion field logger system to run on ruggedized Windows XP tablets. The software ran as an embedded web app with offline functionality. It included data input with validation based off-site history, GPS and Maps for sample point location (offline), integrated data backup onto SD card, interfacing with data loggers via a COM port for results and calibration, schedules and progress tracking.
Software Engineer2012 - 2012Rio Tinto
Technologies: Microsoft Excel, Visual Basic for Applications (VBA), Microsoft Access
- Created a data-processing system to automate complex data transformations and processing that was taking significant time to complete manually.
I.T. Manager & Support2009 - 2011Foundation Christian College
Technologies: Mail Servers, Linux Servers, Windows Server
- Designed networks and troubleshot them also.
- Performed server administration.
- Provided end-user support.
- Handled system imaging and deployment.
- Monitored the performance.
Software Engineer2008 - 2011Great Living Homes
Technologies: Microsoft Access, PHP, Apache, Windows Server, Java, FileMaker
- Created some sophisticated FileMaker functions to automate a lot of business processes, and send a notification based off triggers. It was designed in a way that non-technical users could create new notifications and custom triggers and actions for those.
- Integrated Java with FileMaker to create a more advanced UI that possible in FileMaker to visual, track and update workflows.
- Created a Microsoft Access "Toolbox" application to complement the functions provided by an OTS software package that ran off an Access Database back end.
- Plumbed together several products and cloud services to create a syncing and notification mechanism to sync office files to employee iPad's with offline support and notify when updates were required to files. (This was to replace a paper system or manually email files, which was troublesome).
- Managed Windows and Linux Servers, Microsoft Active Directory and Virtual Servers, office networking, and mail servers.
Software Engineer2005 - 2008Persons Brinckerhoff
Technologies: Windows Mobile, Windows Forms (WinForms), C#, ASP.NET, Microsoft SQL Server, Microsoft Access
- Created a bore maintenance database using Microsoft Access for assessing environmental contract risk associated with bore accessibility and functionality.
- Developed detailed financial reporting for Engineering projects to help them more effectively meet budgets using Microsoft Access.
- Automated import of lab results for portable water samples to give quicker feedback and turnaround time. Using Microsoft .NET C#.
- Migrated a complex Access database to Microsoft SQL Server to give significant performance gains and stability improvements.
- Built some automatic Excel report generations tools to reduce errors and time take to do reporting for potable water samples using VBA.
- Created a type of mission-critical dust monitoring lab software to streamline the capturing of data, entering of data, and the management of collecting dust samples using C# WinForms and COM Interop.
- Developed a type of dust logger field software for Windows Mobile Ruggedised PDAs using .NET SDK for Windows Mobile; included a COM port download of data from dust extractors.
- Created and supported, as a team lead, an enterprise water monitoring data warehouse and a type of reporting software using ASP.NET; also provided production support.
- Developed a type of companion ETL software for importing, transforming, and uploading data to the water monitoring system using C# WinForms.
- Rolled-out a type of OTS software for water monitoring and managing schedules including ruggedized PDAs and barcode scanners for water sampling points.
- Created several software add-ons for the water monitoring software using C# WinForms to fill missing holes in the software and make it more usable. The add-ons included a visual/calendar view of the schedule so it could be planned better, and better software for syncing schedules with field loggers.
Software Engineer2004 - 2004CSIRO
- Wrote a 73-page thesis on evidence and argumentation-based risk assessment.
- Developed the full lifecycle from inception to completion.
- Setup and managed a Linux server.
Developed (System Automation and Security)2003 - 2003Murdoch University
Technologies: CGI, Apache, Linux Servers
- Found security vulnerabilities in their student grading system.
- Created deployment scripts for automatically setting up new units, replacing the previous manual copy/paste type setup that was conducted each semester.
- Tightened the security on the shared server to prevent students from accessing the database sitting behind the web application.
Freelance Web Developer1999 - 2003Freelance Work
Technologies: Apache, Linux Servers, CSS, HTML
- Worked during high school and university.
- Created an online survey software for an ISP using Perl CGI on Apache and IIS.
- Built websites for some local businesses on Apache, using SHTML (including the server side).
- Built an online Australian gaming leaderboard using Perl CGI on Apache and an online multiplayer text-based game.