Resume

Ron van Hoof
1 Richmond St. Apt 2105
New Brunswick, NJ 08901, USA
rvhoof@optonline.net

OBJECTIVE

Position as a Senior Software Engineer/Lead developing service oriented Java based systems

WORK EXPERIENCE
9/2013 - Current Senior Research Associate, Florida Institute for Human and Machine Cognition (IHMC), Pensacola, FL, USA

CmapTools (4/2014 - current)

A set of tools that empowers users to construct, navigate, share, and criticize knowledge models represented as concept maps.

As software engineer developed a web-based Cmaps application. This application allows users to create, edit, and delete Cmaps, folders, and Cmap related resources (images, videos, URLs, documents, etc). This application also allows users to find, invite, and manage Cmap friends to share Cmap folders and Cmaps allowing for multiple users to collaborate on Cmaps. The web application was developed using Java 7 and the Spring Framework (v4.x), using Spring MVC, Spring REST, Spring Security, Spring LDAP, Spring JDBC, Spring Transactions, and uses Thymeleaf as the template engine for the web pages, using the Bootstrap framework as well as Javascript and Ajax with jQuery and JQuery-UI on the client side. The web application is integrated with OpenLDAP and uses MySQL as the database engine. Gradle 2.x is used for build management. Git is used as the version control system.

As software engineer developed a Cmap Web Viewer. This web viewer allows a user to display server managed Cmaps in a browser. The viewer allows for Cmaps to be displayed in view-only mode and annotation mode. In annotation mode users can annotate the Cmaps provided they have the necessary privileges. The viewer offers numerous configuration options to allow for Cmaps to be embedded in other web pages. The viewer was developed using Java 7 and the Spring Framework (v4.x), using Spring MVC, and uses Thymeleaf as the template engine for the web pages, as well as Javascript and Ajax with JQuery on the client side. Gradle 2.x is used for build management. Git is used as the version control system.

As software engineer developed a web-based user management system (UMS) to support the creation and management of CmapTools cloud user accounts. Allowing users to create an account, review and edit their user profile, activate the account, reset password, and to allow for administrators to do the same. The UMS also includes the ability to manage CmapTools products and track purchases of those products. The UMS also includes a REST interface to allow for other applications such as the Cmap Server and the Cmap iPad application to interact with the UMS. The UMS was developed using Java 7 and the Spring Framework (v3.x), using Spring MVC, Spring REST, Spring Security, Spring LDAP, Spring JDBC, Spring Transactions, and uses Thymeleaf as the template engine for the web pages, using the Bootstrap framework as well as Javascript and Ajax with jQuery on the client side. The UMS is integrated with OpenLDAP and uses MySQL as the database engine. Maven is used for build management. Subversion is used as the version control system.

IRIS-D (9/2013 - 9/2014)

To develop a model-based retinal image interpretation and diagnosis system.

As software engineer performed a technology appraisal researching existing retinal image processing systems, existing retinal image processing algorithms, and relevant standards and regulations.

As software engineer developed a cloud-based service oriented architecture to optimize the existing IRIS system architecture by integrating the Microsoft Azure Service Bus into the existing architecture allowing for existing services to be decoupled, and allowing various services to easily be scaled independently to improve performance and reliability of the overall architecture, optimizing utilization of computing resources, and as a result, reducing cost. The architecture was implemented using C#.

As software engineer developed a retinal image enhancement service that integrated the existing image enhancement module and integrated it with the new service oriented architecture. The service was implemented using C#.

As software engineer developed a retinal auto-read service that integrated the existing auto-read module and integrated it with the new service oriented architecture. Ported the existing auto-read module written in C++ from Linux to Windows. Developed a managed-code wrapper for the ported auto-read module in C++. Developed the auto-read service in C#.

3/2013 - 8/2013 Independent Contractor

Real-time Health Agent

The Real-time Health Agent project is a project to develop an integrated intelligent healthcare system that includes wearable physiological sensor(s); monitoring, interpreting, and advising logic; voice command and display interfaces accessible via smartphones and as a web-based application.

