Michael Pivato

Career summary and interests

A driven and highly motivated full-stack developer, I am always ready to improve and learn. With a vast knowledge of multiple programming languages, paradigms and related technicologies, I have successfully implemented many applications that have been used and loved by clients.

Career

PowerHealth Solutions

2019 - Current

Key Responsibilities

  • Redesign and maintain the PowerHealth Solutions costing product (PPM).
  • Create and maintain various front- and back-end components to support consistent theming, quality, and developer experience across PPM and now the billing product.
  • Respond to internal and client feedback to improve the costing product.
  • Develop automated tests to improve code quality.

Key Achievements

  • Significant contributions to the redesigned costing product, that is now in production use and enjoyed by clients.
  • Create and setup front-end and associated web server back-end components on the costing and billing products, as well as internal products.
DST Group

Cadet at DST Group

2018 - 2019
Key Responsibilities
  • Research distributed systems and middleware for use in tactical situations.
  • Develop a project to show this research.
  • Write about new technologies, their benefits to defence, and how they can be used.
  • Held a Negative Vetting 1 (NV1) Security Clearance.
Key Achievements
  • Implementation of Raft algorithm for the camera network.
  • Implementation of Hand Detection using CNN, and finger recognition with alternative algorithm.
Kilburn Software

Software Developer at Kilburn Software

2016 - 2018
Key Responsibilities
  • Develop Mac and iOS applications using Xamarin and C#.
  • Network and MS-SQL Server Troubleshooting and Implementation.
  • Adhere to quality standards regarding privacy of information for schools.
  • Liaise with stakeholders of the application being developed.
Key Achievements
  • Rollout of macOS and iOS applications to several schools.
  • Set up a testing station in the office to simulate a Catholic Primary School.

Education

Bachelor of Information Technology

2016 - 2018

University of South Australia

GPA: 6.89

Awards

  • University of South Australia 25th Anniversary Excellence Scholarship
  • 2nd year Scholarship in Information Technology
  • 3rd year Scholarship in Information Technology
  • Chancellors Letters of Commendation

Skills

  • Java
  • Angular and Web - including Typescript/Javascript, CSS, HTML
  • SQL - primarily MSSQL/T-SQL
  • Rust
  • Flutter/Dart
  • Xamarin + C#/.Net
  • Python

Hobby Projects

Over the years I've hacked away at various personal projects. My preference is always to build, run and host applications locally, which includes this page!

Recently my interesets have shifted slightly to large machine learning models, and have messed around with Stable Diffusion (mainly with Invoke AI) and Llama language models in rustformers. The latter has been a bit dissappointing (at least for its programming ability), and I think my job will stick around a while longer!

Finally I've thoroughly enjoyed writing in Rust, mainly the efficiency, ease of use and correctness that come from using this programming language. One example was in the FastCoster project, where I reduced the time taken for processing some demo data on the costing product from ~1.5 hours to ~7 seconds on a laptop/desktop, or ~36 seconds on a smartphone. This was mainly due to not using SQL Server, and using a custom algorithm in overhead allocation that significantly reduced memory consumption and the number of required calculations.

PiCar

Source

This project originally involved communication between a Raspberry Pi and a Traxxas Slash using the Pi's GPIO to control the steering and throttle of the RC Car. This was mounted on some 3D printed brackets.The steering and throttle are set using an iPhone/Android application connected over WiFi.

Over time this worked as a base to explore other ideas, namely:

  • SLAM: Using BreezySLAM and a 2D RP Lidar A1, the Pi can map out an area and send this information to the controlling phone.
  • Depth Prediction: Using the Pi's camera and an Intel Neural Compute Stick (NCS), the Pi could process camera data and use a custom implementation of the FastDepth Neural Network to add 3D sensing capabilities.

Recently there have been efforts to port the backend to Rust, with the 2D Lidar sensing and control completed. The Python BreezySLAM implementation is currently unfinished, mainly due to distractions from other projects

Depth Prediction

Source

From the PiCar project, I explored many different implementations of monocular depth Prediction and 3D SLAM solutions, including implementing my own algorithms and trainers for depth prediction that perform well on constrained devices.

This gave me a solid foundation on Tensorflow/Keras and computer vision. It also helped expand my knowledge on machine learning from university/online study, as I previously had not explored models this large, or specifically computer vision related models.