My Profile Photo

Miroslav Janeski


Miroslav Janeski - EngD | Technical Director | Process Mining Expert | Microsoft MVP (Azure - Application as a Service & .NET)


  1. Mining Your IoT Alarm Workflows with pm4py and OpenTelemetry

    A personal detour — where this started …


  2. How to Use Azure Dev Tunnels with Aspire

    Azure Dev Tunnels let you expose a local port to the internet over a secure tunnel. For Aspire apps, the most useful scenario is one that every developer has encountered: you want a stakeholder or QA tester to access what you’re building before it’s deployed anywhere. …


  3. How to Use the Azure Durable Task Scheduler Emulator in .NET Aspire

    Azure Durable Task Scheduler (DTS) is Microsoft’s managed orchestration backend for Durable Functions — a fully integrated alternative to the classic Azure Storage-based state store. It brings better performance, a built-in dashboard, and a cleaner operational model. …


  4. What Makes Azure App Service Cloud-Native — and What Still Doesn't

    TL;DR …


  5. Microsoft Azure — Leader in the 2025 Gartner Magic Quadrant for Cloud-Native Application Platforms

    Microsoft has been named a Leader in the 2025 Gartner® Magic Quadrant™ for Cloud-Native Application Platforms — for the second year in a row! Even more impressive, Microsoft is positioned furthest to the right for Completeness of Vision. …


  6. Azure Container Apps vs AKS vs Azure Functions: The Best Cloud-Native Choice for .NET Developers

    The most correct answer to the question “Is Azure Container Apps the best cloud-native alternative for .NET developers?” is: It depends! However, that answer doesn’t give any value. So let me elaborate further on my reasoning. …


  7. From Dev to Deployment: Getting .NET Aspire to Azure with Azure Developer CLI (azd)

    .NET Aspire simplifies local development and brings the architecture closer to the development team. These are the main takeaways from my last article. However, we cannot talk about cloud-native applications if we only focus on local development. The main idea behind cloud-native applications is the new perspective on efficient development and moving to production. The main task of the tools in the cloud-native landscape is to make the whole process much easier, simple, and generally efficient. …


  8. Streamlining IoT Development: A Minimalist Approach with .NET Aspire, MQTT, and TimescaleDB

    Local development is a serious challenge when developing distributed systems, especially IoT solutions. The development team often requires end-to-end local development to complete the job. For example, imagine you have to tweak the real-time update on your charts in the web app — you either need an IoT device simulator or plug into the development environment. In both cases, you need the process automated. Otherwise, it will become cumbersome and too expensive. …


  9. Light and Fast: Building Cloud-Native Microservices with Azure Functions and Dapr Extension

    In today’s microservices-driven world, managing communication between services can become complex and cumbersome. Azure Functions, Microsoft’s serverless computing service, offers a powerful way to run event-driven code without worrying about the underlying infrastructure. The serverless concept is not new, and I have already shared a couple of posts regarding its benefits. The inspiration for this post comes from a recent feature released by the Azure Functions team: the Dapr Extension for Azure Functions. …


  10. Reducing Azure Functions Cold Starts: Tips from the Azure Functions Team

    The Azure Functions team has shared key improvements to minimize cold start times for Azure Functions. These updates promise enhanced performance and a better user experience. …