Estás haciendo una pregunta como cuál es la diferencia entre el trabajo de un camionero y un repartidor de flores. Al final del día, ambos tienen que mover cosas del punto A al B.
“Escribir código de una forma u otra” simplifica enormemente las funciones de los ingenieros de software y los científicos de datos. Ambas funciones son sustancialmente más que solo escribir código.
El deber principal de un científico de datos es descubrir qué datos se pueden usar y cómo responder ciertas preguntas, antes de escribir cualquier código que lo haga. Un científico de datos presenta formas creativas de usar datos, formas de visualizar e interactuar con datos, y contar historias a partir de datos. Sucede que necesitan usar computadoras para hacer esto en escala, por lo que tienen que escribir software de vez en cuando. Pero cuando lo hacen, generalmente escriben prototipos rápidos. Muy rara vez escriben software de producción que sirva a los clientes directamente. Eso suele dejarse para los ingenieros de software. Los científicos de datos a menudo no están capacitados en ciencias de la computación o ingeniería, pueden tener experiencia en matemáticas o ciencias naturales, por ejemplo.
- ¿Los ingenieros de software mejoran en la programación con la edad?
- ¿Cuál es la demanda de ingenieros de software en Sri Lanka?
- ¿Por qué se discute la complejidad del tiempo con más frecuencia que la complejidad del espacio?
- ¿La cantidad de código fuente producido por la humanidad convergerá alguna vez?
- ¿Cómo es trabajar como ingeniero de software en Microsoft, Dubai?
El rol de un ingeniero de software también va mucho más allá de escribir código. Implica analizar casos de uso, diseñar arquitecturas, preocuparse por la calidad del software, diseñar pruebas unitarias, etc. antes de comenzar a escribir código. Un buen ingeniero de software no solo escribe código, sino que se asegura de que la base del código sea escalable, bien documentada, comprobable, sostenible, etc. Estas son habilidades que los científicos de datos no suelen tener, y en la mayoría de los casos no tienen tener.
Considere el análogo de construir un puente: el trabajo de los científicos de datos es descubrir que necesitamos cruzar el río, y la mejor manera de hacerlo es construir un puente y tal vez intentar construir un puente de madera horrible para demostrar que es posible. El trabajo de un ingeniero de software es diseñar y construir un puente real, y asegurarse de que no se derrumbe.
Entonces sí, mientras que al final del día, tanto un ingeniero de software como un científico de datos pueden terminar escribiendo código de una forma u otra, escriben tipos de código totalmente diferentes. La programación es una herramienta que tanto los ingenieros de software como los científicos de datos terminan usando. Pero su trabajo y habilidades son muy diferentes, aunque se superponen. Estas habilidades complementarias son la razón por la que a menudo ve a los escultores de datos trabajando en colaboración con ingenieros de software.
Un gran resumen de científicos de datos: http://oreil.ly/zVwKNr
Lea también más sobre ingeniería de software en, por ejemplo, Wikipedia http://en.wikipedia.org/wiki/Sof…