At the most basic level, I'm an artist, programmer, and IT engineer, offering services in the areas that those fields intersect. I strive to understand my work at a great depth, which allows for a level of improvisation and adaptation to be extremely efficient while meeting the needs of complex, multidisciplinary projects.
Areas of Focus
VFX Pipeline Development
I build the framework that supports your pipeline, and write the glue that binds it together. I understand the entire pipeline, starting from the camera through to final delivery via VFX and colour vendors, and have the experience as an artist to empathize with their needs and identify pressure points. I can streamline your workflow so you deliver your project faster, cheaper, and with less stressful bumps along the way.
- Knowledge of every step of the typical post-production and VFX pipeline, how they depend upon each other, and how they communicate with each other.
- Experience designing and developing deep integrations with Shotgun, Autodesk Maya, Foundry Nuke, SideFX Houdini, and Adobe Premiere.
- Experience designing and developing task automation triggered by external events (e.g. from Shotgun or Slack) to prepare work products on renderfarms.
- Experience configuring and managing Shotgun installations for film, television, and game projects.
- Experience designing and developing novel pipelines for extreme efficiency in financially constrained environments.
VFX Technical Direction
I solve the deep technical problems that face VFX artists. I understand the technical foundations and nuances of lighting, shading, rendering, and compositing. I have the experience to quickly debug and isolate complex problems, and the skills to develop robust solutions and tools.
- Knowledge and experience developing software to integrate with or extend Pixar Renderman, SideFX Houdini, Autodesk Maya, Adobe After Effects, and Foundry Nuke.
- Knowledge and experience developing varied shaders for Pixar RenderMan (RSL and C++), SideFX Houdini (mantra), and OpenGL.
- Understanding of many of the algorithms and technology behind the entire lighting/shading/rendering pipeline, both offline (e.g. raytracing and rasterization) and realtime (e.g. the OpenGL pipeline).
I create the environments, characters, and effects that are either impractical or simply impossible to shoot on camera. With a focus on photo realism, a highly technical toolbox, and a keen eye, I can help realize your imagination into film.
- Experience with creative texturing, surfacing, lighting, FX, rendering, matte painting, and compositing.
- Experience with technical modelling, rigging, animating, lighting, FX, rendering, and compositing.
- Experience with Autodesk Maya, SideFX Houdini, Pixar Renderman, Foundry Nuke, Blackmagic Fusion, Adobe After Effects, Pixel Farm PFTrack, Imagineer Systems Mocha, Adobe Photoshop, Maxon Cinema 4D.
- Experience with on-set visual effects coordination.
- Understanding of many technical photographic concepts, encompassing optics, image capture and signal processing.
I program the back-end and design the front-end of the web services that satisfy your and your customer's needs. With experience from the earliest fundamental technologies to the latest buzzwords, I can design, build, and manage your full stack.
- Experience building and maintaining both monolithic and micro-service based web applications.
- Experience provisioning and managing hosts and related infrastructure on various cloud providers (e.g. AWS, Linode, and Digital Ocean).
- Experience with the Flask plugin ecosystem and development.
- Experience with interacting with databases, externals services/APIs, 3rd-party authentication, etc..
I write the bespoke software that you can't buy off the shelf that you need to elevate your business to a new level. Be it GUIs for a user, persistent services, or event based jobs, if you can dream it I can build and support it.
- Experience in software design from one-off scripts to complex heterogeneous systems.
- Knowledge and experience in the theory and practice of software development covering many realms, from interpreted languages all the way to the bare metal.
- Proficient and steadfast in best development practices including version control, automated testing, and thorough documentation.
- Knowledge and experience with Python, the inner workings of the CPython implementation, writing extension modules with Cython or directly in C, and embedding CPython into other applications.
- Skilled in the art of reverse engineering existing protocols and formats.
- Knowledge and experience with varied cryptographic primitives and open source cryptographic protocols (e.g., oath, oauth, HTTP authentication, GPG, TLS, SSH, etc.).
I build, manage, and pro-actively monitor the infrastructure that your business runs on. From network and power systems to the persistent services that power your business, I keep your systems running smoothly and confidently.
- Experience building and managing fleets of Linux-based and macOS servers and workstations.
- Experience designing and building the physical infrastructure for moderate sized machines rooms (e.g. racks, power, cooling, and sound management).
- Experience planning for and executing seamless company moves with no downtime experienced by employees.
- Knowledge and experience with network design and management with a particular eye on security (e.g. the physical layout, VLANs, firewalls, and VPNs).
- Knowledge and experience with key network services (e.g. DNS, DHCP, LDAP, etc..).
- Experience building and maintaining moderate sized file servers (~400TB under active use by 3 editors and 20 VFX artists).
- Experience designing and building file backup and archival systems to provide safety from many avenues of data loss.
- Experience deploying extensive monitoring systems based on graphite, grafana, graylog, and nagios.
- Experience deploying and integrating many common dev-ops practises (e.g. version control, automated testing, and software release systems).
- Skilled at media recovery, including manually digging through corrupt file systems.
I design and implement your ML/AI pipeline, enabling your data analysts and data scientists to drive your business to make data driven decisions quickly and easily. From ETL, through training, prediction, and reporting, I help you mine your data big and small.
- Knowledge and experience designing neural networks for solving image-based problems.
- Knowledge and experience designing natural language processing pipelines.
- Experience designing and building training data generation/expansion frameworks for creation of massive amounts of unique training data.
- Experience embedding TensorFlow into user applications via C API for applying previously trained models.
- Knowledge of the underlying math behind a variety of ML/AI primitives.
- Experience with data ingest and cleaning from a variety of structured and unstructured sources.
I manage projects with complex dependencies and diverse stakeholders, while mentoring junior developers to lift up the whole team. I'm the interpreter between the technical and creative departments, enabling them to work together at unprecedented levels. All too often, technical and creative skills are prioritized over "soft" ones, but soft skills are the glue that binds everyone together.
- Passion for mentoring developers and artists, and educating my peers in any of my skill bases.
- Experience estimating complex projects spanning multiple departments, and managing those projects with diverse teams.
- Understanding of importance of diversity and inclusion in both the workplace and the work product, and passion for advocating for those goals.
- Skilled in effective communication targeted for the given audience and purpose.
- Able to say "I don't know (yet)".
Right now I am open to part-time, freelance, or consulting work.
If you have a project in mind, or just want to chat about a problem you're facing, please
I'd love to hear from you!
In the meantime, please take a look at some of the past projects I've worked on.