¿Cuáles son las diferencias entre desarrollar productos de hardware y productos de software?

  1. Velocidad. El hardware toma más tiempo para construir, probar y luego producir en masa en la fábrica. 9-12 meses para un producto “simple” a escala. El software puede ser semanas o días.
  2. Medición. El software le permite medir el uso y hacer ajustes. El hardware (al menos cuando lo hice) se desconectó, por lo que tiene datos limitados sobre cómo se usa el producto y si funciona bien.
  3. Usabilidad y pruebas AB. Con el hardware, los prototipos de trabajo de alta fidelidad también son caros, por lo que no sabe cómo resultará realmente el producto hasta el final del proceso. La iteración basada en los comentarios de los usuarios debe ser con papel y prototipos de baja fidelidad en lugar de componentes de producción. En el software, puede obtener la entrada del usuario y la prueba AB para comprender realmente cómo funcionan las diferentes versiones de software. No se puede con el hardware porque el costo incremental de una versión es alto y no se puede controlar quién obtiene qué.
  4. Arreglos. Realmente difícil con el hardware ya que no puedes parchear ni actualizar. Básicamente qué para el próximo producto o hacer un retiro si se trata de un problema de seguridad.
  5. Costo. El hardware tiene costos unitarios reales. El software se trata realmente de los costos iniciales y continuos de las personas para administrar el código. Entonces, con el hardware, tenderá a ser más conservador porque si construye algo que no se vende y cada unidad cuesta mucho, podría perder una tonelada de dinero en inventario no vendido. Entonces hay menos margen de error.

Básicamente, el hardware es difícil (pero seguro es divertido hacer cosas reales :)).

Si comete un error en SW, simplemente vuelva a hacerlo. Si comete un error en el diseño del hardware, hacerlo nuevamente es mucho más costoso.
Prototipo:
Vuelva a hacerlo, espere algunas semanas para obtener nuevos PCB y pague nuevamente los costos de instalación.
Producción en masa:
No hay actualización remota de hardware como con un sistema operativo Windows o con una aplicación en su teléfono inteligente. Un hardware incorrecto permanecerá incorrecto y no puede repararse de forma remota.