About the Author

Zach Gardner

Zach Gardner is Keyhole Software's Chief Architect with more than a decade of development experience. Zach has led numerous initiatives to modernize technologies and processes with real-world experience as an educator, architect, technical lead, developer, and mentor. He primarily lives in Microsoft Azure, leveraging modern architectural approaches to enable hybrid app modernization that meets business needs at an exceptional cadence. He also mentors new developers and provides architectural input to complement the existing talent of clients.

Batching Excel Files in Azure to Order DME

Batching Excel Files in Azure to Order DME

Zach Gardner Architecture, Articles, Azure, Cloud, Tutorial Leave a Comment

The steps described in this blog post allow for the adding of a Logic App on Azure to append rows to an Excel file. It took a lot of trial, and mostly error, to figure out how to describe what I wanted in the way that the Logic App would understand. Hopefully, the steps that I outlined in this blog post will save others the time it took me to come up with them.

Bridging the Gap: Azure App Insights to On-Prem Elastic Stack

Zach Gardner Articles, Azure, Cloud, Development Technologies & Tools, Tutorial 1 Comment

Recently, while working for a large healthcare client in New York, I ran into an interesting problem that had slim literature on how to solve it.

Our application is primarily on-prem, but it does leverage Azure for a few functions that are easier to solve in a cloud-native environment. We wanted to be able to monitor those functions using the same Elastic Stack that we use to monitor our on-prem application.

I was tasked with building a bridge between where our functionality logs to in Azure (App Insights), and getting that securely back into our Elasticsearch instance that powers our Elastic Stack.

This blog post will detail the solution I landed on. I hope it will be useful to others that need to solve a similar problem!

Genomic Analysis on Microsoft Azure

Genomic Analysis at Scale with Microsoft Azure

Zach Gardner Articles, Azure, Cloud, Programming Leave a Comment

When it comes to the science of genomics, Amazon’s AWS is by far the platform of choice for most organizations. But, just like in the musical Hamilton, Microsoft Azure is “young, scrappy, and hungry.”

It is driven to provide the tools and managed services that are needed to run genomics at scale, with HPC (high-performance computing) and storage being among the hardest facets of the field to get right.

This blog post will first briefly explain genomics. Then, we’ll dive into what Azure has to offer in this field.

Integrating Azure Functions with Cosmos DB SQL API in .NET Core 2.2

Zach Gardner .NET Core, API Development, Articles, Azure, Cloud, Development Technologies & Tools, SQL, Tutorial Leave a Comment

I am working on a project that leverages both Azure Functions as well as Cosmos DB. In trying to get both of these components wired together, I found that there are very few examples that work with the most recent versions of these components. I also saw examples that could work at a small scale, but don’t show industry-standard best practices, and would lead to performance issues if deployed in an environment with any meaningful traffic.

To that end, I put together this blog post showing how to set up an Azure Functions project in .NET Core 2.2 to integrate with Cosmos DB’s SQL API using its native tooling.

Building a Spring Cloud Native Microservice Application on Azure, Part 1

Zach Gardner Articles, Azure, Cloud, Development Technologies & Tools, Java, Microservices Leave a Comment

The big three cloud providers (AWS, Azure, and Google Cloud, in that order) have their various strengths and areas of expertise. Most large organizations though typically pick one cloud provider for their cloud computing needs. This works well if you’re a Java shop that’s on AWS, or a Microsoft shop on Azure. But what if you’re on a large Java project in an organization that wants to use Azure? You’re in luck.

Microsoft Azure has come a long way, and is very supportive of non-Microsoft technologies. The proof though is in the pudding. Which is where this blog post comes in. I take Josh Long’s Bootiful Microservice Services, a great starting point to get a cloud native Spring microservice application up and running, and show how it can be run on Azure.

This first blog post will be all about setting up our basic microservices by walking through the various parts of Josh’s example application, with some best practices and patterns that I’ve found to be effective. Rather than a simplistic ToDo application, we’ll be basing our application off of my favorite bagel shop in New York, Original Bagel Boss in Hicksville, to manage its orders, inventory, etc. If we can run a bagel shop on a Spring application running on Azure, and keep customers happy and full of carbohydrates, then it proves out for applications of a similar size and complexity.

We’ll be staying mostly inside the familiar Java confines, then slowly start working our way out to getting our application deployed to Azure. Then we’ll start introducing additional complexity like Spring Batch jobs, a React front end, etc. A setup this complex will show that Azure is ready for prime time when it comes to running applications in production, even if they are built on non-Microsoft technologies…