hardware developer