JGJonathan Gobielweb platform engineer

Writing desk

Notes from shipped software.

Essays and field notes on frontend architecture, performance, and practical AI coding workflows.

agent skills in prompt7 min

Put Agent Skills in the Prompt, or Watch the Model Guess

Learn why prompt-scoped agent skills make AI assistance more reliable, how they compare to unskilled prompting, and how to implement them in your own workflow.

Read
ai productivity workflow developers7 min

I Tracked My AI-Assisted Workflow for 30 Days. Here Is Where It Actually Helped (and Where It Didn't)

A practical breakdown of how developers can use AI to improve coding productivity with concrete workflows, real token savings, and trade-offs that nobody talks about.

Read
improve LCP Next.js5 min

How to Improve LCP in Next.js: A Practical Guide

Improve Largest Contentful Paint (LCP) in Next.js with image optimisation, resource preloading, font strategies, and server rendering techniques.

Read
reduce CLS landing page5 min

How to Reduce CLS on Landing Pages

Fix Cumulative Layout Shift (CLS) on Next.js landing pages — image dimensions, fonts, dynamic content, and skeleton patterns that eliminate unexpected shifts.

Read
indexeddb vs localstorage7 min

IndexedDB Is the Browser Database localStorage Never Was

Learn what IndexedDB is, how it differs from localStorage, when to use it, and how to implement it in a framework-agnostic way.

Read
lazy loading animation Next.js5 min

Lazy Loading Animation Components in Next.js

Learn how to lazy-load Lottie, Framer Motion, and GSAP animation components in Next.js using dynamic imports — with real bundle reduction results.

Read
Next.js performance optimization case study5 min

Next.js Performance Optimization Case Study: 66% Bundle Reduction

Real Next.js performance case study: 66% bundle size reduction, Core Web Vitals improvement, and the exact code changes that achieved it in a production app.

Read
javascript set vs array map vs object3 min

Stop Defaulting to Objects and Arrays: When Set and Map Deliver Cleaner Code and 2x to 10x Lookup Wins

Practical JavaScript guide for choosing Object, Array, Set, and Map by access pattern, with performance trade-offs and migration examples.

Read
optimise INP React5 min

Optimising INP for React Apps: A Practical Guide

Improve Interaction to Next Paint (INP) in React — identify slow event handlers, defer non-critical work, and use scheduler patterns for responsive UIs.

Read
React architecture case study5 min

React Architecture Case Study: Scaling From 2 to 20 Engineers

How we scaled a React codebase from 2 to 20 engineers without rewrites — feature-based modules, shared conventions, and the architectural decisions that held up under pressure.

Read
engineering10 min

Most Apps Do Not Need Redux in 2026. Here Is the State Stack I Would Use Instead

Most apps do not have a state management problem.

Read
rtk ai coding agent token reduction4 min

RTK for AI Coding Agents: How a 10ms Shell Wrapper Cut Token Usage by About 80%

RTK is a Rust shell wrapper for AI coding agents that compresses CLI output before it hits model context windows, reducing token usage and cost.

Read
showSaveFilePicker large file download3 min

Browser File Downloads at Scale: Why showSaveFilePicker Beats Blob URL Hacks for Large Files

Learn when to use showSaveFilePicker for large browser downloads, how streaming writes reduce memory pressure, and how to implement a safe fallback.

Read
stop overusing useEffect react3 min

Stop Overusing useEffect in React: Keep Effects for Synchronization, Not Routine Component Logic

Learn a practical framework for reducing unnecessary useEffect usage in React and improving component predictability, readability, and performance.

Read
web performance checklist6 min

Web Performance Checklist for Product Teams

A complete web performance checklist for product teams covering Core Web Vitals, images, JavaScript, fonts, caching, and monitoring — downloadable and actionable.

Read