Sherbert Bob

Bob Sherbert

Name:Sherbert Bob
Date of birth:
Address:Collingswood, NJ



1. Lawrence Livermore National Laboratory

  • Worked with nuclear detectors group to enhance existing data fusion experimentation program
  • Extended and verified multi-agent nuclear detection experiments written in C++ and Python
  • Independently performed energy response characterization of industry standard radiation detector

2. Hubo Lab

Daejeon, South Korea
  • Participant in the National Science Foundation’s (NSF) East Asia and Pacific Summer Institutes (EAPSI) Program
  • Primary Investigator (PI) on NSF Grant: “EAPSI: Humanoid Operating Software”
  • Authored cross platform control code in C++ for adult-sized, miniature, and virtual humanoid robots

3. Drexel Autonomous Systems Laboratory

  • Developed a multi-platform real-time operating software for humanoid robots
  • Designed, printed, and fabricated PCBs for multiple projects (motor controller, simple amplifier)
  • Taught in-house C programming course for other researchers

4. Johns Hopkins Applied Physics Laboratory

Software Engineer
  • Lead developer on analysis tools for Linux kernel self-modifying code, critical to multiple client contracts
  • Migrated 25+ repository project from legacy version control to Git, moved builds into continuous integration (Jenkins)
  • Awarded $50k in competitive internal R&D funding for investigation into Android platform security
  • Implemented a “Low Cost Personal Encryptor” – embedded Linux USB encryption device

5. JPW Associates

Electrical/Software Engineer
  • Oversaw technical aspects of competitor acquisition – including identification of critical engineering documentation, remanufacture of components, and reintroduction of mobile computer products
  • Constructed wireless localization system for lost utility meters – implemented software defined radio in GNU Radio, statistical localization system in Pandas/Numpy, backend data collection utilities in C/MySQL, and API interfaces in Flask
  • Designed, oversaw certification, and is supervising manufacture of Lithium-Ion battery protection circuit for handheld computer (build sizes of 200 units)
  • Mentors junior team members

6. Carbide Labs

Founder / Principal
  • Founding member of firm
  • Responsible for client interface, business planning/administration, implementation, etc.
  • Lead team of five in developing personal Pick and Place circuit assembly tool
  • ~$95k in revenue for FY`14



1. Embedded Systems

  • CAD Tools: Eagle, Quadcept
  • Compilers/Microcontrollers: PIC(Microchip), Atmel, Freescale, Stellaris(TI)
  • Real Time: FreeRTOS, Linux CONFIG_PREEMPT_RT
  • Embedded Linux: OpenWRT, Android Internals
  • Contract manufacturing coordination

2. Languages / Tools

  • Fluent
    • Python: Flask, SQLAlchemy, WTForms, PyMongo, Redis-Py,
    • C/C++
  • Familiar: Javascript, Java, Make/Bash, Matlab, Lisp
  • Custom/Domain Specific Language Tools: LLVM, Flex/Bison, Ragel
  • Databases: MySQL, Redis, MongoDB
  • Editor: VIM
  • Version Control/CI: Git, Jenkins, Fabric
  • Linux (12+ years experience)



1. Pydis

Pydis provides a transparent access mechanism for Redis from Python. It exposes Redis primitives (lists, hashes) by overriding the built in native access mechanism for the equivalent Python type. It uses the redis-py library to facilitate the data exchange and passes through any connection options redis-py is capable of handling.



1. A Common Interface for Humanoid Simulation and...

A Common Interface for Humanoid Simulation and Hardware

Robert Ellenberg & Robert Sherbert

IEEE-RAS International Conference on Humanoid Robots

December 2010


Humanoid robotics development often depends on simulation and prototypes for new walking algorithms. The advantages of simulation such as low cost and risk make repeated experiments and development more straightforward. However, real world implementation can require extensive porting to move from a simulation environment to a hardware platform. This tedious task can be a huge time sink that drastically slows development cycles. This paper describes a way to eliminate this bottleneck. By developing standardized protocols for motors and sensors, a software controller can communicate with both platforms using the same interface.


2. Conductor: Controller Development Framework

Conductor: A Controller Development Framework for High Degree of Freedom Systems

IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)

September 25, 2011


This paper details a new robotics programming framework called Conductor. The framework is unique in that it represents the hardware-software interface, and a user’s interaction with that interface, in terms of state variables. Within Conductor hardware is represented to the user by its states of interest, with all other interface concerns abstracted to the greatest extent possible. This representation is enabled by a five-layered component structure which this paper describes. The structure of the program allows a designer to take advantage of bandwidth-saving optimizations in high degree of freedom cases and significantly improve performance over that of current tools.



1. Bachelor of Science, Electrical Engineering

Drexel University

2. Master of Science, Electrical Engineering

Drexel University, 3.9