Tobias Fenster

Tobias Fenster

Managing Partner at 4PS Germany, Microsoft RD & dual Microsoft MVP, Docker Captain

Ulm, Germany

Tobias Fenster started as a developer in the 1990s. Holding different positions including Head of Technical Consulting, Head of Development and CTO for multiple Microsoft partners during his career, he is now a Managing Partner at 4PS Germany. He is also a Microsoft Regional Director, holds dual Microsoft MVP awards for Business Applications and Azure and is a Docker Captain.

He is blogging on tobiasfenster.io, where he writes about Business Applications, Docker and Windows Containers, but also tooling like Azure DevOps, Visual Studio Code and infrastructure automation. His other focus is Azure, mainly around container environments and SQL.


Area of Expertise

  • Information & Communications Technology


  • Containers
  • Docker
  • Business Central
  • Microsoft Dynamics 365 Business Central
  • DevOps
  • Azure DevOps
  • DevOps & Automation

Wasm? Wtf!

Wasm, short for WebAssembly, has been one of the software development hype topics in the past months. But what is it actually? Does it matter for Business Central? And if yes, why?

In this session you will get a general intro into the topic and see with practical examples how it might matter for BC. We'll look into use cases both in the backend and in the frontend. Be warned though: For some parts, it is very early days and experimental, so if you are looking for content usable in your customer projects tomorrow, this is not for you. But if you want to see the hot stuff in dev today that might change the landscape mid- to long-term, this will be fun!

Using the terraform Azure provider to deploy your solutions to Azure

Infrastructure as Code is gaining momentum and Terraform by HashiCorp is one of the most popular choices. With their Azure provider, you can easily deploy your solutions to Azure. This session will show you the basics and walk you through a real life scenario

Using traefik as reverse proxy for Windows container based environments

When running environments hosting multiple containers, networking can become tricky, especially on Azure VMs. In this session you will see how traefik can easily be set up as reverse proxy in that scenario

Use Server jobs in Azure pipelines

Running custom agents on demand for every pipeline run can be time consuming if you need to use an Azure agent first. A possible solution are server jobs that ran immediately and make it a lot quicker to spin up your agents

Onboarding from the perspective of an ISV

With the ongoing enrichment of onboarding capabilities within Business Central, ISVs need to identify what value they can bring to their product users through these capabilities.

We need to balance having just enough content in the right place, at the right time, for the right user. We also need to keep in mind the effort and skills amongst our teams to create and maintain onboarding content.

In this session, we will give an overview of the Business Central onboarding tooling. We will follow by sharing some ideas and insights to date from the perspective of a large ISV, on how we can deliver value to our users and maintain our onboarding content. This includes enabling non-developers to create and maintain content directly.

Microsoft roundtable: DevOps and CI/CD

It's a goal for Microsoft that all partners are using a professional DevOps setup including CI/CD. We want to understand your challenges when it comes to DevOps and CI/CD in order to help you make the right choices. Join this roundtable to discuss and share your experiences, ideas and challenges with CI/CD and DevOps.

Get started with Windows Containers using Portainer and Traefik on an Azure VM

There are lots of services and offerings around containers out there, but if you want to user Windows as OS and have a look under the hood or more control over what happens, it becomes complicated quickly. In this session you will see how you can easily spin up a Windows VM on Azure with the Open-Source GUI container management tool Portainer and the reverse proxy Traefik preconfigured, so you can easily try out things

DevOps is the goal, but which way to choose?

Over the last years, having a good DevOps practice in place with Continuous Integration and Deployment / Delivery has become a differentation factor in the Partner landscape, maybe even a requirement. So the goal is clear, but there are by now three great options how to get there: Microsoft offers AL-Go for GitHub, and we have ALOps and COSMO Alpaca as options for Azure DevOps. But what are the strenghts and differentation factors between those alternatives? How can you find out what the best option for you is? In this session, we will take a close look at the offerings to help you make that decision

Creating and maintaining Azure infrastructure professionally

A lot of focus in the last months and years has been about running BC online in Microsoft's SaaS offering, so the impression might be that infrastructure is no longer relevant. However, at the same time, the need for Azure Services has grown. Whether it is simple infrastructure services like VMs, platform services like Azure SQL or serverless infrastructure like Azure Functions, all of this most be created and maybe more challenging, maintained. In this session, you will be introduced to the different approaches to Infrastructure as Code, why that matters, and you will see in a couple of demos how Bicep, Terraform and ARM as some of the leading tools in that area work.

Container-basierte Entwicklung für .NET-Entwickler

Containerisierung hat die Welt der Softwareentwicklung und des Anwendungsbetriebs in den letzten Jahren im Sturm erobert. Und die Basics, um "irgendwie" Containerisierung zu machen, sind auch einfach und schnell gelernt und umgesetzt. Aber welche Stolperfallen gibt es dabei, wie werden die eigenen Container Images wirklich produktionsreif und kann ich eigentlich auch direkt in Containern entwickeln? Diese Session beantwortet all diese Fragen anhand praktischer Beispiele

Calculating Azure cost conveniently