As software engineer setup the project structure, automated build environment, and testing environment using Maven 3.x with integration with the Spring Tool Suite (Eclipse 4.2) and Tomcat 7.x. Developed the framework for the project using Java 7 and the Spring Framework (3.2) utilizing annotation based configuration whenever possible. Started with the development of the web-based application using Spring MVC, JSP, Javascript, jQuery, Ajax, JSON, and Bootstrap (CSS). The application supports graceful degradation to ensure functionality is available even if Javascript is disabled. Implemented data validation using a combination of Spring validation and annotation based JSR303 bean validation using the Hibernate validator. Added support for internationalization (i18n) to properly localize the content. Secured the application using Spring Security (3.1.4) with a custom login screen, using the Spring regular expressions to secure URLs and service methods. Incorporated a persistent back-end for the user credentials with support for remember-me functionality and securing passwords using a bcrypt password encoder. Business logic is encapsulated in services. For the persistence layer used JPA annotations, a DAO layer with transaction boundaries defined using Spring transaction annotations, Hibernate for ORM, and MySQL as the relational database. Used Spring Integration and the Velocity template engine and templates to automate the transmission of confirmation emails.
Developed a REST interface to the web application and developed an Android application utilizing the REST interface to register a new user, login/logout of the application, edit the user profile, and added support for caching user data and support for auto-login using a local SQLite database. Added form validation and support for in standard and landscape views.
 

11/1998 - 2/2013

Software Development Consultant, Dell, Inc. (Services, Infrastructure & Cloud Computing), NASA Ames Research Center, Moffet Field, CA, USA
(Dell 01/2010 – 2/2013, Perot System Government Services 02/2007 – 01/2010, QSS Group, Inc. 07/2000 – 02/2007, Caelum Research Corp. 11/1998 – 07/2000)

OCAMS Project (10/2007 – 11/2012)

The Orbital Communications Adapter (OCA) Management System project is a project to develop a distributed agent-based system to automate routine functions of the OCA Officer's job, facilitating a combination of OCA and RPE positions at NASA’s mission control center at JSC, while improving quality and off-nominal responsiveness.The routine functions include uplinking/downlinking of files from ground to the ISS, mirroring, archiving, and delivery of those files, and the communication of notifications to the OCA customers.OCAMS automates the processing of requests for and execution of procedures to uplink, downlink, and manipulate the files on both ground and the ISS including mirroring, archiving, delivery, and notification automating 90-95% of the OCA Officer’s job function. OCAMS is developed in Java.

As the development lead responsible for planning and managing the development of OCAMS with a team of 5 people. Worked closely with the customer and managed an on time and successful delivery and deployment of 11 OCAMS releases by using a combination of agile and feature driven development methodologies. OCAMS has been operational since 2008 and is currently still operational. Managed the transfer of all development and maintenance of OCAMS to a  NASA JSC contracted organization providing documentation, training, and guidance in analyzing and resolving issues, as well as guidance in developing new functionality when needed. As the development lead defined requirements, design, coding and documentation standards. Reviewed designs, code, and documentation and provided feedback to the development team.

As a software engineer responsible for the requirements analysis and software architecture and in part responsible for the design, implementation, testing and release of OCAMS. As part of the development responsible for:

  • integrating the Collaborative Infrastructure (CI) as the underlying communications infrastructure to support agents discovering and communicating with one another in a distributed environment;
  • integrating the Spring framework utilizing dependency injection
  • integrating a persistence layer using Spring, Hibernate 3, and MS SQL Server 2005
  • developing an actor hosting environment to manage the loading, starting, stopping and unloading of actors and to provide core CI services to those actors;
  • developing an application manager that monitors all processes and agents and alerts the user when problems arise;
  • developing a wide variety of agents, some to interface with external systems such as the electronic flight note system using an HTTP client API, Microsoft Exchange mail server for retrieval and transmission of e-mails using the Java Exchange Connector, Microsoft Word for the generation of handover logs using J-Integra, Microsoft Excel for generation of statistical logs using J-Integra, a NASA file transfer application (SWRDFSH) for file transfers between ground and ISS using Java Native Access (JNA) to a C API, and some core agents such as for mirroring, file operation execution, etc.;
  • developing user interface components using Swing and JIDESoft’s JIDE utilizing the docking framework, action framework, grid/table components, dialogs, and common components;
  • developing automated unit and integration test cases using TestNG.
  • developing build scripts using Ant.
  • developing an installation package using InstallAnywhere.

OCAMS is developed using Java 6 and is run on Windows based systems (MS XP and MS Windows 7).

