Scroll To View More
Nathan Weston, Image Processing Developer in Watertown, MA, United States
Nathan Weston

Image Processing Developer in Watertown, MA, United States

Member since January 24, 2019
Nathan has over 15 years of experience developing applications with a wide range of technologies. He's led the development team for Sapphire, a professional visual effects package, for over five years, during which time the team never missed a deadline. His focus is on system software, high-performance code, and back-end development. He enjoys the flexibility of freelancing and the challenge of taking on a wide range of projects.
Nathan is now available for hire

Portfolio

Experience

  • C++, 15 years
  • Python, 15 years
  • Computer Graphics, 10 years
  • Image Processing, 10 years
  • CUDA, 10 years
  • Qt 5, 5 years
  • Common Lisp (CL), 3 years
  • Flask, 1 year
Watertown, MA, United States

Availability

Part-time

Preferred Environment

Linux, Windows, Git, Emacs

The most amazing...

...thing I've written is a tool for interactively designing realistic lens flare effects, and previewing them in real time.

Employment

  • Software Engineer

    2015 - 2018
    GrammaTech, Inc
    • Worked with a small team to research new techniques for software analysis, automatic program repair, and security hardening.
    • Worked with researchers to build a product based on binary rewriting research.
    • Developed prototypes and performed experiments to validate research ideas.
    • Contributed to presentations and written reports.
    • Created multiple successful prototypes for demonstrations to research sponsors.
    Technologies: C++, Python, Common Lisp
  • Principal Software Engineer

    2005 - 2015
    GenArts, Inc
    • Led the development team for Sapphire Plug-ins, the premiere suite of visual effects plug-ins for film and video post-production.
    • Designed and implemented new effects using cutting-edge image processing algorithms.
    • Maintained the compiler and runtime for an in-house image processing language.
    • Wrote high-performance, multi-threaded and GPU-accelerated code.
    • Continually reviewed and improved development processes.
    • Ensured that algorithms produced identical results on CPU and GPU, across multiple operating systems and plug-in APIs.
    Technologies: CUDA, C++, Qt, Python

Experience

  • GrammaTech IR for Binary Analysis (Development)
    https://github.com/GrammaTech/gtirb

    An intermediate representation of disassembled code, including a C++ API and a language-agnostic data format. The IR allows different disassembly and binary analysis tools to easily interchange data and combine results from different analyses.

    Written in C++17 with an emphasis on modern coding standards and best practices.

  • Sapphire Flare Designer (Other amazing things)
    https://www.youtube.com/watch?v=IdAnVZP8uaE

    A tool for designing realistic lens flare effects. The UI is written in Python and Qt and allows the user to organize and efficiently manipulate dozens of individual elements with many parameters each, to create a vast range of effects.

    The rendering backend uses highly-optimized C++ and CUDA to produce production quality results in real time.

    I was the primary author and architect of the UI and wrote most of the rendering code. The version in the linked video was released in 2019, shortly after I left the company, but is not significantly different from the version I created.

  • Software Evolution Library (Development)
    https://github.com/GrammaTech/sel

    A library for programmatic manipulation of software. Used for research in automatic program repair, program synthesis, and other search-based software engineering techniques.

Skills

  • Languages

    C++, C++11, Python, C++17, Common Lisp (CL), Assembler x86, JavaScript
  • Paradigms

    Object-oriented Programming (OOP), Parallel Programming, Functional Programming
  • Platforms

    CUDA, Linux, Windows, MacOS
  • Other

    Computer Graphics, Image Processing, Compilers, Static Analysis
  • Frameworks

    Flask, Qt 5
  • Libraries/APIs

    Vue.js
  • Storage

    PostgreSQL, SQLite

Education

  • Master of Science degree in Computer Science
    2002 - 2004
    Brown University - Providence, RI
  • Bachelor of Arts degree in Computer Science
    1998 - 2002
    Hamilton College - Clinton, NY
I really like this profile
Share it with others