Skip to content


I’m a software engineer by day, and a graphics artist by night.  I love all things that light up, and the technical challenges that go along with that. 

My focus: live visuals (GLSL), audio reactivity, projection mapping, LED mapping + installations, stage lighting, pre-programmed lightshows.  Recent work can be found here.

I’m based out of the San Francisco bay area, and am available for any of these kinds of projects:

  • VJ gigs to accompany a DJ set
  • Projection mapping
  • LED installations
  • Basic stage lighting

Software used:

  • Madmapper for mapping, lighting control, and generative visuals
  • Touchdesigner, for processing texture streams from Madmapper (ex. bloom, glitch, feedback)
  • Ableton Live for beat detection, and pre-programmed lightshow scripting
  • TouchOSC, for building control interfaces
  • LoopMIDI, for routing MIDI clock data to Madmapper
  • Bome MIDI Translator, for aggregating signals from MIDI controllers
  • OBS, for livestreams & recording
  • Fusion 360, for 3d modeling (used for 3D-printed structures)
  • Affinity Designer, for traditional graphic design

I’m currently learning:

  • TouchDesigner, for more intricate generative visuals & for interactive projects
  • Unreal Engine 5, for previsualization and for more interesting 3D lighting
  • Blender, for procedurally-generated 3D animation (to use in Unreal)

Gear available:

  • 2 Panasonic EZ-EZ770Z projectors (6500 lumens) with standard + ultra zoom lenses
  • 3 Optoma HZ39HDR standard-throw laser projectors (4000 lumens)
  • 2 Optoma ZH450 long-throw laser projectors (4000 lumens)
  • 1 Optoma GT1090HDR short-throw laser projector (4200 lumens)
  • 64 Garagecube LED bars, 0.5m RGB
  • 32 Garagecube LED bars, 0.25m RGB
  • 2 Blizzard Lighting Pixellicious LED panels
  • 2 Blizzard Wink RGBA moving heads (DMX)
  • 6 Blizzard Lighting Max L Strobes (DMX)
  • 8 Chauvet Freedom Part Tri-6 (DMX uplights)
  • 2 Chauvet Slimpar Pro H RGBA+UV wash lights (DMX)
  • 1 Blizzard Lighting Mesmerizor (DMX laser)
  • 1 Chauvet Hurricane Haze 1DX machine (DMX)
  • 2 QSC K8.2 PA speakers (2000w)
  • 1 RCF Sub 702-AS II (subwoofer, 2000w)
  • Portable truss system (triangle truss, 15-foot span, 10 ft max height)
  • *Countless* tripods, lighting stands, & projector mounts