Received six awards for the OCAMS system, a Dell Award of Excellence (2012), a NASA JSC exceptional software award (2010), a NASA ARC Honor Award (2009), and three NASA group achievement awards (2009, 2010, 2012).

Collaborative Infrastructure Project (12/2006 – 2/2013)

The Collaborative Infrastructure (CI) project is a project to develop an agent-based infrastructure to provide a seamless communication infrastructure and agent-based services to allow a set of autonomy components and mission operations applications to communicate with one another.

As the development lead responsible for planning and managing the development of the collaborative infrastructure.

As a software engineer responsible for the design, implementation, testing and release of the collaborative infrastructure. Responsible for:

  • developing an actor interface to be implemented by any actor that is to integrate with the collaborative infrastructure;
  • developing a process manager to manage the starting, stopping and monitoring of CI processes;
  • developing a multi-threaded actor hosting environment to manage the loading, starting, stopping and unloading of actors and to provide core CI services to those actors;
  • developing a message based transport service for point to point actor communications that supports pluggable transport using socket level programming, supporting at the a minimum TCP, FIPS 140-2 compliant SSL, UDP, and multicasting, allowing the CI to select the most appropriate transport depending on quality of service properties;
  • developing a distributed directory service to (un)register actor advertisements and to support lookup of actors based on a variety of search parameters (names, capabilities);
  • developing a data distribution service to support the robust topic-based publication and subscription of data (such as telemetry) using different transports depending on the quality of service requirements of the data;
  • developing a time service to allow for time synchronization between hosting environments;
  • developing a logging service to provide a common logging interface to all actors.
  • developing a console application to control and visualize process, hosting environment and actor state.
  • developing a cross platform installation package using InstallAnywhere

The CI supports actors developed both in Java and C++. All services are developed in Java. C++ actors are hosted in a Java-based hosting environment. The Java Native Interface and a CORBA bridge are used to manage the interaction between Java and C++ on both Windows and Linux. Used Java 6, JacORB 2.3, ACE 5.5/TAO 1.5, Gnu C++ and Visual C++ 7.1.

Mobile Agents Project (7/2002 – 9/2005)

Mobile Agents is a project to develop an open agent-based architecture to support exploration missions. It includes the development of a distributed wireless surface exploration support system supporting a crew and remote science teams for the planning and execution of extra-vehicular activities (EVA’s). The system supports EVA plan management and tracking, automated recording of science data, robot commanding, health monitoring, navigational support and system monitoring using a voice controlled interface.

As the development lead of the Brahms sub team consisting of four people responsible for planning and managing the development of the Brahms agents and Brahms interfaces to systems external to Brahms.

As the software architect responsible for the design of the mobile agents architecture, managing the design of the Brahms agents, the interaction of these agents with one another and of these agents with the various support and control systems such as GPS sensors, health sensors, robots, system hardware, etc. Started the design of a service oriented architecture using J2EE where the Brahms software agents use the J2EE services to ensure robust persistence of telemetry, science data and state and to allow us to develop a wide variety of user interfaces for different user communities to retrieve and analyze the captured data.

As a software engineer responsible for the requirements analysis and definition for the mobile agents project. Responsible for maintaining the requirements specification throughout the project and responsible for tracking the implementation of the requirements throughout the development cycle. Also responsible for signing off on the requirements after the implementation, testing and integration of various mobile agents functions.

As a software engineer responsible for the development of Brahms agents as part of the mobile agents system that include plan tracking agents, navigation assistants, medical assistants, science data assistants, and system assistants, and that include Brahms interfaces that include interfaces between Brahms agents and GPS sensors, bio sensors for monitoring heart rate and blood oxygen levels, EVA robots to control movement and camera’s, a speech recognizer (Nuance) and speech synthesizer (SAPI5, FreeTTS). The agents were developed using the Brahms language. The interfaces were developed using Java (J2SE 5.0), depending on the interface type using Corba (JacORB), Java Messaging Service (JBoss), TCP/IP sockets, and Java Native Interface to communicate with Windows COM objects and the kernel API.

Successfully field tested mobile agents for 4 years (’03, ’04, ’05, ‘06) at the Mars Desert Research Station in Hanksville, UT with 2 geologists, 2 EVA Robotic Assistants and a remote science team, at Meteor Crater, AZ (’05, ‘06) with 2 astronauts in pressurized space suits and a Scout rover and at Ames’ Marscape (’05) with one ‘astronaut’ and a K9 and Gromit rover.

