# Shane Hobson > Software engineer with a decade of experience building applications for the > web, spanning frontend, backend, and cloud infrastructure. Formerly a > litigation and trial attorney, and still licensed. This is his portfolio and > his writing on software engineering. Every link below is Markdown, not HTML: the same content the pages carry, without the layout around it. The HTML page for any article is the same URL with the trailing `.md` dropped and a slash added — https://shanehobson.me/blog//. ## Portfolio - [Shane Hobson - Software Engineer](https://shanehobson.me/index.md): The homepage as Markdown - the biography, the certificates and the core stack, the writing, and every project with the technology behind it. ## Writing - [Shane Hobson Software Engineering Blog](https://shanehobson.me/blog/): Index of all articles, newest first. - [A Software Engineer’s Guide to Large Language Models](https://shanehobson.me/blog/a-software-engineers-guide-to-large-language-models.md): How a large language model actually works, end to end: tokenizer, embeddings, transformer blocks, attention, the LM head, and how sampling picks a token. - [How React Renders Components: A Deep Dive into Fiber](https://shanehobson.me/blog/how-react-renders-components-a-deep-dive-into-fiber.md): How React turns JSX into DOM: elements, the Fiber tree, the interruptible work loop, reconciliation, the commit phase, and how lanes prioritise updates. - [How Angular Renders Components: A Deep Dive Into Ivy](https://shanehobson.me/blog/angular-rendering-under-the-hood.md): How Angular’s Ivy compiles a component into a template function, builds the TView and LView, renders the first pass, and updates the DOM on later ones. - [You Don’t Need a Framework for Everything](https://shanehobson.me/blog/you-dont-need-a-framework-for-everything.md): Why I dropped Astro for a static site generator of my own: per-tenant rebuilds, no hydration to pay for, and a framework solving problems I didn’t have. - [3 Lessons Learned from Building a Production App Powered by AI](https://shanehobson.me/blog/3-lessons-learned-from-building-a-production-app-powered-by-ai.md): Three lessons from shipping an AI travel planner: streaming NDJSON with structured tool calls, iterating hard on prompts, and usage tiers that cap cost. ## Optional - [Everything, in one file](https://shanehobson.me/llms-full.txt): The homepage and the full text of every article concatenated. Skip it if the pages above are enough. - [RSS feed](https://shanehobson.me/blog/feed.xml): New articles.