Josh Segall

I'm a Technical Program Manager at Google, where I've spent the past twelve years working across data pipelines, cloud observability, reliability, security, and compliance. The systems I work on operate at global scale and are relied upon by millions of users across thousands of enterprises.

Before Google, I was an Engineering Manager and Tech Lead at General Dynamics, where I shipped seven versions of the Command Post of the Future. It’s distributed visualization and collaboration software running on low-bandwidth, high-latency tactical networks, and it’s a mission-critical system where software correctness is literally a life-and-death issue.

I started my career building enterprise workflow platforms in Java, moving through architecture and engineering management roles, and picked up an MBA from NYU Stern along the way. I studied Computer Science and Physics at Carnegie Mellon.

On the side, I co-founded a game company in the '90s to build a real-time 3D engine, and more recently founded Horse Arms, where I've shipped four games across mobile and PC.

Across all of this (enterprise systems, defense platforms, cloud infrastructure, games) one thing has nagged at me for decades: the way we write concurrent programs feels fundamentally broken. Not just difficult. Wrong. The conventional wisdom about concurrency (shared memory vs. message passing, locks vs. channels, threads vs. actors) is arguing about the wrong question entirely.

These essays explore what's actually broken and what a real fix might look like.

Find me on Bluesky and LinkedIn.

The opinions stated here are my own and not necessarily those of my employer.

Stay in the loop

Get notified when new posts are published. No spam, no tracking, just ideas.