

Johan Smarius
Microsoft MVP on .NET and DevOps, MCT, Coach/Trainer @ JMAC Software Solutions & Lead Microsoft Development Consultant @ Bergler
Tilburg, The Netherlands
Actions
Johan has been developing software since 1996 and has worked with .NET since version 1.0. With extensive experience as a lead developer and architect for .NET solutions, he is deeply passionate about clean coding and test-driven development. At JMAC Software Solutions and Bergler, he designs architectures for .NET solutions and coaches and trains developers in the domain of software engineering in general and Microsoft technologies in particular.
Links
Area of Expertise
Topics
Workshop getting started with .NET Maui
If you want to build a cross-platform application, .NET MAUI is a great technology to use. However, getting started with a new technology can be challenging—especially when it comes to cross-platform development.
During this workshop, you will install all the necessary components for .NET MAUI development on your own laptop and learn how to use .NET MAUI to build a cross-platform application. Depending on your operating system, you will focus on building either iOS and Android apps or Android and Windows apps.
By the end of this workshop, you will have built a cross-platform application yourself and leave feeling confident that you can use .NET MAUI in your day-to-day work. During the workshop, you can use Visual Studio, Visual Studio Code, or JetBrains Rider.
What's new in Entity Framework Core 9.0
Entity Framework improves with every version. Some great improvements have been made in .NET 9.0. In this talk, I will show you these changes and how you can use them in your projects.
What's new in C#
It is often hard to keep up with all the language updates in C# when developing software. In this session, we review the most important language enhancements from the last few versions of C#.
What’s New in C#: getting up-to-date again
C# continues to evolve at a rapid pace, introducing powerful new features that can make your code more concise, expressive, and robust. But keeping up with all these changes while managing day-to-day development work can be a challenge.
In this hands-on workshop, you'll get up to speed with the most important language features introduced in recent C# versions—such as pattern matching enhancements, records, top-level statements, nullable reference types, required members, primary constructors, and more. You’ll not only learn what’s new, but also why it matters and how to apply it effectively in real-world scenarios.
This session is designed for developers with prior C# experience who want to modernise their coding style and take full advantage of the latest improvements in the language.
By the end of the workshop, you’ll have practical experience using modern C# features and the confidence to apply them in your projects. You’ll also walk away with tips, sample code, and resources to continue your journey with up-to-date C# development
Using Playwright to test your Blazor App
We all (should) use unit testing to test our code. But if we build a front-end application with Blazor, we also need to test the code running in the browser. We can of course do this by hand, but that is boring. And as a software developer, I like writing software more that I like clicking on buttons and links. Well fortunately there is a tool to help us accomplice this: Playwright. In this talk I will show you what Playwright is and how you can use it to automatically test your Blazor front-end.
Modern monolith in .NET
Many systems are built nowadays using microservices. But microservice do come with a cost of complexity. Some companies are already moving away from microservices. But what to choose instead of microservices then? One of the options is a modern monolith. In this talk, I will show you what the pattern is all about and of course we will build a small system based on this architecture together, so that you can get a good understanding of how to build a modern monolith in .NET.
How to stay up-to-date as a working software developer
In the fast-paced world of software development, staying current with the latest technologies, tools, and best practices is essential for continued success and career growth. This informative session will explore effective strategies and practical tips for keeping up-to-date as a working software developer. Whether you're a seasoned professional or just starting your career, this session will provide valuable insights to help you stay ahead of the curve.
Design patterns to make building Blazor and Maui application easier
Creating SPA and mobile applications by simply putting the logic in the code behind can help you build an initial version of an app quite fast. But in the long run, this architecture will hinder future development. In this talk, I will show you three different software design patterns to provide a better separation of concern: Model-View-ViewModel, Onion Architecture and Clean Architecture. And of course I will not explain this by showing you slides, but we will dive into code to really show you how these patterns work.
Cosmos DB and Azure Functions
Cosmos DB is a great storage solution and Azure Functions are a great way to build serverless functions. But how can they use each other? In this talk, we will investigate the possibilities of integrating Azure Functions written in C# and CosmosDB and of course cover the pros and cons of each option. At the end of the talk, you will have a good understanding of the available options and when to use each option.
Azure Entra ID for user authentication in Blazor and Maui applications
Building a login system yourself is considered bad practice. But what to use instead? There are a lot of options available in the market to choose from. If you use Azure, there is a very good option built-in for this: Entra ID. In this talk, I will explain what Entra ID is all about and of course I will show you how you can use it to authenticate your users in Blazor and Maui.
.NET MAUI and . NET Aspire: a beautful combination
.NET MAUI is great for building cross-platform applications. .NET Aspire is great for supporting the development of distributed applications. But what would the combination look like? Well in this talk I will show you how you can use them together to achieve great solutions.
In this talk, you will learn how to integrate .NET Maui and .NET Aspire and what the benefits of the integration are for you as a developer. For this talk, you do not have to be an expert in both technologies. Do not expect a lot of slides in this talk. We will spend most of our time in code.
.NET Community Toolkits
Next to the official codebase of .NET, there are some great unofficial packages developed by Microsoft developers and the community to make developing .NET systems a lot easier: the .NET community toolkits. In this talk I will show you what great things are available in the .NET Community toolkit, but also in the .NET Maui Community Toolkit.
Workshop building a GraphQL Server in .NET
With .NET we often use WebAPI services. These services are most of the time based on the Restful principle. However, for a few years, GraphQL has been gaining popularity. Listening to talks about a topic can give you a good overview of what a technology stack can do. But playing with new technology will help you gain far better insights. So in this workshop, you are going to build your own GraphQL Service in .NET using Visual Studio or Jetbrains Rider. Because of the code, you will have to write, some basic understanding of .NET is required and of course, you do need your laptop with Visual Studio or Jetbrains Rider installed with of course the latest version of .NET.
At the end of this workshop, you will have enough knowledge to start building your own GraphQL service in .NET.
Will AI tools make you a better .NET developer?
ChatGPT caused a lot of motion around AI tools supporting the work process. Of cause developers is no exception in this. During this session, we will explore the AI tools available for .NET developers and answer the question of whether using these tools will make you a better .NET developer.
Kan ik met AI-tools betere .NET code te schrijven?
Met de komst van ChatGPT is er veel commotie losgebarsten rondom AI-tools om mensen te ondersteunen bij het uitvoeren van hun werk. Natuurlijk was voor ontwikkelaars bijvoorbeeld GitHub CoPilot al beschikbaar. In deze sessie gaan we samen op zoek of we met AI-tools betere .NET code kunnen schrijven. Aan het eind van de sessie heb je dan ook een idee of en hoe deze tools je werk eventueel eenvoudiger kunnen maken.
Clean architecture for a Blazor Application
Blazor is a great technology. Microsoft does not enforce any design principles for Blazor. When building a more extensive app some design approaches can be useful, however. In this talk, I will show you can apply clean architecture to a Blazor app.
Practical Design Patterns for everyday development
Design patterns have been around for many years. In many projects, they are still used sparingly. In this talk, I will show you some practical design patterns in .NET you can easily use in your day-to-day development. Using these design patterns will give you the knowledge to write more solid code.
How to apply Test Driven Development in .NET
Test-driven development has been around for some time now. Many organizations still do not use the test-driven development approach. In this talk, we will discuss how you can get started with test-driven development in green field and legacy projects. Prior experience with test driven development is not required.
Managing state in Blazor Applications
You have experimented with Blazor and now you are ready to build a real app with it. In a real complex app, you have to consider how you can manage state within your app. In this talk, I will cover some of the options you have and the advantages and disadvantages of every choice.
Introduction into Blazor
Blazor is an experimental technology to run C# in the browser. In this session, I will show what you can do with Blazor today. In this talk, I will build a small application to demo the different features of Blazor. I will also cover the differences between Blazor and Razor Components. After this session, you will have enough knowledge to start experimenting with Blazor on your own.
gRPC voor .NET ontwikkelaars
In .NET Framework 4 hadden we WCF en WebAPI. .NET Core bood alleen maar ondersteuning voor WebAPI. Sinds .NET Core 3 en met de verbeteringen in .NET 5 hebben we hier ook een goede extra variant bij gekregen: gRPC. In deze sessie laat ik zien wat gRPC is en hoe je hier gebruik van kunt maken in .NET 5. Natuurlijk ga ik ook in op keuze tussen WebAPI en gRPC.
State management in Blazor
Je hebt al wat gehoord en misschien zelfs al wat gespeeld met Blazor. Nu zou je Blazor WebAssembly graag toe gaan passen in een echt project. Binnen een SPA zul je een keuze moeten maken op welke manier je lokaal state bij wilt houden. In deze sessie behandel ik een aantal opties hiervoor met daarbij ook de voors en tegens van elke keuze.
Using gRPC and Blazor WebAssembly together
Both gRPC and Blazor are relatively new to the .NET ecosystem. In this talk, I will show you how you can use these technologies together. You do not need any prior knowledge of gRPC for this talk. I will cover the basics first before diving into the integration of these technologies.
gRPC gebruiken in een Blazor WebAssembly applicatie
Binnen Blazor WebAssembly kunnen we makkelijk gebruik maken van WebApi services. Nu heeft WebApi wel wat overhead wat niet altijd wenselijk is. In deze sessie laat ik je zien hoe je Blazor kunt combineren met gRPC.
GraphQL in .NET
Binnen .NET maken we vaak gebruik van WebApi koppelingen. Vaak baseren we deze api's op het RestFul principe. Steeds meer wordt tussen systemen geen gebruik meer gemaakt van Rest, maar van GraphQL. In deze sessie laat ik je zien wat GraphQL nu is en natuurlijk hoe je een GraphQL service kunt maken en consumeren met .NET.
gRPC in .NET
In .NET Framework 4 we could choose from WCF and WebAPI. In the beginning .NET Core only supported WebAPI. But in the new versions of .NET, we have a new player on the block: gRPC. In this talk I will show you what gRPC is and of course how you can build and consume a gRPC service in .NET.
GraphQL in .NET
With .NET we often use WebAPI services. These services are most of the time based on the Restful principle. However, for a few years, GraphQL has been gaining popularity. In this talk, I will show you what GraphQL is and how you can build and consume a GraphQL service in .NET.
Building cloud apps with .NET Aspire
Building cloud-native apps on your local machine is very hard and error-prone. Fortunately, there is a technology from Microsoft that can help you with this: .NET Aspire. In this talk, I will show you what .NET Aspire is and what it can do for your development experience. Of course, we are not going to cover this using a PowerPoint slide deck, but most of the time we will spend in code showing you all the good parts of .NET Aspire, so that you can go home with a good overview of what Aspire is and how you as a developer can use it.
Blazor WASM and Azure Static Web Apps a great combination
Blazor keeps getting better and better. But where will you host the great new app we have built with it? You could use an Azure App Service for this, but there is another great option in Azure: Static web apps. In this session, I will show you what Azure Static Web Apps are all about and how to combine these with Blazor WebAssembly. The better part of this talk will be spent in Azure and code, so don't expect a lot of slides.
Refactoring a .NET Maui app with MVVM to a clean architecture
Using the MVVM pattern is quite common in .NET Maui applications. This pattern does not ensure full separation of concerns and testability. We will refactor an existing Maui app with MVVM into a clean architecture in this workshop.
Green software development for .NET and Azure developers
Sustainability is very important for most individuals and companies. But how can you contribute to more sustainable software development? In this talk, I will show you what green software development is all about and how you can apply it as a .NET and Azure developer.
Blazor WASM and Azure Static Web Apps a great combination for building a competition application
For our sports club, we need a new competition application. Blazor keeps getting better and better, so why not build this application in Blazor? But where will you host this new app once we have built it? You could use an Azure App Service for this, but another great option in Azure is Static web apps. In this session, I will show you what Azure Static Web Apps are all about and how to combine these with a Blazor WebAssembly application for managing our competition. The better part of this talk will be spent in Azure and code, so don't expect a lot of slides.
Azure Functions for .NET Developers
A lot of .NET applications are written using WebAPI backend services. These services can be hosted using an AppService on Azure. The code in these WebAPIs is typically not very large and tends to go towards a microservice. But do I need a complete AppService in this case? In this talk, I show you a viable alternative: Azure Functions. We will cover what Azure Functions is all about, and of course, we will write some functions together to show you what you can do with Azure Functions.
At the end of the session, you will understand what Azure Functions are all about and how to build them.
Workshop building a GraphQL Server in .NET (full-day)
With .NET we often use WebAPI services. These services are most of the time based on the RESTful principle. However, for a few years, GraphQL has been gaining popularity. Listening to talks about a topic can give you a good overview of what a technology stack can do. But playing with new technology will help you gain far better insights. So in this workshop, you will build your own GraphQL Service with query and mutation support in .NET using Visual Studio, Visual Studio Code or Jetbrains Rider. Because of the code you will have to write, some basic understanding of .NET is required, and of course, you do need your laptop with Visual Studio, Visual Studio Code, or Jetbrains Rider installed, with of course the latest version of NET.
At the end of this workshop, you will have enough knowledge to start building your own GraphQL service in .NET and consuming this service in Blazor and .NET Maui.
Building a MicroService with an Onion architecture
Building a web service in .NET is easy. Most of us are familiar with a layering architecture to split the code into service and data layers. In this session, I will present a different approach in which the domain objects are really at the center of your microservice,
Applying Domain Driven Development in .NET
As a .NET developer, you are used to working with objects and layers. On the internet you read and more about the (not so) new kid on the block: Domain Driven Development. In this session, I will talk you through the most important aspects of Domain Driven Development and I will show you a sample implementation in a .NET solution.
Defensive Coding in C#
In this session, I will show you have you can write better code that is easier to maintain and more resilient against unexpected situations.
Docker for .NET Developers
You have been developing in .NET for some time now and you have heard some stories about containerization and Docker. In this session, I will show you what Docker can do to help you build better software in both greenfield and brownfield applications.
Hands-on Test Driven Development in .NET
Test-driven development has been around for some time now. Many organisations still do not use the test-driven development approach. In this workshop, we practice test-driven development in a hands-on scenario. During this workshop, you can practice the techniques on your own laptop. A .NET solution will be provided. The workshop will support VIsual Studio, Visual Studio Code and JetBrains Rider.
Using Playwright as a MCP server to test your web application
Playwright is a great tool for testing web applications. But what happens if you use the MCP server of Playwright and GitHub Copilot together. In this session, I will show you what great things you can do as a developer to speed up the testing of your web applications using this combination in the different stages of the development workflow. At the end of the session, you have gained insights into the power of the combination, and you know how to set this up on your machine. Do not expect a lot of PowerPoint slides. We will spend most of our time in code.
Is solid knowledge of software engineering no longer needed?
In the media, there is a lot of attention on Generative AI. Many companies seem to embrace vibe coding to generate the code. Developers only need to specify the functionality they want and let the AI write all the code for them. This could give the impression that solid knowledge of good software engineering practices is no longer needed. In this talk, I will challenge this thought by showing you that solid knowledge of software engineering practices is really needed to generate code that is maintainable, secure and extensible. By the end of the talk, I hope you have gained enough reasons to keep learning new software engineering concepts and deepen the knowledge of existing ones. We will spend the better part of the talk in code, so don't expect a lot of PowerPoint slides.
The impact of AI on the professional life of a developer
AI is changing how software gets built. This talk examines what’s shifting, what isn’t, and how developers can stay valuable as code generation accelerates. You’ll leave with practical strategies for using AI well, sharpening the skills that matter, and planning your next steps.
Does GenAI mean the death of Test-driven Development (TDD)
Many developers use Gen AI a lot for creating code. Generating unit tests is quite popular. But there is also a thing called test-driven development. And the major benefit of adopting this approach is not 100% code coverage, but rather a clean design. But can these approaches be applied together? During this session, we will dive into applying the combination for writing a piece of software. So at the end of this talk, you can make an informed decision whether TDD is useless if you use GenAI. Do not expect a lot of slides. We will spend most of our time in Rider en AI Assistant.
AI-Assisted Development with .NET
GitHub Copilot and similar tools can accelerate development—but only if used wisely. This talk covers using AI coding assistants in .NET projects while maintaining code quality, clean architecture, and TDD practices.
Key Topics Covered:
• Strengths and weaknesses of AI assistants
• Reviewing and validating AI-generated code
• Integrating AI into TDD workflows
• Risks of over-reliance on AI
Prerequisites: Experience with .NET development
Format: Talk with live AI-assisted coding examples
Takeaways:
• Use AI assistants effectively in .NET projects
• Maintain quality and standards
• Balance AI help with developer judgment
Clean Architecture for .NET MAUI in the Real World
Clean architecture promises maintainability and testability—but the real world is full of deadlines, legacy code, and changing requirements. This session shows how to implement clean architecture in an existing .NET MAUI application, balancing purity with pragmatism.
Key Topics Covered:
• Clean architecture principles
• Structuring .NET solutions
• Mapping theory to actual deliverables
• Migration strategies for existing projects
Prerequisites: Understanding of SOLID principles and C#
Format: Case study with code snippets
Takeaways:
• Apply clean architecture pragmatically
• Avoid overengineering your projects
• Introduce clean architecture incrementally
Clean Architecture for Blazor in the Real World
Clean architecture promises maintainability and testability—but the real world is full of deadlines, legacy code, and changing requirements. This session shows how to implement clean architecture in an existing Blazor application, balancing purity with pragmatism.
Key Topics Covered:
• Clean architecture principles
• Structuring .NET solutions
• Mapping theory to actual deliverables
• Migration strategies for existing projects
Prerequisites: Understanding of SOLID principles and C#
Format: Case study with code snippets
Takeaways:
• Apply clean architecture pragmatically
• Avoid overengineering your projects
• Introduce clean architecture incrementally
Clean Code in the Age of AI
AI-generated code can save time—but it often ignores clean coding principles. This talk explores how to review, refactor, and enforce clean code standards when AI is part of your workflow.
Key Topics Covered:
• Common AI code smells
• Applying clean code principles to AI output
• Automated code quality checks
• Educating teams on AI review best practices
Prerequisites: Familiarity with clean code concepts
Format: Live coding
Takeaways:
• Maintain code quality in AI-heavy workflows
• Recognize and fix AI-introduced issues
• Keep maintainability high over time
Deploy Enterprise .NET MAUI Apps Without an app store
Custom apps are used a lot in Enterprises for supporting different processes. .NET MAUI is an excellent choice for building these apps. But when the app is finished, how do you deploy your app to the different users? Of course you can use the app stores of Google and Apple for this, but this is not always the desired way. In this talk we will discover other options for deploying custom apps to your enterprise users.
Key Topics Covered:
• Deploy a .NET MAUI app to Android
• Deploy a .NET MAUI app to iOS
Prerequisites: Familiarity with MAUI and C#
Format: Live coding
Takeaways:
• Deploy an app to Android without Google Play
• Deploy an app to iOS without App Store
Event-Driven Architectures with Azure and .NET
Event-driven architectures enable scalable, decoupled systems. This session shows how to use different Azure components and .NET to implement robust event-driven solutions.
Key Topics Covered:
• Event-driven design principles
• Choosing between Event Grid, Service Bus, and Storage Queues
• Implementing event handlers in .NET
• Handling retries, DLQs, and monitoring
Prerequisites: Understanding of asynchronous programming in .NET
Format: Live coding
Takeaways:
• Select the right Azure messaging service
• Implement reliable event handling
• Build resilient systems with retry logic
From Zero to Hero with Azure Functions
Azure Functions offer a fast, lightweight way to build serverless functions in .NET and Azure. Many developers however still use app services for hosting web APIs in Azure. With this approach you do miss out on a light event driven solution that is well integrated with Azure. Of course, getting started with new technology is always difficult. In this talk, we will build a small production-ready Azure Function together with Cosmos DB integration for data persistence, authentication and authorization using Entra ID, and a clean architecture for maintainability. Of course, we will deploy the function using a CI/CD pipeline.
Key Topics Covered:
• Creating Azure Functions in C#
• Integrating Cosmos DB with a Azure Function
• Applying clean architecture
• Unit and integration testing
• Deployment to Azure using GitHub Actions
Prerequisites: Basic C# knowledge
Format: Live coding
Takeaways:
• Build Azure Functions quickly and cleanly
• Write maintainable and testable API code
• Deploy Azure Functions to Azure using a build and release pipeline
From Zero to Hero with Minimal APIs
Minimal APIs offer a fast, lightweight way to build services in .NET. Many developers however still use the old approach based on controllers, even for microservices. With this approach you do miss out on ahead-of-time (AOT) compilation and significantly less boilerplate code. Of course, getting started with a new approach is always difficult. In this talk, we will build a small production-ready API together with EF Core integration for data persistence, authentication and authorization using Entra ID, and a clean architecture for maintainability.
Key Topics Covered:
• Creating Minimal APIs in .NET
• Integrating EF Core
• Integrating Entra ID
• Applying clean architecture
• Unit and integration testing
• OpenAI
Prerequisites: Basic C# knowledge
Format: Live coding
Takeaways:
• Build Minimal APIs quickly and cleanly
• Write maintainable and testable API code
Once Upon a Code – Storytelling for Software Developers at Work
Every developer has faced it: the code review or sprint review that goes sideways, the brilliant idea that fizzles in a meeting, the documentation that nobody reads. What if the missing ingredient isn’t more data—but better storytelling?
In this talk, we’ll explore how narrative techniques can transform the way developers present their work. Whether you're walking your team through a pull request, pitching a new feature to product managers, or writing documentation that actually gets used, Storytelling can help you connect, persuade, and clarify.
We’ll break down how to structure technical communication like a story—with characters (users), conflict (problems), and resolution (your elegant solution). You’ll learn how to make your work memorable, understandable, and even enjoyable to review.
This isn’t about fairy tales—it’s about making your everyday developer communication more effective, more human, and more impactful.
🎯 Key Takeaways
- How to structure a code review presentation like a compelling narrative
- Techniques for pitching new ideas with clarity and emotional resonance
- Story-driven documentation: making technical writing readable and useful
- Using storytelling to build empathy and trust across teams
👥 Target Audience
Software developers and engineers
Tech leads and engineering managers
Technical writers and product designers
Anyone who presents technical work to others
Refactoring Legacy .NET Code with Confidence with a little help of GitHub Copilot
Legacy code is often fragile and untested. This talk shows how to safely refactor legacy .NET applications by introducing tests first with the help of AI, then applying incremental cleanups without breaking functionality.
Key Topics Covered:
• Introducing tests to untested code with the help of GitHub Copilot
• Refactoring patterns for legacy systems
• Avoiding regression bugs
• Tools for safe refactoring in .NET
Prerequisites: Solid understanding of .NET and unit testing
Format: Live coding
Takeaways:
• Safely modernize legacy code
• Use testing as a safety net
• Avoid common refactoring pitfalls
Reflections on migration an existing Windows application to .NET MAUI
.NET MAUI is great for building cross-platform apps. But can you migrate an existing Windows application built in a weakly typed language to .NET MAUI? And is it possible to test the new application with both unit testing and UI testing during the migration process? And of course how can I handle the deployment to the local machines after the application is finished? For a customer I took on this experiment and in this talk I will reflect on the lessons learned. I can not show the real application due to legal limitations, but I will show the problems I faced in a simulated look-alike environment.
Key Topics Covered:
• Migrating legacy code to .NET MAUI
• Using only a Windows target for .NET MAUI
• Using GitHub Copilot for migrating between languages
• Automated testing of the application code
• Using CI/CD in Azure DevOps during the migration
• Deploying the application to the end users
Prerequisites: Familiarity with MAUI and C# unit testing
Format: Presentation and live coding
Takeaways:
• Migrate legacy code to .NET MAUI and make this testable
• Using GitHub Copilot to migrate code from a weakly typed language to C#
• Using unit testing and UI testing for .NET MAUI apps.
• Deploy the application to users
• Using Azure DevOps for CI/CD pipelines for a .NET MAUI application
Securing .NET Apps in Azure
Security is non-negotiable in cloud applications. This talk covers integrating Entra ID, managing secrets, and applying zero-trust principles in .NET applications.
Key Topics Covered:
• Authentication & authorization using Entra ID
• Secret management with Azure Key Vault
• Zero-trust architecture principles
• Threat modeling basics for .NET apps
Prerequisites: Intermediate .NET and Azure knowledge
Format: Live coding
Takeaways:
• Implement modern authentication in .NET apps
• Secure application secrets in the cloud
• Apply zero-trust practices effectively
Testing .NET MAUI Apps Like a Pro
Testing cross-platform apps is challenging. In this talk, we’ll explore how to implement effective automated testing for .NET MAUI applications, from business logic to full UI automation.
Key Topics Covered:
• Unit testing in MAUI
• UI test frameworks for cross-platform apps
• Maintaining fast and reliable test pipelines
Prerequisites: Familiarity with MAUI and C# unit testing
Format: Demo-heavy with real test suites
Takeaways:
• Build comprehensive test coverage for MAUI apps
• Balance speed and reliability in tests
• Automate testing in CI/CD pipelines
Global Azure Greece 2024 User group Sessionize Event Upcoming
AI Dev Tools Today User group Sessionize Event
Update Conference Krakow 2025 Sessionize Event
NDC Oslo 2025 Sessionize Event
DOTNED SATURDAY 2025 Sessionize Event
Festive Tech Calendar 2024 Sessionize Event
Azure Back to School 2024 Sessionize Event
Azure & AI Lowlands 2024 Sessionize Event
ABP Dotnet Conference 2024 Sessionize Event
Festive Tech Calendar 2023 Sessionize Event
DOTNED SATURDAY 2023 Sessionize Event
DOTNED SATURDAY 2022 Sessionize Event
DOTNED SATURDAY 2020 Sessionize Event
Bergler Event
Domain Driven Design en (micro)services in de praktijk
SDN Event
Hands On Getting Started with Docker Container
DotNet Saturday
Writing beter code with Visual Studio 2017
Bergler Event
Coding styles in Visual Studio
Bergler Event
Workshop Test Driven Development

Johan Smarius
Microsoft MVP on .NET and DevOps, MCT, Coach/Trainer @ JMAC Software Solutions & Lead Microsoft Development Consultant @ Bergler
Tilburg, The Netherlands
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