Sherbert Bob

Bob Sherbert

Name:Sherbert Bob
Date of birth:
Address:Collingswood, NJ
Phone:609.373.2827
Email:bob.sherbert@gmail.com

Experience

2009-2009

1. Lawrence Livermore National Laboratory

Intern
  • 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
2010-2010

2. Hubo Lab

Researcher
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
2007-2011

3. Drexel Autonomous Systems Laboratory

Researcher
  • 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
2011-2013

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
2013-present

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
2013-2015

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

Skills

-

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)

Software

-

1. Pydis

https://github.com/bob2827/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.

Publications

-

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

IEEEXplore PDF

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

IEEEXplore  PDF

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.

Education

2006-2011

1. Bachelor of Science, Electrical Engineering

Drexel University
2006-2011

2. Master of Science, Electrical Engineering

Drexel University, 3.9