Video Processing Software Engineer Resume
Phoenix, AZ
TECHNICAL SKILLS
3D Graphics and Animations: Expert at Blender3D, modeling, textures, custom shaders. Artist’s eye for design, composition, fine art. Motion graphics for video titles. Mo cap, IK and other animation technologies.
Libraries, Tookits & Frameworks: React, Vue, Three.js, Qt5, gtk+, OpenGL, Vulkan, Godot, Ogre3D and Unity3D game engines, OpenCV, OpenCL, PCL, VTK, Paraview, Numpy, Scipy, Tensorflow, Caffe, GEGL, gstreamer, more...
Programming Languages: Javascript, Typescript, C++, Rust, Crystal, Ruby, Python, Julia, more...
Platforms: Linux, Android, Windows, Raspberry Pi, Nvidia Jetson TX2.
Web: HTML5, CSS3, Javascript, Typescript, WebGL, ThreeJS, D3, glTF, REST, SoundJS, Vue, more...
Software engineering tools: Git and Github, Subversion, Mercurial, CMake, Meson, Geany, Atom, Eclipse, Visual Studio, Jira, Valgrind, browser dev tools, debuggers, many more...
Imaging and Photography: Custom algorithms for image enhancement, procedural textures, color spaces and geometric calibration, pano stitching, super - res algorithms. Principles of photography including focal depth, relation of ISO, f-stop, shutter speed, exposure and noise.
PROFESSIONAL EXPERIENCE
Video Processing Software Engineer
Confidential, Phoenix, AZ
Responsibilities:
- Development and testing of video stabilization algorithms, parsing Asterix CAT-48 radar data, other maintenance and integration on the company’s main software product written in C#/.net.
Controls Software Engineer
Confidential, Wilsonville, OR
Responsibilities:
- Developed geometry, analysis and 3D rendering algorithms for converting 2D laser line scans into 3D point clouds. C#/.NET, some Python. Blender animation to generate synthetic test data. E valuated libraries for point cloud and 3D such as OpenTK, SharpGL, OpenCV.
Embedded Software Engineer
Confidential, Wilsonville, OR
Responsibilities:
- Wrote motor controller drivers to DSP code for high reliability H-bridge chips. (I've heard the effort paid off well - customer returns dropped dramatically.)
- Incorporated thermistors into embedded systems. QML-based GUI design.
- Debugging FPGA video processing using Xilinx Vivado. Constructed real time video Gstreamer pipelines for new product development.
- Documentation, reports as text, Word, and HTML pages.
Graphics Performance Developer
Confidential, Hillsboro, OR
Responsibilities:
- Porting Graphics Performance Analyzer to run on OSX Metal API. The GPA intercepts API calls to OpenGL, Direct3D, Vulkan or Metal to measure and display real-time memory and API usage, frames per second, etc. Team followed a Kanban approach to managing daily work.
Software Engineer
OGSystems, Portland, OR
Responsibilities:
- Research and validate algorithms for 3D reconstruction of terrain from aerial photos.
- Optimize image processing, feature point detectors and descriptors, SLAM, bundle adjustment.
- Define lens distortion models.
- Georeferencing to standard coordinate systems.
- Color calibration with MacBeth Color Checker, Arri LoCaster. Dissect in-house software to create commercial product.
Software Developer
Confidential, Carlsbad, CA
Responsibilities:
- Creating proprietary algorithms for image analysis, object identification, computer vision in microscopy applications, using C++, C#.
- Developed custom GUI controls in C#/WinForms.
Characterization Engineer
Confidential, San Diego
Responsibilities:
- Setup, perform experiments to test performance of air-in-line sensor in prototype infusion pumps.
- Python, Numpy, Matplotlib to analyze data. Uncovered subtle flaw in microstepping code.
GUI and 3D Display Engineer
Confidential, San Diego
Responsibilities:
- Design GUI for small-screen surgical equipment. Convert 2D ultrasonic vascular images to 3D model for interactive display, on Window and Linux using Qt5, custom in-house controls, QML, PyQt .
Mobile Test Automation Engineer
Confidential, San Diego
Responsibilities:
- Automation of Android multimedia testing using Python, Perl, ADB, breakout boards.
- Conversion of inconsistently formatted spreadsheets used by different test groups into common new format. Automation of driver installation, playback of test media files, and recording pass/fail and error codes.
Web Documentation Consultant
Confidential, San Diego
Responsibilities:
- Short contract project to fix unmaintainable navigation menu and search feature of off-line web-based documentation system for logistics clients.
- Wrote new system in Javascript, HTML, CSS designed to be easily modified by non-programmers.
- Thanks to my efforts, our Navy's SPAWAR Command is 0.003% more efficient
Software Engineer
Confidential, San Diego
Responsibilities:
- Created Photoshop CS5 plugin for 64-bit Mac.
- Developed image processing tools.
- Contributed camera mode constraints to 3D camera pointing planning tool for the new Mars rover using Eclipse RCP, Java and OpenGL.
Software Engineer
Confidential, Socorro New Mexico
Responsibilities:
- Maintained CASA software in C++, Python used by radio astronomers using the EVLA and ALMA radio telescope arrays.
Sys Admin / Software Developer
Confidential, Orlando
Responsibilities:
- Supported planetary science group by translating image analysis code from IDL to Python.
- Created plots, 3D graphics and animations from CFD simulations running on a Beowulf Linux cluster.
- Built initial website for Planetary Science Group within the Physics Department.
Image Analyst and Algorithm Developer
Confidential, Boulder
Responsibilities:
- Prepared images for public release. Reworked public website and maintained it until a full-time front end developer was hired.
- Developed algorithms for automated high-performance image processing, calibration, geometry calculations, object tracking.
- Solved difficult calibration problems using IDL, Python, C++, MySQL, and JPL’s NAIF data and software toolkit.
Graphics Software Developer
Confidential, Loveland, Colorado
Responsibilities:
- Developed 3D rendering software for converting satellite data into spectacular cloud-free images of Earth for print and animations.
- Created content for the Omni-Globe projector.
Software Engineer
Confidential, Southfield Mich
Responsibilities:
- Instructor for undergraduate physics and electronics labs at Indiana Univ.
- Worked at 3DLabs on high end 3D graphics cards until Nvidia clobbered us in the marketplace.
- Assistant Director and Prod. Assist. for live pledge drives at WTVS, the PBS station in Detroit.
- Produced stop-action animated TV ad using chroma key, video switcher compositing at Specs
- Installed a 4kW solar photovoltaic system on a Zomeworks tracking mount.