This page displays exemplars of my work.

Note
Any of this content may have been modified or deleted since being recorded here.

Field Engineering Assets

As a Field Engineer at Materialize, I help folks find success using Materialize, a Postgres-compatible operational data warehouse that incrementally materializes and serves even the most complex joins and aggregations, always up-to-date. Here are a couple of assets to highlight:

  • I wrote When to Use Indexes and Materialized Views, which is the first and most highly emphasized resource we share with all new users. Sharing this post prevents a common scenario where users would query Materialize without indexes and leave with a bad impression about the product. This post has helped numerous customers find success with Materialize.
  • I wrote the joins section of our optimization documentation, which is critical to minimizing cost for our customers.
  • I wrote the temporal filter documentation to help customers learn how to continuously compute results over recent time windows, saving memory resources and boosting developer productivity.
  • I documented the solution for a common pattern called a rules execution engine.
  • I’ve contributed several GitHub repositories to demo Materialize or help customers with common needs.
    • datagen CLI – This tool has been key to creating demos and helping a few prospects run authentic proof-of-concept workloads without needing to complete complex security reviews first.
    • mz-auction-house – A full stack demo application to illustrate how to use Materialize as a real-time backend for complex alerting. I have since expanded this into one of our official demos, which unfortunately is in a private repository.
    • mz-sqlalchemy-example – A best practice template for integrating Materialize with SQL Alchemy, a Python ORM.
    • dbtmz – A best practice template for integrating Materialize with dbt.
    • fastapi_psycopg3_example – A best practice template for integrating Postgres (and, by protocol compatibility, Materialize) with Python FastAPI webserver framework.
    • nodejs-subscription – A best practice example for creating a Node application backed by Materialize’s real-time SUBSCRIBE functionality.

Outisde of these publicly available assets, I have several custom solutions I’ve built for specific customers as well as demos.

Technical Marketing Assets

As a Technical Marketing Manager at Confluent, I create and review blogs, whitepapers, demos, and videos. Here are a couple of assets to highlight:

Courses

As a Senior Curriculum Developer at Confluent, I have written many courses related distributed systems, databases, and stream processing. I’ll highlight two courses here. Sign up for the free self-paced courses and then check out:

Automate Deployment with Confluent for Kubernetes

Create an Event Streaming App with ksqlDB

GitHub Profiles

Coding Puzzles

While I enjoy solving coding puzzles for fun, I have significant anxiety when doing these coding challenges in interview conditions under time pressure, and as a dad with young kids and a full time job, I can’t grind these out in my free time anymore like I used to in order to prepare for new interviews. I may therefore opt out of such interview questions and direct interviewers to this section of my portfolio instead.

Here are some links to dozens of data structure and algorithm style coding puzzles that I’ve done. I mostly like to do them in Python, but I’m conversant in Java, Go, and Javascript as well. Ask me to explain any of the solutions and I’ll happily get into recursion, depth first search, breadth first search, topological sort, quicksort, mergesort, dynamic programming, regular expressions, hashmaps, arrays, trees, generators, minheaps, queues, stacks, functional programming, object oriented programming, whatever other nerdy things you’d like to talk about.