Printable PDF version here.



Software Developer
Team Leader
155 Waverley Ave.
Newton, MA 20458
T: 617-610-3108


To work with an energetic team to create something phenomenal. To do something I don’t already know I can do. To practice engineering as an art. To continually develop process and product without settling into comfortable ruts. To help keep an organization alive and healthy by fostering sufficient change and growth to provide constant renewal. To be part of building an organization that is open to honest reflection and self-awareness. To find and work among the best, most creative, and talented people in the world.

Masters of Media
Arts and Sciences
Media Lab, Massachusetts Institute of Technology, Cambridge, MA

As a researcher in John Maeda’s Aesthetics + Computation Group, I designed and developed systems for human-computer interaction. Thesis entitled "Spatial Computing." Completed many substantial independent research projects in two years:

1999 – 2001
Candidate, MArch
School of Architecture, Massachusetts Institute of Technology, Cambridge, MA

I completed two years of the Masters of Architecture program before leaving to become a researcher at the Media Lab.

1991 – 1995
Bachelor of Science
Yale University, New Haven, CT

Double-majored in English & Applied Math with a concentration in Computer Science.
Cum laude, Distinction in both majors

2008 – present
Engineering Manager
2006 – 2008
Senior Team Lead
2005 – 2006
Principal Software
2004 – 2005
Senior Software
MathWorks, Inc., Natick, MA (makers of MATLAB)

I lead a team of 10 C++ developers responsible for the diagram editors for the graphical languages Simulink and Stateflow. These are the core editors driving a $250M/year suite of products with 25,000 commercial seats. The editors are fully scriptable customer-facing 2D diagram-drawing canvases running on Windows, Linux, and Mac, and also a platform for 280 other developers inside MathWorks.

Since 2006, we have been creating a generic framework for diagram languages and porting the Simulink and Stateflow products to it. The project has been staffed with two development teams, making me the technical lead for a project of 20 developers since 2009. The project was a company-wide "absolute" development priority in 2011. I remain highly involved in technical details, project strategy, and team management. I write and review code and coach developers daily.

The software is currently in Beta release and receiving very positive customer feedback. When it ships, it will replace roughly 450,000 lines of legacy code and represent one of the largest software investments MathWorks has delivered at one time. (I know that’s a double-edged sword. I’d love to discuss it.)

Our team has produced and shipped countless features of varying size on the existing editors.

2003 – 2004
Software Developer
MetaServer, Inc., New Haven, CT

Worked with a small team of developers on a visual data-flow mapping product. (Java, Swing, JSP)

Fall – Spring 2003
Yale University School of Architecture, New Haven, CT

Developed and taught two highly rated classes in computational design for graduate students of Architecture. Classes based on these are still taught there today by a former student of mine.

1997 – 1999
High School Teacher
Track Coach
Friends Seminary, New York, NY

Taught high school AP Computer Science, Geometry, American Literature, and Creative Writing; coached track team; advised student newspaper; taught 5/6th grade drama.

1995 – 1997
Software Developer
Bloomberg, LP, New York, NY

Authored a financial commodity spreadsheet application and user interface that updated in real-time for use by Bloomberg’s proprietary network of (then) 70,000 users.


I eat technologies. Here are some in which I’ve worked, though I’m eager to experience others:

Languages   C++, MATLAB, Java, Ruby, UML, HTML, Javascript, XML, SQL, Freemarker, Fortran, Assembly
Frameworks   Qt, Rails, Swing, iOS
Libraries & APIs   STL, Boost, OpenGL, Processing, VTK, OpenCV, IPP, TBB, MySQL, Postgres, jQuery
Platforms   Windows, OSX, Linux, iOS
Patterns and Idioms  

Architectures of large software systems, many design patterns, modern idioms, software processes

Everything else

Critical thinking, writing, teaching, coaching, speaking, editing, designing, hiring, listening, juggling

Selected Projects
iPhone App: Firewater

FireWater is dazzling shower of sparks pulled along the surface of a simulated fluid you stir with your finger. Form whirlpools and eddies. Watch them blaze out like fireworks. FireWater implements a simple intuitive physics of fluid flow I developed myself.


StaticsPad is a program for simple structural design using the discipline of graphic statics. It supports the textbook Form and Forces: Designing Efficient, Expressive Structures by Edward Allen and Waclaw Zalewski.


Boston Art Windows, Downtown Crossing, Boston, MA
Homespun is dedicated to anyone who has ever felt turned upside down by forces beyond their control. It is a dollhouse rotating slowly end-over-end on an axle and a video feed of the inside of the house. (In the video, the rotation is removed, so the furniture prowls slowly around the room from floor to wall to ceiling.) It is about the heaviness and danger of the objects with which we surround ourselves and the fragility of the shells we live in.

Processing Lights and Camera

Contributed software vertex lighting and shading system and camera code to the open source Processing project in Java. Developed an open source point-mass particle system library for Processing that is in use today in a variety of projects.

Active Statics

Developed and deployed highly interactive structural design teaching tools for architects to accompany Zalewski and Allen’s textbook, Shaping Structures: Statics. Currently in use in many schools of architecture.


An inexpensive and effective 3D scanner and volume recognizer built from webcams.


Fully functional augmented-reality system for creating and viewing virtual forms and permanently installing them into real space.

Publications, Lectures, and Exhibits
Summer 2010
Survey of Projects and Techniques in Design Computation

Yale School of Architecture, Summer graduate session

Fall 2009
Structural Sketches: From ActiveStatics to StaticsPad

MIT School of Architecture and Planning, Building Technology Lecture Series

Contributed chapter "3D" in

Processing: A Programming Handbook for Visual Designers and Artists
by Casey Reas and Ben Fry, MIT Press

Fall 2005
Panelist: Negotiating Technological Systems and Organizations of Life

University of Pennsylvania, School of Design, Nonlinear Systems Organization conference

Fall 2004
The classroom as complex adaptive system

MIT School of Architecture and Planning

Winter 2003
Five Points of Leverage for Seamless Human-Computer Interaction

Lecture: IBM Watson research center, Hawthorne, NY

Winter 2002
"Weaver" interactive 3D software

Included in exhibit "Super-Ficial" exploring emerging technology’s role in architectural surfaces.
New Museum of Contemporary Art, New York, NY.
Images for Christopher Hawthorne, "Carbon Fiber Future," Metropolis Magazine, February 2003.

Fall 2002


"Installation" augmented reality system
    Bronze award, 2002 I.D. Magazine Interactive Media Design Review.
Spring 2001


"Installation" augmented reality system

Demonstrated system at Intel corporate research fair, by invitation. Portland, OR

Summer 2001


Moment (then called Paramour) diagram language for interactive graphics

Greenwold, S., "Paramour: Managing Complexity in a Visual Data-Flow Environment With Enclosures and Busses," Object-Oriented Programming Systems, Languages, and Applications (OOPSLA) Workshop on Domain-Specific Visual Languages, 2001.

Fall 2000


Agency GP, genetic programming for architectural exploration

O’Reilly, U., Testa P., Greenwold, S., Hemberg, M., "Agency-GP: Agent-Based Genetic Programming For Design," Late Breaking Papers, Genetic and Evolutionary Computation Conference, (GECCO-2001).

    Testa, P., O’Reilly, U., Greenwold, S., "Agent-Based Genetic Programming for Spatial Exploration," Association of Collegiate Schools of Architecture Technology Conference, 2000.