I build tools and workflows for people who make games. I'm an Expert Software Engineer at Infinity Ward in Los Angeles, where I've worked on Call of Duty since 2018, and I've been building game-development tools for more than 11 years. I'm passionate about making game developers more productive.
Most of what I build is used by other developers: VFX artists authoring effects, engineers waiting on builds, developers looking for the one page of documentation that answers their question. What I enjoy most is taking complex production pain points and turning them into workflows that engineers and artists can rely on. I work mostly in C++ and Python.
Career
- Infinity Ward, Los Angeles, 2018 to now. Tools Engineer (2018 to 2022), Senior Tools Engineer (2022 to 2026), Expert Software Engineer (2026 to now).
- Wargaming, St. Petersburg, 2015 to 2018. Tools Programmer (2015 to 2017), then Lead Tools Programmer (2017 to 2018). Led the studio-wide move from SVN to Git, and moved core studio tools from MFC to Qt.
- Nokia R&D, St. Petersburg, 2013 to 2015. Engineer on a large C++ LTE simulation project, before I moved into games.
Shipped titles: Call of Duty: Modern Warfare, Warzone, Modern Warfare II, Modern Warfare III, Black Ops 6, and Black Ops 7 at Infinity Ward; World of Warships at Wargaming.
Outside work
I've written the GDC Toolsmith Guides since 2018, and I created and maintain The Toolsmiths Codex, a reference on game tools development. The notes in the Toolshed are where I keep learning in public.
Outside of my production work, I've run CGPython, a YouTube channel focused on Python for artists, since 2021. I create practical tutorials that help artists write their first Blender Python scripts and become more comfortable automating their workflows. Over the years, the channel has helped thousands of artists get started with Python in Blender.
Opinions on this site are my own and do not represent my past or present employers.
