Scott Bell's Homepage

Scott Bell

Rue de Genève 76B
Chêne-Bourg, GE 1225
Switzerland
+1 (832) 715-2652
+41 76 230 77 21‬
scott@scottbell.name

Computer Expertise

Experience

Senior Software Engineer (August 2021 to Present) @ TRACLabs and NASA

I’m part of the Open MCT team developing the next-generation mission control framework for the NASA VIPER lunar rover and other space missions. I work in frontend and backend software development, design, and prototyping. The application stack is a Vue.js frontend, with Node.js and CouchDB on the backend.

Staff Software Engineer (August 2013 to 2021) @ TRACLabs

I led development on PRIDE, a software suite for automating standard operating procedures for both humans and robots. The software is in use 24/7 at Fortune 500 companies, commercial space operators, and at NASA. It has thousands of simultaneous users. The application stack is Node.js, MySQL, a Vue.js frontend, and hosted on AWS & Azure. NASA used PRIDE during several ISS spacewalks, for the X-57 project, and the VIPER moon rover.

I managed the technical work of over a dozen frontend and backend developers, which includes stand ups, code reviews, hiring, and providing technical guidance and coaching to developers and engineers. I also created prototypes for new features, estimate schedules and costs, plan feature sets and releases, and file for patents. I was responsible for locating and directing resolutions for critical issues related to the software system, and coordinate with QA, DevOps, product management, and marketing.

Software Engineer (August 2010 to 2013) @ TRACLabs

I led development on an integration between NASA’s electronic procedure toolkit and NASA’s Mission Control Technologies (MCT) software, both Java-based. The goal of the project was to modernize NASA’s Mission Control display software of telemetry, procedures, and commanding.

I also led development of PRONTOE, an ontology editor for domain experts. Created in concert with NASA, the Java based tool allowed for complex ontology development by non-computer scientists. PRONTOE was used for training astronaut candidates at NASA.

Software Engineer (August 2002 to 2006) @ S&K Aerospace and NASA Johnson Space Center

I was sole developer on a discrete event life support simulation for intelligent control algorithms called BioSim. The simulation was a test bed for studies ranging from machine learning to reliability theory. The simulation was used by many research institutions and universities including: MIT, Rice, Vanderbilt, UIUC, UC, and the NSF

Computer Systems Specialist (January 2002 to August 2002) @ Laboratory for Intelligent Processes and Systems

Developed and researched novel software engineering applications and techniques.

Research Assistant (November 1996 to January 2002) @ Laboratory for Intelligent Processes and Systems

Helped develop distributed applications using Java and CORBA. Wrote much of client/server interface to a remote object oriented database and the Swing front-end. Wrote XML reporting tool for distributed applications.

Internship (Summer 1999) @ Amazon.com

Wrote Java database extraction and testing tool for Oracle database. Assisted in porting enterprise applications from C++ to Java.

Internship (Summer 1998) @ Sun Microsystems, Inc.

Helped write test engine for the J2ME and assisted in SQE development. Developed web interface test reporting tool for browsers using Perl and CGI.

Internship (Summer 1997) @ Applied Research Laboratories

Assisted in development of distributed version control software. Worked on Postgres/Java bridge and GUI.

Teaching Assistant (September 1997 to May 1999) @ University of Texas at Austin

Helped students with symbolic representation and design patterns. Lectured on Java programming fundamentals.

Ongoing Personal Projects

BioSim: The open source life support simulation

Patents

System and method for executing operations specified in a procedure language
Issued Jul 3, 2018 Patent issuer and number us 10013266

A system for executing a procedure includes a procedure execution engine. The procedure execution engine is configured to translate a procedure defined via a procedure language to natural language statements corresponding to the operations specified by the procedure language. The procedure execution engine is also configured to generate a user interface for controlling execution of the procedure, and to display the natural language statements via the user interface. The procedure execution engine is further configured to indicate progress of execution of the procedure, via the user interface, based on the displayed natural language statements.

Education

2001 B.S. Computer Science from the University of Texas at Austin

Publications