Post Job Free
Sign in

Engineer Software

Location:
Chicago, IL
Posted:
November 20, 2012

Contact this candidate

Resume:

Kenny Smith

Software Engineer, Chicago area

**+ years of experience developing high-quality, commercial software.

BSE '87, University of Michigan, College of Engineering

Email: **********@**.***

LinkedIn: http://www.linkedin.com/pub/b/314/353

References and sample software available on request.

Summary

I am driven to create high-quality, end-user applications. Speci c areas of interest include: compelling user

interfaces, interactive graphics (2D & 3D), visualization, simulation, distributed systems, and software that

makes people say, "Cool!"

Over the years I have developed my own codebase I call Bounce (screenshots here and here). Bounce is a

general-purpose, C++ framework for realtime dynamic simulation, data visualization, and whatever else

catches my eye. I've used it for browsing voxel datasets, playback of human motion capture data, simulating

urban pedestrian settings, creating virtual Lego models, and a Mars rover simulation (with the help of the

Open Dynamics Engine and the Bullet Physics SDK). More recently I've created a codebase speci cally for

iPhone/iPad development, layered on the Box2D physics engine. At the time of writing, I am immersed in

WebGL and JavaScript.

Being on a team of smart people solving dif cult problems has led to the high points of my career and

continues to be my main goal professionally.

Skills

Lots of: Object-oriented design, User-interface design and imlementation, Interactive 3D graphics, Client-

side, user-facing, front-end apps, Code refactoring, MVC and other yummy design patterns, C++,

Objective-C, Cocoa, Cocoa Touch, Qt, STL, Boost, OpenGL, Xcode, Visual Studio, Mac OS X, iOS, MS

Windows, SGI Irix (back in the day), Mercurial, GIT, Subversion, and Perforce.

Some: Realtime simulation, design and implementation of distributed systems, RESTful Web services,

JavaScript, WebGL, Ruby on Rails, TCP/IP, HTTP, XML, HTML, CSS, SQL, Java, Eclipse, NetBeans,

Image processing, and the GNU toolchain.

Employment History

Sr. Software Engineer, NAVTEQ / Nokia, Chicago, IL August 10 to present

Creating tools to visualize and improve the quality of NAVTEQ's 3d data products using C++, OpenGL, Qt,

JavaScript and WebGL.

Founder and Code Wrangler, The App Orchard LLC, Evanston, IL February 09 to present

Founded a micro-company to create engaging applications for the iPhone and iPod Touch. I have a few

apps in various stages of development and enough ideas to keep me busy for quite a while.

iPhone contract programming as part of a team developing a distributed, social marketing platform.

Co-creator and engineer of Bon Mot!, an original word game for the iPhone and iPod touch (Figure 1).

Bon Mot is currently for sale in the iTunes App Store.

Sr. Software Engineer, Write Brothers Inc., Burbank, CA June 00 to March 09

Architect of the next generation of Write Brothers' agship product, Movie Magic Screenwriter.

Screenwriter is a specialized word processor for lm, television, and stage writers. This project involved a

from-scratch design and implementation based on the Cocoa Advanced Text framework from Apple and

using the open-source Cocotron project to port from Mac to Windows. While this project gave me the

opportunity to immerse myself in Apple's Cocoa framework for a year, it was cut short when the '09

recession forced Write Brothers to scale back its business.

1

Maintained and added a variety of features to Movie Magic Screenwriter 6. Screenwriter 6 runs on Mac

and Windows and is recognized as the standard tool for professional screenwriters worldwide.

Carbonized and updated Dramatica Pro to run natively in Mac OS X. Dramatica is built upon a proprietary

cross-platform framework I originally developed in the early nineties. Along with Movie Magic Screenwriter

it can be found on the shelf at your local Apple store.

Architect and lead engineer of Word Menu, (Figure 4) an English language dictionary organized into a

hierarchy of categories and employing modern user-interface techniques to quickly browse and search the

