William Liebenberg

William Liebenberg

Solution Architect at SSW

Melbourne, Australia

William is a Solution Architect at SSW with a strong focus on building enterprise solutions on Azure and enjoys developing great software engineering practices for teams.

William is an active member of the Melbourne developer community where you can find him attending or presenting at user groups, hack days and conferences every time he has a chance!

Recently in his spare time William combined his passion for IoT and BBQing to build his own smoker that can track the temperature and doneness of his tasty treats.

Area of Expertise

  • Information & Communications Technology


  • Azure Functions
  • Microsoft Azure
  • Azure CosmosDB
  • Azure Mobile Development Enterprise Architecture
  • Cloud Architecture
  • Clean Architecture
  • Azure DevOps Enterprise Architecture Software Development
  • 3D Development
  • Modern Software Development

Unleashing the Power of Microservices with Dapr and Azure Container Apps (Workshop edition)

Building, deploying, and owning a single web application can be a challenge. Working with microservices only compounds all of your problems. With the game-changing combination of DAPR and Azure Container Apps, we can fortunately remove most of the pains associated with microservices.

This workshop is divided into two parts:

1. What is DAPR and how it helps microservices development
• What is DAPR?
• Using DAPR Building Blocks for microservice state persistence
• Using DAPR Building Blocks for sync and async communication between microservices
• Building and debugging microservices locally

2. How to run DAPR in Production with Azure Container Apps
• Provision Infrastructure with Azure Bicep
• Containerizing microservices with GitHub Actions
• Deploying microservices with GitHub Actions
• Implementing Observability

This workshop is suitable for Software Engineers experienced in almost any language (.NET, Python, Java, Go, Ruby etc.) as well as Platform Engineers. All you need is a basic knowledge of Microservice Development, a computer, and desire to lift your microservices development game!

Equipment and software requirements:
• A computer - either Windows PC, macOS, or Linux
• Visual Studio 2022 or VS Code or JetBrains Rider
• .NET 8 or higher
• Docker Desktop
• REST client (Postman, Insomnia, etc.)
• GitHub account
• Azure Subscription

Unleashing the Power of Microservices with Dapr and Azure Container Apps

Building, deploying, and owning a single web application can be a challenge. Working with microservices only compounds all of your problems. With the game-changing combination of DAPR and Azure Container Apps, we can fortunately remove most of the pains associated with microservices.

In this session, you will learn how DAPR and Azure Container Apps enhance the scalability, resiliency, and maintainability of your microservices while reducing complexity.

Join William for a hands-on demonstration of how to build and deploy microservices, leaving you inspired to elevate your microservices game.

The Architect's Journey to Successful Enterprise Projects

In the ever-evolving landscape of cloud computing and enterprise solutions, Architects play a pivotal role in shaping the success of projects. In this session William explores the intricate journey that architects embark upon as they specialize in developing cloud solutions.

Scoping a project, often the initial challenge, is a strategic art form of interpreting, unpacking and challenging a client’s requirements. Architects are tasked with guiding their clients through a dynamic process of effective discovery and interpretation of requirements. Understanding the true complexity of a project is the key to determine the most suitable cloud and software architecture that paves the way for crafting a solution that not only meets but exceeds expectations.

Join William in this session to delve into the Architect's Journey, learning how to navigate the intricate terrain of scoping, strategizing, and architecting. Discover the insights and best practices that empower architects to align technology with business goals, resulting in the successful realization of enterprise projects.

Getting Started with Bot Development

In this session, you will learn about the new interface paradigm by developing a bot using Microsoft Bot Framework along with the understanding of its full life cycle i.e. Plan, Design, Develop, Test, Publish, Connect and Evaluate.

In addition to this, you will also get a chance to learn about the AI capabilities of Conversational Interfaces along with the different set of bot builder tools to accelerate the bot development. This will include Dialogs, AdaptiveCards, Cognitive Services etc.

Furthermore, a brief overview of two main Cognitive Services such as QnAMaker and LUIS will also be discussed followed by the demo.