Received a NASA Group Achievement Award (2006).

Brahms Project (11/1998 – 2/2013)

Brahms is a multi-agent intelligent agent and simulation environment used for modeling, simulating and analyzing work practice. Brahms is a data driven (forward chaining) discrete event simulation environment with extensions for the real-time execution of intelligent agents. This project is a continuation of work performed at Bell Atlantic, now Verizon. This work is continued at NASA Ames Research Center.

As the development lead of the Brahms project responsible for planning and managing the development of the Brahms agent environment. Responsible for defining the development guidelines and coding standards. Responsible for supporting the developers in understanding Brahms and the development of the Brahms components.

As the software architect responsible for designing the short and long term system architecture for the Brahms agent environment to include the specification of the various Brahms components and their interaction in stand-alone systems and distributed architectures.

As a software engineer responsible for maintaining and expanding the Brahms language and Brahms compiler to support new agent capabilities. Details of the current language specification can be found at http://www.agentisolutions.com. The Brahms compiler is implemented using JavaCC and Java J2SE 6.0. The compiler generates XML to represent the Brahms compiled code. Specified the Document Type Definition for the Brahms code and implemented the XML generator using Java J2SE 6.0. The generated XML is used as the ‘byte code’ input for the Brahms virtual machine.

As a software engineer responsible for the requirements analysis, object oriented design and implementation of the Brahms Virtual Machine. The Brahms Virtual Machine loads in Brahms models from XML and starts the simulation of the Brahms agents. The Brahms VM is a multi-threaded environment. The Brahms VM generates a reasoning state network similar to a RETE network but with extensions and enhancements for Brahms. The reasoning state network maintains the state of all the Brahms frames (activity rules) and conditions that can be matched by agent’s beliefs and/or world facts. The Brahms VM includes a discrete event manager to synchronize time and distribute events to the agents in case of a simulation. Added support to the Brahms VM for real-time execution of Brahms agents as software agents and added an open API to allow virtual machine services to be loaded, to allow for agent activities to be developed using Java and to allow for an interface for external agents to interact with Brahms agents. Added support for an agent directory service and to allow agents hosted in different virtual machines to communicate with eachother in a distributed environment without requiring the agent developer to change any Brahms code. The Brahms VM is implemented in Java using J2SE 6.0 and J2SE XML parser.

As a software engineer responsible for porting the Brahms Agent Viewer graphical user interface application from Visual Basic to Java using Swing and migrating the underlying database from MS Access to MySQL 4.x developing the database interfaces using JDBC 2.x and SQL managing database creation and deletion, parsing of the history file generated by the Brahms virtual machine to the database using inserts and querying the database for displaying data using prepared statements.

As a software engineer responsible for developing a dockable window framework for the Brahms integrated development environment (IDE) using JDK 1.3 based on Swing components that allow users to organize their desktop windows in a way most productive to them. The dockable window framework emulates the behaviors found in Microsoft’s Visual Studio applications. Replaced this dockable window framework with a commercially available docking framework when it became available (JIDESoft).

As a software engineer responsible for the development of the Brahms model builder prototype allowing model builders to create and browse Brahms models. The model builder is implemented using Java jdk 1.1.8 and Swing 1.1.1.

As a software engineer responsible for the requirements analysis, object oriented design and implementation of the Brahms virtual reality environment prototype that visualizes the activities performed by the agents in a Brahms simulation run in a three dimensional view. The virtual reality environment prototype is implemented using Java jdk 1.2, Swing 1.1.1 and Java 3D using VRML as the format in which the scene and scene elements are defined.

As a software engineer responsible for the requirements analysis, object oriented design and implementation of the Brahms Enterprise JavaBeans server prototype with support for stateless session beans but no transaction management implemented using Java jdk 1.1.8 and RMI. The server is to be used to host Brahms server side components written as EJBs. The EJB Server is based on the EJB specification V1.0. The EJB Server also includes a database service allowing for connectivity to multiple databases using connection pools. The database service uses JDBC to connect to databases.

As a software engineer responsible for the requirements analysis, object oriented design and implementation of the Brahms Messaging Service used to distribute events generated by Brahms virtual machines to Brahms components registered for those events. The Brahms Messaging Service complies to the Sun Java Messaging Service specification V1.0 and supports the publish/subscribe messaging component. The Brahms Messaging Service is integrated with the Brahms EJB Server and is a multi-threaded application implemented using Java jdk 1.1.8, RMI and JNDI.

