Recent Posts
- Prompt Engineering Across the OpenAI, Anthropic, and Gemini APIs
- Introducing Prose Writer
- Cursor Rules for Writing Temporal Workflows with TypeScript
- Cursor Rules for TypeScript Engineers
- Using Anthropic's Message Batches API with Temporal
- What If It Goes Wrong?: The Hidden Dangers of Counterfactual Reasoning in AI
- Getting the Most Out of GPT-4.1
- Neural Networks
- A Gentle Introduction to Using a Vector Database
- Setting Up a Python Environment on macOS
- Implementing Obsidian's Callout in Svelte
- Positives, Negatives, and Alternatives to Using Tailwind for a Design System
- Creating a Markdown Preprocessor for Svelte
- Understanding Generics in TypeScript
- A Gentle Introduction to Svelte Stores

Hi, I’m Steve.
I’m a software engineer and educator based in Denver. Previously, I led Front-End Engineering and Developer Tools at Temporal, where I tackled the fascinating challenge of building interfaces for distributed systems—which is just a fancy way of saying “making complex things simple enough that people actually want to use them.”
My work at Temporal centered on building intuitive UIs that helped developers manage workflows across distributed systems. I joined as the founding front-end engineer and built the foundation for their open source and cloud experiences before scaling up the team that handles all of Temporal’s UI, websites, and developer tooling.
Before that, I served as the very first Front-End Architect™ at Twilio and SendGrid. These roles taught me how to build consensus across global teams and lead through influence rather than authority—a skill that turns out to be surprisingly useful when you’re trying to convince people that your approach to front-end architecture is the right one.
I actually started my career in public education. I was NYC public school teacher in high-need schools across Manhattan, Brooklyn, and Queens. I technically had my principal’s license, but I never ended up using it. Today, I’m an instructor at Frontend Masters and founded the Front-End Engineering program at Turing School.
I’ve co-founded DinosaurJS, a JavaScript conference in Denver, spoken at events like JSConf and RailsConf, and authored ”Electron in Action“—though technology moves faster than books, so consider that a historical artifact at this point.
Full Course Walkthroughs
Recordings
I am lucky enough to teach a bunch of courses with my friends at Frontend Masters. We've been working together since 2016. Before I was a teacher, I was a customer back when I was learning the ropes. I can't recommend them highly enough. You can find the most up-to-date list here.
React and TypeScript, v3
Learn to build robust React apps with TypeScript by typing hooks, reducers, and component APIs for safer, more maintainable code.
React Performance, v2
Profile and optimize React apps with modern tools and patterns to reduce re-renders, speed up interactions, and improve perceived performance.
Cursor & Claude Code: Professional AI Setup
Build a practical AI-assisted developer workflow with Cursor and Claude Code, from quick edits to larger delegated implementation tasks.
Open Source AI with Python & Hugging Face
Learn hands-on AI development with Python and Hugging Face, including image generation, fine-tuning, and model pipelines.
Tailwind CSS 4+
Master Tailwind CSS 4 with utility-first styling, design tokens, responsive layouts, and maintainable patterns for modern UI development.
Fullstack TypeScript, v2 (feat. Zod)
Learn fullstack TypeScript across frontend and backend, including API design, schema validation with Zod, and shared type-safe contracts.
Become a VS Code Power User
Boost your productivity with advanced VS Code workflows, debugging tools, customizations, and features that speed up daily development.
Testing Fundamentals
Build confidence in your codebase with practical testing techniques, including assertions, mocks, integration tests, and testing strategy.
Web Security, v2
Learn modern web security fundamentals including authentication, authorization, common vulnerabilities, and practical mitigation techniques.
Design Systems with Storybook, v2
Learn to create scalable design systems with Storybook. Build reusable UI components, test components, implement dark mode, and generate comprehensive documentation.
Figma for Developers, v2
Learn to use Figma's developer-friendly features like constraints, auto layout, component properties and CSS generation to efficiently build and translate designs to code.
Vite
Master Vite, the modern build tool for faster and leaner web development. Learn to integrate with React, optimize assets, and extend with plugins.
Get Kids into Coding with Scratch
Explore the essence of Scratch programming. Delve into game mechanics, craft interactive stories, and grasp computer science fundamentals. This course inspires fun projects tailored for young learners.
Hardware with Arduino & JavaScript
Tie the physical and digital worlds together, and see what's possible with hardware and JavaScript! Craft circuits, wire up LEDs, buttons, and sensors, and leverage sensors to change browser actions based on real-world data, all with web-based technologies.
Electron, v3
Use Electron to build native, cross-platform desktop applications using web technologies (e.g. HTML, CSS, and JavaScript). Learn inter-process communication, UI customization, native features, and performance optimization.
Enterprise UI Development: Testing & Code Quality
Ideal for lead UI developers: learn unit testing, continuous integration, accessibility testing, mocking, and coding standards enforcement. Guide your team toward coding scalability!
Advanced Redux with Redux Toolkit
Write more performant and maintainable Redux at scale. In this course, you'll use Redux Toolkit to simplify reducer logic and actions, use TypeScript with Redux, add tests, and use RTK Query to fetch data in real-world projects.
Testing Web Apps with Cypress
Cypress is the fastest and easiest way to write end-to-end tests for your client-side applications. Learn the selector engine, test runners, assertion library, and write your own custom commands.
AWS For Front-End Engineers, v2
Build an enterprise-grade deployment infrastructure on AWS using S3, Route 53, CloudFront, lambda@edge, and more!
Rx.js Fundamentals
Master the basics of Rx.js by creating an observable from scratch, manipulate data arriving over time with Rx.js operators.
Redux Fundamentals (feat. React)
Learn the Redux API from scratch, then learn to hook the Redux React application. You'll also learn how to extend Redux with various tools from its ecosystem.
Building Your Own Programming Language
Learn language building techniques: Lexing, Parsing, Tokenization, Traversing Abstract Syntax Trees, and Transpiling to JavaScript and make your own language now!
State Management with Redux & MobX
Learn about structuring your data with front-end architect Steve Kinny. Start the "State Management with Redux & MobX" course today!
JavaScript Performance
Write more efficient JavaScript, optimize rendering performance, load assets faster with a CDN, split loading resources with Webpack, and more!