résumé

Tom Jakubowski

I am an experienced generalist software engineer and a lifelong tinkerer, always looking for ways to find joy in my work. I am a past contributor to the Rust programming language project, and have used Rust since 2014 at work and in my own personal projects.

selected skills

work experience

Software Engineer, The Prospective Company (2023–2026)

At Prospective, we built a local-first BI, dashboarding and visualization platform for the web on top of the open-source Perspective interactive charting library for Javascript and Python.

I built Prospective’s integration with Jupyterlite, a forked version of Jupyter which executes code locally in the browser. I ported perspective-python to run in Pyodide/WASM, a fork of Jupyter which runs entirely in the browser. This required some creative FFI and packaging work in an unusual, non-native platform for Python. The payoff: users who knew Python could interactively create data sources and configure chart viewers in the dashboard from the notebook, and then share their work with others through a published dashboard.

I did some data engineering using DuckDB + DuckLake to build out a query system for exploring and understanding archived timeseries data at rest in S3.

Senior Software Engineer, Second Spectrum (2019–2023)

Second Spectrum teaches computers how to watch sports. On the AI team, I developed a Rust FFI wrapper around C++ computer vision algorithms for use in both Second Spectrum’s next-generation low-latency tracking system and a realtime TV broadcast augmentation engine, featured on live broadcasts by CBS and ESPN. I later learned Elixir to join the Redstone team, an internal web app used to produce live player and ball tracking feeds for customers like the NBA, English Premier League, and Major League Soccer.

Software Engineer, Oblong Industries (2015–2019)

On the Client Solutions team, I developed room-scale interactive applications with data visualizations for the display wall and immersion room systems at IBM’s Watson Executive Briefing Centers, using C++, OpenGL, and g-speak, Oblong’s platform for spatial computing. I maintained libWebThing, a library which rendered web content in our applications using Chromium Embedded Framework.

I authored Node.JS bindings for libPlasma, g-speak’s realtime message passing framework, supporting both internal and customer usage. I developed Node.JS web applications for our customer which used those libPlasma bindings to configure, control, and debug our installed applications.

I also drove the team’s adoption of Rust for developer tools and offline data processing pipelines. I wrote and maintained Rust bindings to libPlasma for fun in my spare time.

Sizzle reel, courtesy of my colleague John Carpenter

Software Engineer, FanMob (2013–2015)

I was the sole engineer in a two person sports polling and advertising seed stage startup. I developed the author-facing web application and reader-facing embedding API, used by high-traffic sites like Bleacher Report.

Web Developer, TuneWiki (2011–2013)

I led the rewrite of TuneWiki’s song lyrics website from Wordpress to Laravel framework. I was also the primary developer of TuneWiki’s #1-ranked Spotify App, which rendered lyrics in sync with music playback.

open source

Rust programming language (contributions from 2014–2020)

I’ve contributed improvements and bug fixes to the Rust programming language project, focusing on rustdoc, Rust’s API documentation generator. Between 2014 and 2015, I landed 27 merged pull requests to the project. Since then, I have contributed a couple more small fixes to the project.

The two biggest features I implemented in rustdoc were support for associated types and trait bounds in where clauses.

Weasel REPL for ClojureScript (repo)

I authored Weasel, a modernized version of ClojureScript’s browser REPL, which uses WebSockets as the foundation of a stabler REPL-driven development experience. Weasel’s architecture also for the first time enabled ClojureScript developers working in exotic JavaScript runtimes (like JavaScriptCore and QtQuick) to connect a REPL to their application.

education

B.S., Chemistry, University of California, Irvine