content. Downloadable demos for Windows and Mac OS X are available online. Word Menu is

implemented as three modules: a portable engine, an MFC-based Windows UI, and a Carbon-based Mac

OS X UI.

Added a variety of features to StoryView 2.0, a compelling visual outlining tool for writers. StoryView is an

MFC-based, Windows-only application featuring a patented user-interface for displaying and editing data

that has both chronological and hierarchical structure (i.e. stories). This project involved a team of four

engineers using a formal team methodology based on the software Capability Maturity Model.

Software Engineer, MusculoGraphics Inc., Evanston, IL August 97 to June 00

Ported MusculoGraphics' agship product, SIMM (Software for Interactive Musculoskeletal Modeling)

(Figure 5) from SGI Irix/GL to MS-Windows/OpenGL, and added several major features for the release of

version 2.0 including: muscle wrapping, bone deformation, and motion capture support. The SIMM

Biomechanics Software Suite is a powerful tool kit that facilitates the modeling, animation, and analysis of

3D musculoskeletal systems. Unlike traditional animation and CAD packages, SIMM is speci cally

designed to work with systems that consist of bones, muscles, ligaments, and tendons.

Lead programer for LTS (Limb Trauma Simulator) (Figures 6 and 7), a multi-threaded realtime surgical

simulator consisting of a dual-cpu Windows-based PC controlling two Sensable Phantom force-feedback

devices for spatial input and haptic output, and a dual-cpu SGI Octane for stereoscopic realtime 3D

display. I wrote most of the code and shared design responsibilities with one other engineer. I worked on

all aspects of the simulator including the overall architecture, graphics engine, haptic force feedback, and

TCP/IP-based communication between the graphics and haptics computers. The original version of LTS

was funded by a DARPA contract and is being used to train medics at the Uniformed Services University

in Maryland and at Fort Bragg in North Carolina. A second generation version of LTS is being used by

Hong Kong University to teach IV needle insertion to nursing students.

Software Engineer, Electric Image Inc., Pasadena, CA March 93 to August 97

Co-authored a cross-platform (MacOS, Win32, Unix/X11), object-oriented 3D application framework for

Electric Image's next-generation modeling and animation software. This framework was eventually

released as the product Electric Image Universe, after my departure.

Designed and implemented character animation tools including skeletal and free-form deformations

(Figure 8) based on papers presented at SIGGRAPH '89 (Chadwick et al) and SIGGRAPH '86 (Sedeberg

and Parry). These tools were created in my own custom 3D testbed and eventually integrated into Electric

Image's 3D animation suite.

Designed, and wrote Renderama 1.0, Electric Image's distributed network rendering system. This involved

implementing client and server applications communicating via TCP/IP and AppleTalk.

Designed and implemented 3D spatial deformations for Electric Image Animation System 2.0 (Figure 9)

based on a paper presented at SIGGRAPH '84 (Barr). This became the most sought-after new feature of

EIAS 2.0, and received excellent reviews in MacWEEK 08.01.94 (page 58).

Implemented QuickTime support in EIAS 2.0. This included creation and playback of QuickTime movies

within EIAS 2.0.

Implemented audio support in EIAS 2.0. This included capture, display, manipulation, and playback of 8-

bit multichannel audio.

Many other miscellaneous projects including: porting EI's rendering engine to the PowerMac platform,

several custom GUI controls/widgets, oating palette window support under MacOS 7.x, and so on...

Software Engineer, Screenplay Systems Inc., Burbank, CA May 90 to March 93

Designed, coded and documented two C++ class libraries -- one to provide generic container classes,

memory management and I/O, another to provide a portable GUI application framework. Together these

libraries comprise 76 C++ classes built upon the Win32 and Mac OS Toolbox APIs. Additionally I ported

2

the container class library to Unix System V and Mach platforms. Screenplay Systems has shipped at

least three applications based on these libraries.