6/1995 - 11/1998

Member of Technical Staff, Bell Atlantic IS (now Verizon), White Plains, NY, USA

Trouble Entry System Solution (TESS) Project (1/98 – 11/98)
TESS is a trouble entry client/server system used for trouble entry, tracking and reporting of telephony problems reported by large business customers. TESS has a four tier architecture with a Java based client, Java EJB based second tier using BEA Weblogic, a Bell Atlantic proprietary gateway to legacy systems on the third tier and the legacy trouble entry systems on the fourth tier

As a software engineer developed a proposal for the TESS project to replace the non Y2K compliant trouble entry system used for trouble entry, tracking and reporting for large business customers. Designed and implemented a prototype as a proof of concept for a web enabled trouble entry solution for use by Bell Atlantic’s customer service representatives. The prototype is implemented in Java using Swing as the user interface class library. For this application developed a Windows 98 look and feel, substituting the available Swing look and feels.

As a development lead responsible for the planning and managing of the development of the TESS client with a project team consisting of three developers, a technical writer and a subject matter expert. Also responsible for reporting and tracking issues and requirements with the customer.

As a software engineer together with the client team responsible for the requirements analysis for the entire TESS system as part of a contractual agreement with the customer, and the object oriented design, implementation and unit testing of the TESS client. The design is created using the unified modeling language (UML). The implementation is in Java using jdk 1.1.6 and Swing 1.0.2.

