Profile

Sherbert Bob

Bob Sherbert

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

Experience

June 2013 - present

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

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

August 2011 - July 2013

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
September 2007 - August 2011

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
June 2010 - September 2010

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
June 2009 - September 2009

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

Skills

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)

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

Software

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

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.

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.

Education

Hackaday Interview

Hackaday Interview

Carbide
Conductor Multi-Robot Symmetry

Conductor Multi-Robot Symmetry

Robots
Conductor Box Lift

Conductor Box Lift

Robots
Conductor

Conductor

Robots
Page 1 of
Contact info
AddressCollingswood, NJ
Phone609.373.2827
Websitepnp.carbidelabs.com

Let's keep in touch