Worked on "Movie Magic Budgeting II", Screenplay Systems' 2nd-generation movie budgeting application.

MMB is a single-user, hyperlinked spreadsheet application complete with a byte-compiled macro

language. MMB makes use of the class libraries mentioned above to target both Mac OS and Windows

with one set of source code.

During my three years with Screenplay I received four promotions. Upon departure I was the senior

engineer in a company of 16 employees.

Software Engineer, Digital Etc. Inc., Santa Monica, CA April 89 to May 90

Worked in a team of three programmers developing a small-business accounting program for the Apple

Macintosh.

Programmer, Anderson Consulting Inc., San Francisco, CA September 87 to March 89

Designed and coded a PC-based expert system prototype for the California Department of Transportation

to automate the decision process involved in issuing State Highway Encroachment Permits.

Trained in SmallTalk-80 object-oriented programming environment at ParcPlace Systems Inc.

Received highest possible evaluation upon completion of rst year of service.

Student Intern, Irwin Magnetics Inc., Ann Arbor, MI May 86 to May 87

Designed a spring and roller mechanism to ensure easy and secure magnetic tape cartridge insertion into

a magnetic tape drive for PC and Macintosh computers.

Designed a dynamometer used to test electrical motors after assembly in tape drive units.

Offered permanent position and nancial aid toward college graduation.

Student Intern, IBM, Manassas, VA Fall 85

Student Intern, IBM, Poughkeepsie, NY Summer 84 and Winter 85

Designed and coded a system of computer programs to trace and plot electrical circuits from VLSI

physical design data using IBM's Uni ed Shapes Checking language in conjunction with CLIST/PDF

routines.

Conducted failure analysis on logic and array chips using optical and scanning electron microscopes.

Received a bonus for accomplishments, and offered a permanent position upon graduation.

Education

University of Michigan, College of Engineering B.S. Engineering 1987

Highlights include upper level coursework in computer graphics in which I designed and wrote a 3D graphics

editor on a late-80's era Apollo workstation as a semester project (which the professor saved as an example

for future classes), as well as diverse coursework in computer engineering, mechanical engineering, math,

science, psychology, political science, and literature.

Enthusiast, Contract, and Miscellaneous Programming

Continuing work on Bounce, my homespun, general-purpose framework for realtime dynamic simulation,

data visualization, and whatever else catches my eye (Figures 2 and 3).

In recent years I've used this code base for browsing voxel data sets, viewing motion capture data,

creating virtual Lego models, and most recently running dynamic simulations with the help of the Open

Dynamics Engine and Bullet Physics SDK. Bounce is OpenGL-based and runs on Mac OS X and

Windows. Porting to Linux would take a week or less.

3

Wrote platform-independent parsers for Adobe Type I and TrueType fonts as a contract job for Zaxwerks,

Inc.

Wrote a set of command-line programs in ANSI C to help a friend analyze her dissertation data. Sold the

software to a psychology research team at the Institute for Juvenile Research at the University of Illinois at

Chicago.

Wrote a set of text lters using `lex' to help my mom automatically pipeline the results of Lexis database

searches directly into Orbit database queries. These programs are currently available as shareware and

are in use by patent searchers in the U.S. and France.

Wrote software to view CT/MRI volume data on my NeXTstation at home. This project included an

implementation of an implicit surface nding algorithm from the SIGGRAPH '94 course notes

(Bloomenthal '94).

Personal Interests

Spending time with my family.

Taking evening art classes at the School of the Art Institute of Chicago and the Evanston Art Center. Enjoy

the results for free at my personal web site.

Rennovating our 1920's-era Chicago-style bungalow.

Coaching youth baseball and soccer.

Running (including one marathon and two half-marathons -- though that was long ago).

Building Legos with my kids, or anyone who wants to.

Member: ACM, SIGGRAPH, IEEE Computer Society, Tau Beta Pi Engineering Honor Society.

4



Contact this candidate