Farmgate Auctions

FarmGate Auctions is an Australian online livestock auction platform

Overview

An Australian tech company delivering an online livestock selling platform for both web and mobile devices

The FarmGate Auctions platform allows online participation at virtual or physical livestock auctions. It connects producers, cattle buyers, and livestock agents – who can assess, buy, market, and sell their livestock – without leaving the paddock.

This is accomplished with a platform that includes iOS and Android mobile apps, a web app, and a web based administrative interface for Farmgate staff. These are powered by a scalable cloud hosted backend platform capable of running real time auctions with large numbers of lots and bidders.

Problem Statement

Navigating Dynamic Auction Ecosystem: Challenges in Real-time Bidding, Autoscaling, and Strategic Growth

This platform allows online participation at virtual or physical livestock auctions. It connects producers, cattle buyers, and livestock agents – who can assess, buy, market, and sell their livestock – without leaving the paddock.

This is accomplished with a platform that includes iOS and Android mobile apps, a web app, and a web based administrative interface for Farmgate staff. These are powered by a scalable cloud hosted backend platform capable of running real time auctions with large numbers of lots and bidders.

Our Thinking

Agile Architecture and Efficient Scaling

Both the backend platform and the mobile and web frontend architectures require the ability to quickly pivot as new design ideas and features are discovered. The development, testing, deployment, and monitoring need the agility to change in response to new business ideas or changing priorities. To achieve this, we use a hybrid (React) approach for the mobile and web apps, with a large percentage of common code across all three platforms.

We use real user logs to create automated load testing with truly representative individual user sequences of API calls and delays between them. We then use these to load test the platform up to two orders of magnitude more users than expected to characterise failure modes and set up metrics and warnings for performance degradations. We also used automated load testing to optimise the API response times which led to a 50% reduction in the required cloud resources to run at the same load levels.

We designed a way to reduce platform costs by intelligently scaling based on auction schedules rather than waiting for traffic increases or response time problems to trigger autoscaling. As well as reducing platform compute requirements by 50% because of load testing and code optimisation, pre-emptive schedule scaling allowed us to reduce typical action time platform costs to 50%, and non-action time baseload platform costs by 80%.

We improved observability of platform during auctions, particularly busy and high load auctions. This allows us to fine-tune scaling predictions based on near term indicators like activity in the pre action period (measuring things like people registering, people viewing and saving/favouriting actions catalogs and lots, etc). It also provides better early warning of platform performance and scale requirements that allow DevOps responses before performance problems start to affect auction participants.

Design

Navigating User Needs Across Platforms and Interfaces for Optimal Consistency and Utility

Largely driven by the client, our team mostly turns high level client ideas into detailed web and mobile designs while enforcing consistency and meeting user expectations.

We recognise the range of tasks various user personas need to complete, and the impact of phone sized screens vs laptops, and the touch interface vs mouse (trackpad). All combinations of these are considered in final design choices for each category of user persona, screen size, and interaction interface.

The business is split across a mostly static website (in WordPress) and the dynamic React webapp and mobile apps, and care is taken to ensure consistency of design between those two publishing platforms.

Design is a journey as much as a task. We conduct user surveys and run user testing, and we observe real work use of features and interfaces and iterate designs to achieve maximal utility.

Development

We leverage hybrid technologies, mostly using the same html/javascript/css across all platforms, with the small amount of required customisation for specific platforms (iOS/Android/web).

We split apart the customer acquisition, marketing, and comms website requirements – and the dynamic auction app. The first part is all handles using WordPress, and only the core business auction requirements are custom coded.

We use modern DevOps practices, with source control and code reviews, Continuous Integration and Continuous Delivery (CI/CD) pipelines to promote new code into separate staging and production platforms via fully automated deployment, and we have monitoring and alerting to allow rapid response to performance or other issues and scaling out rolling back as required.

We are extremely happy with the service Mobiddiction provides. They are clear in their communication, have gone above and beyond to support us, even at a time they were only just coming onboard, and we had a fail in our system during one of our live auctions, the team worked overnight to get us back up and operating for the sale. We trust the advice they give us and they have been able to deliver high quality work on a complex auction system

Chanel GallenGeneral Manager, FarmGate Auctions.

Ongoing

Robust Infrastructure, Continuous Collaboration, and Proactive Performance Monitoring

We manage and maintain Farmgate’s Google cloud platform (GCP), including hands on monitoring for important or large auctions, and monitoring and reporting on platform and client performance of completed auctions.

We maintain source code repositories and CI/CD pipelines to build, test, and deploy new versions of the web/mobile apps and the backend platform.

Our customer’s success is our success too and we take pride in collaborating and always thinking ahead…

Mike VasavadaDirector – Mobiddiction

We use local/dev environments and cloud-based staging and production environments, allowing rapid development and comprehensive testing under real world traffic and in identical staging environments to our production platform.

We provide hands-on ops/system resources during leadup to and while major auctions are in progress.

We collaborate with the team at Farmgate daily, on slack, emails and calls and follow good documentation practice and assist in not only our day-to-day tasks but also help in planning new features and opportunities.

Our team takes pride in continuous collaboration and helps manage their product roadmap and provide high level strategic insights, estimates for medium- and long-term ideas, and detailed estimates for short term projects and work.

At this point we usually would say "Try it for yourself!"

Go to farmgateauctions.com.au or download it from the app store.