¿Puede un ingeniero de software hacer sus carreras en IA, Big Data, HCI?

¿Está preguntando si hay trabajos en estos campos, o si alguien con habilidades de ingeniería de software podría llegar a esos campos? Las respuestas son similares, así que cubriré ambas.

Big Data es Big Hype en este momento. Pero es más que solo palabras de moda para los escáneres de currículums para buscar. Los potentes sistemas informáticos y la conectividad ubicua han ayudado a crear grandes cantidades de datos. Muchas empresas e instituciones educativas comenzaron a recopilar los datos antes de saber con certeza qué harían con ellos. La capacidad de extraer esos datos para extraer información significativa es una habilidad muy valiosa. Dicho esto, la ingeniería de software es solo una parte del ADN de una superestrella en ese campo. También necesitan pensar algorítmicamente como dice Dima a continuación, tener una sólida comprensión de las estadísticas y una capacidad casi psíquica para ver patrones en los datos. Las personas que pueden utilizar sistemas de big data para discernir tendencias y predecir resultados tendrán una gran demanda.

La IA es, por supuesto, un campo de crecimiento, aunque muchas de las cosas etiquetadas como AI son cualquier cosa menos y muchos de los proyectos que son verdaderas aplicaciones de AI se esconden de esa etiqueta. Piensa Skynet! La IA cubre muchas disciplinas relacionadas. Por ahora, centrémonos en subconjuntos de IA, como el aprendizaje automático o el procesamiento del lenguaje natural. Hay grandes carreras en esos campos. Una vez más, la ingeniería de software es solo una parte del conjunto de habilidades necesarias. Muchas personas que trabajan con el aprendizaje automático tienen una gran formación científica o algún conocimiento específico de dominio. Hay muchos tipos de trabajos desde el extremo inferior del espectro: personas que proporcionan contenido para los sistemas (piense que los usuarios ganan unos cuantos dólares haciendo tareas en el Mechanical Turk de Amazon) a los arquitectos y científicos que diseñan e implementan el software. Dejando a un lado los problemas éticos y sociales relacionados con la IA por un momento, es probable que haya un crecimiento explosivo aquí, ya que resolver problemas complejos requerirá sistemas de IA impulsados ​​por el aprendizaje automático masivamente paralelos (piense en “curar el cáncer”).

Por último, la interacción hombre-computadora es como los otros dos temas. Se necesitan ingenieros de software para construir sistemas para experimentar, explorar e implementar nuevas formas de interacciones humano-computadora efectivas. Pero nuevamente, como los dos anteriores, la ingeniería de software es solo una de muchas habilidades. Se necesitan psicólogos, lingüistas, usabilidad …

En un trabajo reciente, participé como Arquitecto Jefe de Software en un proyecto que abarcó las tres áreas sobre las que pregunta. El trabajo consistió en la creación de sistemas para recopilar datos sobre el afecto humano (emociones) utilizando un sistema HCI de recolección de grandes datos basado en aprendizaje automático. Entonces sí, hay trabajos y sí, algunos de esos trabajos involucran ingeniería de software. ¡El hecho de que esté haciendo esta pregunta me sugiere que tiene una buena idea de las tecnologías emergentes que generarán empleos convincentes, emocionantes y bien remunerados!

Sí, y especialmente lo diría a los ingenieros con experiencia en algoritmos.

Mi historia era simple y podría ayudar.

Solía ​​disfrutar mucho las competencias de programación y rápidamente me di cuenta de que en el mundo “real”:

  • Los sistemas empresariales no son para mí.
  • La interfaz de usuario no es para mí.
  • El SEO no es para mí.
  • Las aplicaciones web no son para mí.

Quería tener algoritmos para estar entre las mejores habilidades requeridas para mi trabajo diario.

Descontando la criptografía, pronto se hizo evidente que:

  • Los algoritmos tendrían que ser paralelos y ejecutarse en muchas máquinas.
  • Los algoritmos no tienen que ser exactos, las aproximaciones suelen estar bien en el mundo real:

Esto no deja muchas áreas. Casi solo dos:

  1. Infraestructura de alto rendimiento.
    Tanto la cocción de datos fuera de línea como la respuesta a consultas en línea con estrictos acuerdos de nivel de servicio.
  2. Aprendizaje automático / Minería de datos.
    Ahí es donde terminas si te gusta codificar cosas no triviales y sientes que, por desgracia, la ingeniería del software no tiene mucho que ver.

Así que estoy haciendo Big Data, que combina lo anterior, y no me arrepiento.

¡Otras dos opciones sobre las que está preguntando pueden funcionar bien también! 😉

Puede ser seguro, pero para ser detallado y proporcionar una mejor hoja de ruta, debe considerar realizar una gran inversión en el estudio de nuevos conceptos especialmente para AI y Big Data. Cuanto más aprendas, más poderoso serás.

Creo que está preguntando esto, porque usted (un ingeniero de software) quiere cambiar su forma de ser (por ejemplo) un Big Data Scientist (o Data Analyst).

Entonces, mi primera oferta para usted es elegir “Big Data”, ya que tiene un mercado de rápido crecimiento y larga duración.

Y como segunda consulta, enumero algunos recursos para que sea más fácil sumergirse en el fabuloso tema:

  • Big Data | Coursera
  • Cursos de análisis, Big Data y Data Science
  • Data Science Central

Feliz estudiando!

Definitivamente, un ingeniero de software puede hacer sus carreras en IA / Big Data, etc.

La inteligencia artificial y el aprendizaje automático dependen de grandes cantidades de datos. Pero los grandes datos son difíciles de organizar y analizar. El siguiente artículo lo ayudará a comprender las tendencias de big data que los expertos buscan en el próximo año, cuando se trata de datos.

5 tendencias de Big Data que darán forma a la IA en 2017 – Fusion Analytics World