Munir Hassan · Lead Engineer · Australia
Designing systems that last, and teams that can own them.
Engineering field notes on distributed systems and platform architecture, lessons from leading engineers, and what I'm reading. Written from over a decade of modernising enterprise platforms in complex, regulated environments.
- Distributed systems
- Platform architecture
- AI-assisted engineering
- Engineering leadership
What I write about
Production problems and how they were fixed, architecture decisions, and experiments with AI in the engineering workflow.
17 posts →From a lead engineerLeadershipDecisions, trade-offs and team questions that come with leading engineers: testing strategy, delivery flow, technical direction, and bringing AI into how a team works.
4 posts →Worth your timeReadingLonger reviews of the books and articles worth your time, including where I disagree.
2 posts · 6 notes →Latest
AI · 19 Oct 2026 · 8 min read
Human-in-the-loop is not a security boundary
Two AI agents deleted production databases. Neither was stopped by its instructions. Approval improves an agent's decisions; it doesn't limit what the agent can do. Why agent safety is a permissions and architecture problem first, how to size the risk of an action, and what humans are actually for.
Read article →Topics
All topics and tags →All writing
2026
- Human-in-the-loop is not a security boundaryAI8 min read
- Tech debt snowballs, then it avalanchesLeadership5 min read
- Deep Work, read as a lead engineerLeadership3 min read
- Don't build business logic on an expiry notificationArchitecture4 min read
- Last write wins, and the customer losesArchitecture3 min read
- Release risk usually isn't in the codeDelivery3 min read
- Being right is not the jobLeadership2 min read
- Moving my blog off WordPress with an AI agent: what I delegated, and what I didn'tAI4 min read
2023
2021
- PowerShell scripts to get Sitecore User informationSitecore1 min read
- Email dispatch issue in Sitecore EXMEXM2 min read
- Dialogflow Custom Payload for Facebook MessengerDialogflow1 min read
- On Sitecore item publish, update a single record in the indexSitecore1 min read
- Send alert when Sitecore running jobs get stuckSitecore2 min read
- Programmatically resume paused emails in Sitecore EXMSitecore1 min read
- A common Sitecore 9 Experience Profile errorSitecore1 min read
- Remove Sitecore users in bulkSitecore1 min read
- Filter users by domain in Sitecore User ManagerSitecore1 min read
- Dependency Inversion Principle and the Dependency Injection PatternCommon4 min read
- Unsubscribe email in Sitecore EXMSitecore2 min read