# Engineering Insights & Founder Thinking

How we build products, where we see vertical SaaS opportunities, and what we've learned shipping real software for niche industries.

## Founder Notes

**How OpsFlow Went From a Conversation to a Live SaaS in 4 School Districts**  
It started with a relationship, a real pain point, and a problem no existing software solved well. Here's the full origin story.  
[Read More](/content/blog/opsflow-origin-story/index.html)

## Vertical SaaS

**How to Find a Vertical SaaS Opportunity Worth Building**  
The best vertical SaaS products come from insiders who've lived the problem. Here's a framework for identifying the gaps worth solving.  
[Read More](/content/blog/how-to-find-a-vertical-saas-opportunity/index.html)

## Engineering

**Why We Build in Blazor + .NET Instead of React for Enterprise SaaS**  
React gets all the press, but for multi-tenant enterprise apps with complex permissions and real-time requirements, our stack is hard to beat. Here's why.  
[Read More](/content/blog/why-we-build-blazor-dotnet-for-enterprise-saas/index.html)

## AI Integration

**The Right Way to Think About AI in Your Product (Most Teams Get This Wrong)**  
AI is not a feature — it's an amplifier. Here's how we think about where it actually belongs in a product vs where it becomes a liability.  
[Read More](/content/blog/right-way-to-think-about-ai-in-your-product/index.html)

## Product Strategy

**What a Good MVP Actually Is (And What It's Definitely Not)**  
An MVP is not a half-built product. It's the smallest system that can prove your business model. Getting this wrong is the most expensive mistake in early-stage product development.  
[Read More](/content/blog/what-a-good-mvp-actually-is/index.html)

## Founder Notes

**Building While Employed: How to Validate a Software Idea Without Burning Bridges**  
Most founders have a day job when the idea hits. Here's how to run a disciplined validation process — and know when it's time to go all in.  
[Read More](/content/blog/building-while-employed/index.html)
