About Me
Table of Contents

- Senior Software Engineer, Terraform Cloud VCS & Git Services — IBM (HashiCorp)
- Founder & lead, HashiCorp Terraform VS Code Extension — 975+ stars, hundreds of thousands of active users
- Co-founder & lead, Puppet VS Code Extension — 10,000+ monthly active users
- Author, Learning PowerShell DSC (1st & 2nd editions) and contributor to PowerShell Conference Book 2
What I do #
I build and run developer platforms, and I’ve spent most of the last decade doing it twice over: once as an individual contributor on distributed systems, and once as the person responsible for turning a side project into a piece of infrastructure other people depend on.
At HashiCorp I led the Terraform VS Code Extension and its Go-based Language Server from a small team project into a flagship open source release — defining the release cadence, contribution standards, and code review process that let external contributors work alongside the core team without every change routing through me personally. Before that, at Puppet, I did the same thing from an earlier stage: I spotted the opportunity for a VS Code extension, built the first proof of concept, and grew it into a sponsored open source project used by thousands of engineers.
These days I’m back in distributed systems territory, working on the Git integration layer underneath Terraform Cloud. Recent work includes leading a zero-downtime, cross-team migration off an external Git library onto an internal implementation, and performance work that cut README ingestion latency by roughly 30x.
Before that #
I’ve been working with computers in some form for over 15 years. I started in systems administration for a large military installation, then moved into building monitoring software and automating large-scale Windows environments for a managed services provider — which is also where the PowerShell DSC book came from.
Elsewhere #
I write here about the parts of this work that don’t fit neatly into a changelog: what it actually takes to keep an open source project healthy once it outgrows you, how protocols like LSP and MCP solve the same shape of problem a decade apart, and what I do and don’t trust an AI agent to do on a production migration. You can find more at pogran.dev/talk (conference talks) and github.com/jpogran (code).
I love finding out how things work, taking them apart, and making them work faster.