When you plan to move your infrastructure, solutions or services to Azure, you probably want to calculate in advance how much it will cost. For simple scenarios, the Azure pricing calculator is a good option, but for more complex scenarios or for easily comparing variants, it can become cumbersome. In this session you will see how to use the Azure Pricing API and how you can use a small Deno-based tool and Excel to analyze your scenarios and their cost

Being more efficient with VS Code

For a few years we have been able to work with VS Code. This development environment offers many features that allow us to develop our solutions more efficiently. We want to cover a few possibilities of them. We are going to cover both general and specific topics. Starting from simple configurations, we will also cover built-in tools and additional extensions we recommend for working with VS Code

Above and beyond - When BC is not enough

Business Central certainly is a great solution, with a lot of flexibility and extendability. But at the same time, it has its limits and also, while you can do some things in BC, it actually is better to do them somewhere else. In this sessionm we want to tackle three aspects of that:

- You want to compute something where BC isn't ideal, maybe because you would like to use a third-party library or AL isn't a great fit for the problem. We will show how Azure Functions can be created, deployed and maintained to make that work
- You want to integrate with other solutions in the Microsoft world or with other Business Central tenants. We will show how Dataverse can be used to solve that type of problem
- You want to move data out of Business Central, e.g. because you intend to keep your database lean or need to use advanced analytics. We will show how an Azure Data Lake can help with those challenges

After this session, you will have an idea about the solutions those products offer in connection with Business Central, where they can help you and you will also see how to use them

Erstellen einer Azure DevOps Web Extension

Azure DevOps hat sich als umfassende Lösung für den kompletten Software-Lebenszyklus für Projekt- oder Produktentwicklung etabliert und entwickelt sich nicht zuletzt durch den Extension Marketplace stetig weiter. Was aber, wenn man doch etwas braucht, das es noch nicht gibt? In dieser Session werden die Grundlagen der Azure DevOps Web Extension Entwicklung vorgestellt und dann anhand eines praktischen Beispiels umgesetzt. Am Ende haben Teilnehmer alle notwendigen Vorbereitungen gesehen, um direkt mit einer eigenen Extension loszulegen

Entwicklung von Webanwendungen mit Visual Studio Code Entwicklungs-Containern

Containerisierung, serverless, no-code/low-code und andere Trends verdrängen oder verstecken immer mehr den Bedarf nach komplexen Server-Infrastrukturen. Gleichzeitig ist mancherorts das Aufsetzen einer Entwicklungsumgebung oder der Wechsel zwischen Entwicklungsprojekten und -technologien ein aufwendiger, manueller Prozess. Mit Visual Studio Code Entwicklungs-Containern steht dafür eine sowohl sehr einfache als auch sehr mächtige Lösung bereit. In dieser Session werden die Grundlagen vorgestellt und anhand mehrerer Beispiele die praktische Verwendung gezeigt.

Interfaces in AL

With Business Central 2020 release wave 1 we get a new language feature in AL: Interfaces. In this session you will get a bit of background why that is a very important addition to the toolset of Business Central developers and architects and see a practical demo of how to use interfaces

YouTube: https://youtu.be/2WsU5TWPqXs

Practical examples of Docker containers on Windows

After the introduction to Docker containers on Windows at the April MVPDays you will now see some practical examples: Running your first container, building an image and even running multi-container environments

Real life scenarios and best practices for using NAV on Docker

In this session you will see demos and implementation details of real life scenarios and best practices for using NAV/BC on Docker. The scenarios covered are:
- Self-service with containers: How to provide containers to developers and product managers through an easy to use web interface
- Multi-container environments: In some cases you need to run mutiple containers at once and you will see how this can easily be accomplished with Docker compose
- Automated extension 2.0 builds: Build your 2.0 extension using a CI/CD pipeline can greatly benefit from Docker containers including multi-stage images
- Using Azure Container Instances: If you just want to run a NAV/BC container without having to worry about the underlying infrastructure, Azure Container Instances are the solution

Docker on Windows 101 and NAV on Docker deep dive

In this workshop you will get an introduction to Docker on Windows from installation to running your first containers and using container concepts. Then you will see how NAV on Docker is built, how you can customize it and finally go through some real life examples of how containers can help with your dev and ops strategy. Prerequisite is an Azure subscription that allows you to consume paid services as we will be using an Azure VM during the workshop

Windows Docker Container

Container sind aktuell in aller Munde. Aber warum und wie funktioniert das? In dieser Session werden die Vorteile für Dev und Ops konzeptionell erklärt und anhand einfacher praktischer Beispiele vorgestellt. Vom Starten vordefinierter Lösungen über die "Containerisierung" bestehender Applikationen bis zur Orchestrierung von Multi-Container-Umgebungen werden die Grundlagen containerbasierter Umgebungen vorgestellt.

Make the most out of Business Central on Docker

The Docker images for Business Central are around for quite some time now and heavily used by a lot of people. But what are the most common scenarios and how can you implement them best? This session will cover:

- Provide containers for local usage on a laptop
- Set up a centralized self-service environment
- Use containers in your CI/CD strategy from local development to production ready packages
- Adjust the container images so that they work as you need them - from custom scripts to custom images

Tobias Fenster

Managing Partner at 4PS Germany, Microsoft RD & dual Microsoft MVP, Docker Captain

Ulm, Germany