Project Compendium Project (12/97 – 3/98)
Project Compendium is a conversational modeling tool allowing for capturing discussions, notes, requirements, designs, issues and more between a team using a graphical representation linking questions, ideas and information. Project Compendium provides interfaces to MS Word and MS Excel for transparent display of discussion results and information in popular formats (
http://compendium.open.ac.uk/institute/).

As a software engineer responsible for the design and implementation of an interface between Questmap (an existing conversational modeling tool) and a MS Access database with a graphical visualization interface on top of the application to verify imported data. The application is designed using UML and implemented using Java with Microsoft’s AFC and the JDBC-ODBC bridge. Started the design and implementation of a three tier client-server converational modeling tool with a web enabled interface using Swing and using RMI between the client and server. The work was continued by other developers due to the higher priority of the TESS project.

Customer Service Manager (CSM) Project (12/97)
The Customer Service Manager System allows for measuring and displaying of the performance of frame relay networks.

As a software engineer responsible for the design and implementation of a web enabled prototype to view statistical data, in the form of bar charts, about the performance of frame relay networks. The client is implemented using Java and a dbAnywhere middleware server is used as the interface to the database containing the captured performance data.

Brahms Project (6/95 – 12/97)
Brahms is a multi-agent intelligent agent and simulation environment used for modeling, simulating and analyzing work practice.

As a software engineer responsible for the design of the Brahms language (in BNF) for modeling activity based work processes and developing agent based applications. For this language designed and implemented an object oriented compiler. The design of the compiler was realized using the unified modeling language. The implementation was realized using Yacc and Java. The user interface was developed in Java using Microsoft’s AFC class library.

As a software engineer responsible for the design and implementation of extensions to the Brahms simulation engine for simulating work and social processes. The simulated work process models are defined using the Brahms language. UML is used for the design. The simulation engine is developed in G2 using it’s third generation language from Gensym.

3/1995 - 6/1995

Junior Knowledge Engineer, Bolesian Systems Europe B.V., Helmond, The Netherlands

As a knowledge engineer responsible for building interfaces between MS-Access, MS Word, and MS Excel for automatically generating quotations in five languages based on the result of a knowledge based configuration editor for the configuration of pumps. The interfaces are developed in Visual Basic for Applications.

12/1994 - 3/1995

Co-operator automation, Housing society Etten-Leur, Etten-Leur, the Netherlands

Periscope Project (12/94 – 3/95)
Periscope is a system allowing the housing society to manage information about houses owned and maintained by the housing society.

As a software engineer responsible for the design and implementation of a quality control system for the houses of the housing society providing reports about the state of the houses. The information systems used are the Informix RDBMS and Periscope. The implementation required writing SQL to retrieve information for presentation in reports.

7/1994 - 10/1994

Knowledge Engineer, Work Systems Design Group, Bell Atlantic Science & Technology (now Verizon), White Plains, NY

Casedom Project (7/94 – 10/94)
Casedom is a computer aided software engineering tool allowing for modeling domain knowledge and generating a rule based system from the modeled domain knowledge.

As a knowledge engineer responsible for designing and building a CASE tool with automatic code generation for domain modeling. Domain modeling concerns data modeling and knowledge modeling for conventional as well as knowledge-based systems based on CommonKADS. For the requirements a language specification was created, for the design the technique OMT (Rumbaugh) was used and the implementation was realized in SNAP.

PATENTS
US Patent 6,216,098

 

W. J. Clancey, D.M. Torok, M. Sierhuis, R.J.J. van Hoof, and P. Sachs, "Simulating Work Behavior" in United States Patent Office. USA: Institute for Research on Learning and Bell Atlantic Network Services, Inc., April 2001.
EDUCATION
12/1994

 

M.S., Knowledge Engineering, Center for Knowledge Technology, Utrecht, the Netherlands and University of Middlesex, London, England
7/1993 B.S., Computer Science, Hogeschool West-Brabant, Etten-Leur, the Netherlands
COMPUTER SKILLS
Management Development lead for 10+ years, project planning, monitoring, reporting, defining development standards, ensuring quality of the products, ensuring on-time delivery.

Methodologies

Software Develoment Life Cycle (SDLC), Agile Software Development, Feature Driven Development, CommonKADS, CommonKADS, SDM (System Development Methodology developed by Cap Volmac), Yourdon Structured Analysis and Design

Techniques

Object Oriented Analysis and Design using UML (Use Case Analysis, OMT, STD, DFD, ERD)

Configuration Management CVS, Subversion, Git, JIRA, Crucible, Bamboo, Bugzilla, Trac

Tools

Eclipse 3.x-4.x, Spring Tool Suite (STS), Ant, Maven, Gradle, TestNG, InstallAnywhere, Microsoft Visual Studio 7.1-2013, Borland JBuilder, Microsoft Frontpage, Microsoft Office, Microsoft Project, Microsoft Visio, Select Enterprise, Gensym G2

Languages

Java, JavaCC, SQL, XML, XSL, DTD, HTML, CSS, JSP, JavaScript, CORBA, IDL, G2, Perl, PHP, Lex&Yacc, TURBO Pascal, Visual Basic, C, C++, C#, Prolog, SNAP, AionDS, Assembler

APIs

JDK 1.0.2-8.x, Spring (2.5-4.x, Framework, Integration, Security, REST, LDAP), Hibernate 3.x-4.x, JPA, Swing, JDBC, JNDI, JNI, JNA, RMI, CORBA, J2EE, EJB 3.x, JMS, Servlet (2.4-3.x), Thymeleaf, JSTL, jQuery, JQuery-UI, Bootstrap (CSS), Java 3D, JIDESoft JIDE (Docking, Grids/Tables, Action, Common), Apache Commons, Log4J, SLF4J, TestNG, Javadoc, DWR, MS SAPI 5.x, FreeTTS, Nuance Speech System, GPS (NMEA), JacORB 3.x, Microsoft Azure Service Bus, ACE 5.6, TAO 1.6
Application Servers Tomcat 4.x-7.x, Jetty, JBoss 4.x
Cloud Platforms Microsoft Azure

Databases

MS SQL Server 2005/2012, MySQL 4.x/5.x, Derby 3.x, Informix RDBMS, Oracle RDBMS 6.0 (Forms, Reportwriter, Embedded SQL), Unify RDBMS/ACCELL, MS-Access

Operating Systems

Windows 7/Vista/XP/2000/NT4/98/95/3.1/MS-DOS, Solaris 2.x, Linux/Fedora Core, Mac OS X

AWARDS

2014

NASA 2013 Software Release Award for Brahms (January 22, 2014)

2012

NASA Group Achievement Award for OCAMS (August 23, 2012)
Dell Award of Excellence for OCAMS (May, 2012)

2010

NASA JSC Exceptional Software Award for OCAMS (July 22, 2010)
NASA Group Achievement Award for OCAMS (May 11, 2010)

2009

NASA Ames Honor Award for OCAMS (October 14, 2009)
NASA Group Achievement Award for OCAMS (April 16, 2009)

2006

NASA Group Achievement Award for Collaborative Decision Systems (April 26, 2006)