
Finn Larson
Systems architecture and incident learning
Finn covers systems architecture and incident analysis. His articles turn failure modes and operational lessons into practical design and recovery decisions.
Engineering guides
- Escape role explosion in B2B SaaS authorization
Keep roles small and stable, move exceptions into permissions and scoped relationships, and plan migration, testing, and admin UX before custom roles.
- Should a webhook receiver call downstream APIs using the webhook sender identity?
Verify the sender for event provenance, then usually call downstream APIs as your own service identity with separate tenant-scoped authorization.
- Should an enterprise trial become the production organization or create a new one?
Create a new production organization by default; promote a trial only after reviewing ownership, every member's access, and production data readiness.
- How should we evaluate managed identity for a product with short registration traffic spikes?
A practical way to assess managed CIAM for launch-day registration bursts: model starts, submissions, retries, and test limits, then verify vendor guidance.
- What should a user see after logging into an organization they have not joined?
Design a post-login flow for valid users who open an org deep link without membership, keeping authentication separate from org access and denying by default.
- Alternatives to sales-assisted account setup for enterprise SaaS trials
How can enterprise prospects start evaluating a SaaS product before a human provisions their organization? Compare commercial and identity boundaries before migrating.
- Who should be allowed to view a dashboard built from several private datasets?
Decide whether dashboard access should inherit from each source dataset or from a separately approved derived output with its own policy.
- What permissions are required to create a resource inside someone else's project?
Check create permission on the parent project first, then enforce strict rules for the new child’s initial owner, collaborators, and inherited access.
- Separate the control plane only with a stale-state contract
Split control and data planes only after defining versioning, propagation, bootstrap, expiry, rollback, and regional override behavior for stale or missing config.
- Alternatives to operating SuperTokens Core for a serverless product
Compare self-hosted SuperTokens Core, managed SuperTokens, and Ory Network for a serverless application by evaluating service ownership and connection boundaries.
- Prevent Privilege Escalation in SaaS Invite Flows
Prevent invite-based privilege escalation by binding each invite to tenant, recipient, role ceiling, expiry, single-use state, and current delegation authority at acceptance.
- Split form validation across browser, API, and database without losing one contract
Use browser checks for interaction, API checks for authority, and database constraints for durable invariants without pretending one layer can do every job.
- When does a nested schema change in object storage stop being backward-compatible?
A practical framework for deciding when nested schema evolution remains safe across file formats, table metadata, and reader behavior in object storage systems.
- Should missing profile fields prevent account creation or be collected after login?
Usually collect nonessential profile fields after login; block account creation only for security-, legal-, or immediately action-critical data.
- How do we debug full-text relevance failures caused by analyzers rather than scoring math?
A practical playbook for proving whether bad full-text ranking comes from analyzers, field design, or scoring before changing BM25 or boosts.
News
- Kubernetes 1.37 delivers 67 enhancements in the Garhwal release
Kubernetes 1.37 ships 67 enhancements, including a stable storage-version migration API and a broad mix of stable, beta, and alpha changes.
- Filestore adopts Colossus and separates IOPS from capacity
Google Cloud’s Filestore backend update separates performance from capacity, giving teams a new sizing choice for shared NFS storage on GKE.
- Gateway API 1.6 stabilizes portable TCP and UDP routing
Gateway API 1.6 moves TCPRoute and UDPRoute into the stable v1 API and separates future experimental resources into an explicitly different group.
- OpenAI previews GPT-5.6 Sol, Terra, and Luna with new reasoning tiers
The limited API and Codex preview introduces a three-tier model family, max reasoning, ultra multi-agent mode, and layered cyber safeguards.
- Deno 2.9 introduces experimental desktop application packaging
Deno 2.9 adds an experimental desktop command and imports existing package-manager lockfiles, giving teams two distinct migration paths to evaluate.
- Gemini 3.5 Flash gained built-in computer use
Google integrated screen-based browser, mobile and desktop interaction into its main Flash model for custom automation agents.
- Google makes Lightning Engine generally available across managed Spark modes
Lightning Engine reaches both serverless and managed Spark clusters, adding native execution while retaining fallback for unsupported operators.
- Anthropic launches Claude Fable 5 and restricted Mythos 5
The same underlying model ships through separate safeguard envelopes, with Fable generally available and Mythos limited to trusted defenders.
- Azure Boost previews Guest RDMA in UK South
Guest VMs can use RDMA through Azure Boost for low-latency, high-throughput communication, beginning with preview availability in UK South.
- GitHub schedules SHA-1 TLS shutdown for September 15
GitHub’s HTTPS endpoints will stop accepting SHA-1-based TLS connections after a July brownout, giving legacy clients a defined migration deadline.
- Research and Engineering Studio 2026.03 expands desktop administration
The RES update adds filesystem and session controls, giving research platform operators more direct ways to recover and configure virtual desktops.
- Google announces GKE DRA availability and contributes its TPU driver
Google’s March announcement brings Dynamic Resource Allocation to GKE and contributes a TPU driver, expanding how workloads describe hardware needs.
- Safari 26.4 adds Grid Lanes, WebTransport, and Keyboard Lock
Safari 26.4 delivers 44 web features and 191 fixes, including masonry-style Grid Lanes, HTTP/3 WebTransport, and fullscreen keyboard control.
- GitHub Actions Runner Controller 0.14.0 adds multilabel scale sets
ARC 0.14.0 lets Kubernetes runner fleets express several scheduling attributes on one scale set and exposes a reusable service client.
- DuckDB 1.5 adds VARIANT and makes GEOMETRY a core type
DuckDB 1.5 expands semi-structured and spatial data support, while a date_trunc return-type change gives existing pipelines a concrete upgrade check.