Perry L Miller IV 724-309-7201 [email protected]
Total Page:16
File Type:pdf, Size:1020Kb
Perry L Miller IV 724-309-7201 [email protected] Areas of Interest Computer Graphics as it applies to Computer Aided Design (CAD), Engineering (CAE), Scientific Visualization, and Geographic Information Systems (GIS); Browser-based 3D (WebGL); Software Engineering principles and best practices; Non-Uniform Rational B-Splines (NURBS). Education Iowa State University of Science and Technology, Ames, Iowa. Doctor of Philosophy, Mechanical Engineering, December 2000. Thesis: Blade geometry description using B-Splines and general surfaces of revolution. Advisor: Dr. James H. Oliver Iowa State University of Science and Technology, Ames, Iowa. Master of Science, Mechanical Engineering, August 1995. Thesis: Interactive turbomachinery blade modeler. Advisor: Dr. James H. Oliver University of Pittsburgh, Pittsburgh, Pennsylvania Bachelor of Science, Mechanical Engineering, December 1992. Experience ESI Group, Farmington Hills, MI. Senior Software Engineering. Apr 2015 – Present. • Front-end developer specializing in 3D visualization of Computer Aided Design (CAD) and Computer Aided Engineering (CAE) data in the browser using WebGL. • Furthering the development of Ciespace's WebGL-based 3D viewer to enable integration into ESI's products that run in the browser or on the desktop using Electron (e.g., ESI-Player). • Daily use of WebGL, Node.js, Webpack, React, as well as familiarity with (and occasional use of) React-Native and Redux. • Often use Node.js or C++ to make supporting command-line utilities, most of which convert 3D CAD formats into the viewer's JSON-based model file. Ciespace Corporation, Pittsburgh, PA. Senior Software Engineer. Oct 2011 – Apr 2015. • Developed WebGL-based 3D viewer for Computer Aided Engineering (CAE) product that runs in modern browsers. • Created low-level scene graph library with features common to 3D toolkits, including: ◦ Minimizing graphics state changes when drawing. ◦ Efficient ray-based intersections using a hierarchy of bounding spheres. ◦ Image-based intersections. ◦ View-frustum culling. ◦ Automatic determination of near and far clipping planes. ◦ Arbitrary cutting planes. ◦ Shader management. ◦ Interactive draggers. • Created high-level toolkit for drawing and interacting with: ◦ Hierarchical Computer Aided Design (CAD) models that have been tessellated on our servers. ◦ Volume meshes drawn with the outer surface elements. ◦ Simulation results rendered on the server (i.e., remote visualization) and drawn as a single image. • Worked closely with the developers of the various other components, including: ◦ 2D user interface. ◦ CAD geometry server and mesher. ◦ Remote visualization server. ◦ System-wide architect. NAVTEQ, Chicago, IL. Senior Software Engineer, Research and Emerging Technology. Oct 2008 – Sep 2011. • Part of a team responsible for developing proof-of-concept projects, as well as investigating new technologies and their relevance to the business. • Developed desktop 3D visualization tools using C++, OpenSceneGraph and Qt. • Developed 3D tools for the browser using Papervision 3D, Flex, and Flash. • Developing WebGL-based visualization tools. Fulton High Performance Computing Initiative, Arizona State University, Tempe, AZ. Scientific Visualization Director. Oct 2007 – Sep 2008. • Manager and technical lead of HPCI’s Scientific Visualization team. • Lead developer of Helios (https://sourceforge.net/projects/cadkit/files/Helios/), an open-source, Rich Client Platform (RCP) for 3D graphics based on Qt (http://trolltech.com/) and Open Scene Graph (http://www.openscenegraph.org/). • Provided ASU faculty with Helios-based visualizations, including: ◦ Astrophysical Simulation (FLASH) data for Evan Scannapieco, Assistant Professor, School of Earth and Space Exploration; http://www.vimeo.com/1523202 ◦ Computational Fluid Dynamics (CFD) data from FieldView for Kyle Squire, Professor and Chair, Department of Mechanical and Aerospace Engineering; http://www.vimeo.com/1506816 ◦ OneGeology.org Portal data for Jonathan Fink, Director, Global Institute of Sustainability; http://www.vimeo.com/1029055 ◦ LIDAR data for Ramon Arrowsmith, Associate Professor of Geology • Manage development of Minerva, an open-source, multi-body, 3D, geospatial tiling engine that can load data using WMS, ArcIMS, GeoRSS, PostGIS, GDAL/OGR, and OSSIM; https://sourceforge.net/projects/cadkit/files/Minerva/ • Managed delivery of Phoenix-Mesa Gateway Airport project for Decision Theater using Minerva; http://www.vimeo.com/1450936 • Developed Nimue for the East Valley Water Forum (EVWF) and the Arizona Water Institute (AWI). An open- source, groundwater visualization program based on Open Scene Graph and Qt, Nimue displays MODFLOW output at interactive speeds. Decision Theater at Arizona State University, Tempe, AZ. Assistant Director for Visualization. Apr 2006 – Oct 2007. • Procured ASU funding for the Scientific and Engineering Research Visualization (SERV) initiative to support faculty research. • Provided ASU faculty with desktop and virtual reality visualizations, including: ◦ Weather Research and Forecasting (WRF) data for Alex Mahalov, Professor, Department of Mathematics and Statistics. ◦ Geographic Resources Analysis Support System (GRASS) based model output of land-erosion for Michael Barton, Professor of Anthropology, School of Human Evolution & Social Change. ◦ Center for Health Information & Research (CHIR). ◦ Grand Canyon Colorado River sand-flow simulation for Mark Schmeeckle, Associate Professor, School of Geographical Sciences. • Managed delivery of multi-screen, interactive GIS for several projects, including: ◦ 100 Cities ◦ Scottsdale Unified School District ◦ West Nile Virus D.N. American, Dayton, OH. Project Manager and Lead Engineer. May 2004 – Mar 2006. • Collaborating with Research Scientists at the Materials and Manufacturing Directorate (ML) at Wright-Patterson Air Force Base (WPAFB) under the Computational Tools for Materials Development (CTMD) contract. • Managing day-to-day project requirements and coordination with customer. • Providing guidance and technical oversight for software development. • Working with users of The Immersive Materials Environment (TIME) to add features to existing software as well as develop custom software. • Exploring ways of implementing molecular docking for computational steering. • Developing custom software for visualization of large data sets using Open Scene Graph (www.openscenegraph.org). • Experimenting with various techniques for efficient Direct Volume Rendering (DVR) of serial-sectioned images for maximum exploitation of data. • Developing NURBS enhancements for B-Spline Analysis Method (BSAM) program. • Providing technical insight about Computer Aided Design file formats in order to streamline CAD-to-BSAM data transfer. Virtual Reality Applications Center, Iowa State University of Science and Technology, Ames, IA. Postdoctoral Researcher. Apr 2002 – Apr 2004. Supervisor: Professor Judy Vance. • Developing geometric-model database translation software to support ongoing visualization of Mechanical Computer Aided Design (MCAD) models in virtual reality environments. The extensible architecture supports: ◦ Arbitrary combinations of independent reader and writer modules ◦ Interface-based mechanism to query for features ◦ Translation of EDS’ DirectModel (JT) format to Open Scene Graph (OSG), OpenGL Performer (PFB), Stereo Lithography (STL), and XML. • Maintaining the open-source project CadKit, which contains the translator code. • Exploring techniques for maintaining frame-rate in virtual reality systems. • Collaborating with professors and graduate students regularly to offer advice on visualization technologies and software engineering techniques. Iowa State University of Science and Technology, Ames, IA . Lecturer. Jan 2003 – May 2003. • Instructed freshmen engineering students in ENGR 170, Engineering Graphics and Introductory Design. • Topics included: engineering drafting specifications, design principles, engineering ethics, and SolidWorks. • Coordinated design-projects funded by Engineering Projects in Community Service (EPICS). • Worked with Heartland Area Education Association (AEA) to develop project ideas. Neuralog, Inc., Houston, TX. Software Engineering Consultant. Mar 2001 – Mar 2002. • Developed import capability for proprietary geological markup (cross section) software, NeuraSection. • Used the Component Object Model (COM) interfaces of MJ Systems' LogSleuth. • Created COM interfaces and infrastructure for communication between NeuraSection and the company's well-log scanner driver, Nscan. • Developed software licensing module (based on GLOBEtrotter's FLEXlm). • Coordinated with Sales and Management to develop licensing strategies that maximized product value and minimized software piracy. Modelspace Corporation, Ames, IA. Vice President. Sep 1998 – Dec 2000. • Co-founded this software company to design, develop, and market BladeMaker, a turbomachinery CAD program derived from my research. • Offered consulting services in the areas of geometric modeling, Non-Uniform Rational B-Splines (NURBS), computer graphics, and OpenGL. • Managed responsibilities associated with a startup company, including: ◦ Business model and growth strategy development ◦ Communication with potential customers to identify important features ◦ Contract negotiations ◦ Software architecture and source code authoring ◦ Managing technical writers ◦ Exhibiting at ASME Turbo Expo ◦ Customer technical support ◦ Maintenance of company web page, www.modelspace.com Engineering