Lead Developer and Lead Graphics Architect of the Poser product line for 3D Character Art and Animation as part of the Smith Micro Graphics division. Position included occasional travel to Braga, Portugal, and working through telepresence in Braga, Belgrade, and Alisa Viejo, CA.
Lead of the “Poser” and “Poser Pro” products, managing and extending a tremendously complicated multi-platform 30-year-old C++ source code in Visual Studio versions 2013, 2015, 2017, and xCode 6.4 (MacOS), leveraging both SVN and git, for a graphical desktop application wrangling 100+ third-party libraries as part of a multi-product suite including multiple add-ons, including a bridge via the GoZ SDK (ZBrush); UI development using XML and wxWidgets, including custom widgets, end-user-facing UI views and graphics libraries; maintained a Python exposed C++ API and monolithic SDK.
Main contributions included the development of a 3D paths system for controlling the animation of objects and an extensive set of visual particle effects. Consulting on 3D content like human figure designs, marketing, tutorials, and documentation.
JIRA with Support and QE teams based remotely in Virginia and Serbia. Initiator of efforts to move 1000 Adobe InDesign pages of documentation to a Confluence Wiki, including vetting of plugins.
Build automation scripting using Jenkins, Ant, msbuild. As Lead Graphics Architect, responsible for the creation of class block diagrams, user workflows, analysis
of existing systems, and thousands of bug reports. Customer-facing representative on user forums.
Secondary project “Redux” involved explorations into Qt5 and OpenGL (with GLSL) in C++ initially constructed using Qt Creator 4.8.0 and eventually the Qt Plugin for Visual Studio. Lead architecture of an entirely new version of the application based on the proprietary NVIDIA GameWorks SDK to bring modern sensibilities to an aging product line. Designed extensions system enabled by the JSON format for describing UIs, widgets, and lead developer and documenter of a C++ / Javascript bridging API for third-party authoring of extensions that control and manipulate 3D objects, data structures, and internal application automation.