Things I've talked about
Conference talks, meetup presentations, and workshops on system design, engineering leadership, and the lessons I've picked up shipping software for 15+ years.
All talks
Every conference talk, workshop, and presentation I've given -- from small meetups to large stages.
Do You Believe in Magic? Time to Move to Remix.
Presented Remix to the Melbourne JavaScript community. Showed why Remix's approach to web fundamentals -- progressive enhancement, server-side renderi...
How to be an effective software engineering leader
Talked about what effective engineering leadership actually looks like day-to-day. Not the theory -- the practical stuff: how to run 1:1s, how to give...
How to Learn - How to Teach
Explored the connection between learning and teaching. The best way to learn something deeply is to teach it. Covered techniques for breaking down com...
Software Architecture Patterns
Walked through the major software architecture patterns -- monolith, microservices, event-driven, serverless -- and when each one actually makes sense...
How as an engineer, be more effective in meetings
Most engineers hate meetings because most meetings are poorly run. This talk covered how to prepare, when to speak up, how to drive decisions, and whe...
Culture of Remote Working
Shared lessons on building engineering culture in a remote-first environment. Communication, trust, async workflows, and why the best remote teams wri...
Introduction to Software Engineering
An introductory talk on software engineering for Afghan girls interested in tech. Covered what software engineering is, what a career in tech looks li...
Get to know Developers for Designers
A talk for designers about how developers think. What makes code easy or hard to build, why developers push back on certain designs, and how to collab...
MicroFrontEnd at Scale
Shared real-world lessons from running microfrontends in production across multiple teams. Covered the architecture decisions, the dependency manageme...
Serverless and How to develop with Kinesis AWS
Walked through serverless architecture and real-time data processing with AWS Kinesis. Covered the benefits of going serverless, the operational trade...
Progressive Web App
Covered what Progressive Web Apps are and why they matter -- offline support, push notifications, installability -- and walked through how to build on...
ElasticSearch
Deep dive into Elasticsearch -- how it works under the hood, how to index and query data effectively, and common mistakes that kill performance. Searc...
NodeJs Frameworks
Compared the major Node.js frameworks -- Express, Koa, Hapi, and others -- covering their strengths, trade-offs, and where each one fits best. No fram...
Software Architecture
Talked about software architecture fundamentals -- how to think about system design, how to make decisions that age well, and how to communicate archi...
GraphQL vs Rest
Compared GraphQL and REST APIs -- the developer experience, the performance implications, the tooling, and the real-world trade-offs. GraphQL solves t...
My experience of using Angular 2
Shared my hands-on experience migrating to Angular 2. Covered what worked, what didn't, and the lessons learned from adopting a framework that was a c...
Design Patterns and Domain-Driven Design
Introduced design patterns and domain-driven design to the engineering team. Covered when patterns help, when they add unnecessary complexity, and how...
Scrum and Agile
Introduced Scrum and Agile principles to the team. Focused on the practical side: sprint planning, standups that don't waste time, retrospectives that...