Understood
This website is using cookies. More details

Intro

I started my career working with Microsoft Enterprise Applications (SharePoint and Dynamics mostly). After some years I transitioned to be an Azure Cloud Architect after working multiple years as a Software Developer and System Architect.

Passionate about serverless technology and software/cloud security topics especially within the Microsoft environment.

Projects

Serverless Blog

For my own purpose I developed a serverless blog engine. The Engine uses Azure Functions to render and display the posts.

You can view the blog here.

I published a Blog post which tells a bit more about this.

  • Azure
  • Serverless
  • .NET Core
  • Azure Service Bus
  • Azure Functions
  • Azure Table Storage
  • Azure Blob Storage
  • Azure CDN

  • Serverless Shoppinglist

    I created a serverless shopping list for my personal use. This shopping list uses Blazor for the web frontend, the backend is built using Azure Functions and API Management. Azure AD B2C was used to provide authentication and identity management.

    Data is stored in Azure Table Storage. Azure Service Bus is used to provide messaging capabilities.

    This project isn't fully serverless (yet) as Blazor web assembly was still in preview at the time of writing. It is currently hosted on Azure Web Apps.

    Screenshot of the UI showing a shopping list with some items
  • Azure
  • Serverless
  • Blazor
  • .NET Core
  • Azure Service Bus
  • Azure Functions
  • Azure SignalR
  • Azure Table Storage
  • Azure AD B2C
  • Azure API Management

  • OCR SharePoint Extension

    Scanned documents have one huge disadvantage ... they can't be indexed by a search engine. If those documents are for example stored in SharePoint you could only search for those using the document name or metadata. But as SharePoint offers also the option to search for document content, this was a highly requested feature at one of my former customer projects.

    Azure Cognitive Services is providing the capabilities to perform optical character recognition. Using this service we created a .NET Rest API and a SharePoint (TypeScript) extension. The SharePoint extension was used to call the API and provide the necessary information for the API (blob link for the document using the SharePoint API).

    After the API gets triggered by selecting a pdf document form a SharePoint document library, the document was separated into multiple images and set to Azure Cognitive Services. The response was then constructed into a new document and uploaded to the SharePoint library.

    Architectur of the Application
  • Azure
  • SharePoint Online
  • .NET Core
  • Azure Cognitive Services
  • Azure Storage
  • TypeScript

  • Dynamics365 Customizing Downloader (Archived)

    I worked quite a long time with Dynamics365/Dynamics CRM. I was always annoyed by how awful the support for source control and bulk downloading of solutions was. The Solution Packager was a great tool, but downloading every solution from the Server and extracting it using the packager on the command line wasn't the easiest way, especially for beginners.

    So I came up with the idea of creating my own Application which downloads and extracts those. In the end, I had a WPF application that was able to download, extract and upload solutions from Dynamics CRM.

    Dynamics365-Customizing-Downloader UI Screenshot

    As I am not working anymore with Dynamics, I do not have the time nor the resources to develop this further. So I had to abandon this project.

    This project was a huge chance to learn a lot about WPF, delegates and multi-threading/async.

  • Dynamics365
  • WPF
  • Async
  • .NET Framework
  • Serverless

    This website costs far less by running without servers. This is done by consuming #serverless services from Microsoft Azure. Typical website hosting would require a web server. Which costs, depending on scale, maybe 5-10€ each month to run a single website. If you'd see a huge spike in views your server will most likely go down.

    Serverless, on the other hand, scales event-based. Additionally, you do not need to manage any server at all. You'll just provide the code to run (e.g. Azure Functions). While servers need to be up 24/7 to serve potential customer requests, serverless will only run when there is an actual request.

    Regular hosting

    Name Description Costs per month
    Virtual Server Single Linux webserver, about 1-2 Gb RAM 5-10€
    Costs per year 60-120€

    Serverless hosting

    Name Description Costs per month
    Azure Functions Depending on the load, might be even free <0,1€
    Azure Storage Depending on the load and size, might be even free <0,2€
    Content Delivery Network Depending on the load and size, might be even free <0,2€
    Costs per year <4,8€

    Using serverless you can potentially save a lot of money compared with typical hosting.

    Serverless costs visualized