Josh Studt

Staff Backend Engineer

About

I'm a .NET backend engineer in Raleigh, NC. I have been building and integrating RESTful APIs in the .NET ecosystem since 2015, and have experience with CI/CD through Azure DevOps, and containers with Docker in Kubernetes. I have cloud experience with both AWS & Azure, and have automated the provisioning of cloud infrastructure to each with the use of the infrastructure-as-code tool, Pulumi. I'm also a member of Pulumi's community champion program called the Puluminaries, having made a handful of contributions to the tool on github.

Currently at Underdog Fantasy I'm helping architect and build out the API and micro-service backend for our new Sportsbetting product.

Projects

Pulumi

My most recent contribution of note was for Pulumi, which is an infrastructure-as-code tool that enables you to write IAC in your language of choice. Historically you needed to invoke their Pulumi CLI in order to execute the tool and provision cloud infrastructure, but they recently introduced their Automation API that enables you to invoke the tool programmatically. I wrote the initial implementation of the Automation API for .NET, which can be seen here and was introduced in this blog post.

DuoSecuity.Auth.Http

I've built and maintain DuoSecurity.Auth.Http, which is a wrapper for the .NET HttpClient that provides a simple interface for integrating with Duo Security's Auth API making it very easy to add two-factor authentication to your application, and is available on NuGet.

EntityFramework.Core

I've also made a contribution to Entity Framework adding the initial implementation of Change-tracking proxies that are detailed here that debuted with EF Core 5.0. This involves enabling the proxy generation to also generate implementations for .NET's INotifyPropertyChanging & INotifyPropertyChanged interfaces.