Software Engineering for Experimental Robotics