At last, you will also learn how to make your bots available to the famous channels such as Google Assistant and Amazon Alexa with the same code.

All in all, it's going to be fun for those developers who are interested in developing bots and want to start from the scratch.

Getting started with Bot Composer

What is a Bot and how do we make them useful?

In this talk William introduces you to modern Bot development using Microsoft's Bot Composer and Azure Cognitive Services.

Your first bot can be made without writing any code! You will also see how Azure Cognitive Services can make your bot super smart and have a human-like personality.

Flexing your Biceps with Azure

No matter how hard we try, Azure Resource Manager (ARM) JSON templates aren’t easy or fun to maintain for enterprise platforms and applications.

Now we can flex our Infrastructure as Code (IaC) muscles using a new tool called Azure Bicep.

Azure Bicep is a Domain Specific Language that puts the fun back into IaC development with a simpler syntax, better code reusability and modularity.

In this talk we are going start by exploring how Bicep works, how we use it, and compare it to other IaC options such as Terraform and Pulumi.

We will wrap up the talk with a live demo to deploy a full-stack application to Azure.

Building Rock SOLID Serverless Applications

The world has embraced Serverless computing but some systems still end up with the same problems we thought would be a thing of the past. I can hear someone in the background whispering "Distributed monoliths!"

In this talk, I start by covering how we should apply familiar SOLID principles to our Azure Functions software architecture and infrastructure so that our systems are light, easy to maintain and benefit from unbounded scalability. I follow through with some hardening techniques that involve event messages and triggers that boosts our application's resiliency to outages, security, and low-coupling.

After this talk you can go and build Rock SOLID Serverless applications that will be able to withstand the test of time.

Flavours of State Management with Blazor WebAssembly

Working with Blazor WebAssembly applications we often overlook the importance of appropriate state management. Without a good understanding and the right strategy, our applications can end up polluted with components that behave badly and we end up regretting the bad choices.

In this session, I will cover the simple state management flavours and then progress towards something more tasty like the Redux pattern. We will see what there is to like and dislike about each pattern. Next, we will take a step back and determine the appropriate flavour of state management to pair with our application. You will leave this session having sampled all the wonderful state management patterns and be able to make the best decisions to have an awesome development experience.

Building an Enterprise Service Bus on Azure

Any exiting business you meet and talk to will be using software! Over time businesses settle on a mixture of both generalized and specialized solutions to fulfill their various requirements - and now we need to connect these systems.

It's common to see direct point-to-point integrations being developed where these systems can become tightly coupled and harder to update or migrate away from.

In this workshop we will explore how to use elastic-scale Azure resources such as Azure Service Bus, Function Apps and Cosmos DB to build resilient, decoupled integrations.

We will be looking at:
1. Message Routing for multiple domains
2. Serverless Integrations at the edge
3. Centralized Management and Monitoring
4. Event Sourcing
5. Cost

Azure SpendOps – The Art of Effectively Managing Azure Costs

Have you accidentally blown your Azure budget? Have you wished you could predict the budget before it happened? Then you need SpendOps!

In this presentation you will be introduced to SpendOps and how it gives you control of your spending. You will learn how to instrument your applications and utilize your automated testing pipeline to collect cost metrics that feed back into your DevOps life cycle to safeguard your budget against expensive releases.

William will show you how he built SpendOps into his DevOps life cycle and how you can leverage existing tools to do the same.

NDC Sydney 2024 Sessionize Event

February 2024 Sydney, Australia

DDD Brisbane 2023 Sessionize Event

December 2023 Brisbane, Australia

DDD Brisbane 2022 Sessionize Event

December 2022 Brisbane, Australia

NDC Melbourne 2022 Sessionize Event

June 2022 Melbourne, Australia

NDC Sydney 2021 Sessionize Event

November 2021

NDC Sydney 2020 Sessionize Event

October 2020 Sydney, Australia

NDC Melbourne 2020 - Online Workshop Event Sessionize Event

July 2020

William Liebenberg

Solution Architect at SSW

Melbourne, Australia