William Liebenberg
Azure & .NET Consultant at Arinco
Melbourne, Australia
Actions
William is an Azure & .NET Consultant at Arinco with a strong focus on building cloud-native 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.
Links
Area of Expertise
Topics
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.
Modulith Mastery: Streamlining Architecture with .NET
Are you caught in the tug-of-war between monoliths and microservices? What if you could enjoy the simplicity of a monolithic application while keeping the flexibility of microservices? In this hands-on workshop, we'll dive into the world of the Modulith — the Goldilocks architecture.
We'll harness the power of .NET Source Generators to sweep away the tedious boilerplate code for setting up modules and endpoints. No more manual wiring and forget about reflection code—it's all handled elegantly by source generators! And here's the best part: you'll learn how to effortlessly extract a module from your Modulith and run it as its own microservice with minimal code changes.
What we'll cover:
- Modular Monolith and Domain-driven Design concepts (Shared Kernel, Bounded Contexts, Aggregates and Entities, Domain Events)
- Leveraging .NET Source Generators to automatically wire up modules and endpoints in your Modulith, eliminating the need for reflection or manual registration code.
- Develop modules independently within a single, cohesive application.
- Seamlessly transitioning modules from the Modulith to standalone microservices without losing your sanity.
This workshop is designed to make those tricky architectural choices a bit less daunting. So grab your laptop, your curiosity, and perhaps a cup of your favourite brew and dive into the world of Moduliths together!
Format: Hands-on workshop
Duration: 2 hours
Tech Requirements: .NET 8/9, Visual Studio / Visual Studio Code / JetBrains Rider
Target Audience: Intermediate+
NDC Sydney 2024 Sessionize Event
DDD Brisbane 2023 Sessionize Event
DDD Brisbane 2022 Sessionize Event
NDC Melbourne 2022 Sessionize Event
NDC Sydney 2021 Sessionize Event
NDC Sydney 2020 Sessionize Event
NDC Melbourne 2020 - Online Workshop Event Sessionize Event
Virtual Global AI on Tour 2020 Melbourne Australia Sessionize Event
William Liebenberg
Azure & .NET Consultant at Arinco
Melbourne, Australia
Links
Actions
Please note that Sessionize is not responsible for the accuracy or validity of the data provided by speakers. If you suspect this profile to be fake or spam, please let us know.
Jump to top