Domenic Denicola

Domenic Denicola

I'm a software engineer with a focus on web browser development and web standards. Since 2014, I've worked at Google on the Chrome team to make the web more capable.

You may know me from my work on JavaScript promises and modules, streams and other WHATWG standards, custom elements, or the navigation API. Most recently I've been working on speculative loading for web performance, and built-in AI APIs to expose the browser or OS's AI models to web developers.

Outside of work, I'm passing the time before the singularity hits by exploring Tokyo, where I moved in 2022. I spend a lot of time trying to learn Japanese, as well as keeping up with the latest in AI capabilities and safety research. I also maintain the jsdom open-source project. I occasionally dream of making time to go back to physics research.

Web Standards

  • Reading from Sockets

    Designing JavaScript streams APIs for network sockets, on top of non-blocking syscalls, leads us to the concept of push vs. pull sources.

  • Reading from Files

    Designing JavaScript streams APIs for file I/O leads us to consider bring-your-own-buffer APIs and how to avoid race conditions.

  • Byte Sources: Introduction

    The intro to a short series of posts explaining some design decisions behind the web streams APIs, and how they abstract over underlying I/O interfaces.

View all →

JavaScript & Node.js

View all →