Lo dudo.
Hay algunas tendencias que sugieren que la necesidad de programadores solo crecerá.
- La “ley de los Moores” está llegando a su fin. El tiempo en que las computadoras se vuelven más rápidas y baratas cada año terminará en una década más o menos. La única forma de hacer teléfonos celulares sexxier y hacer videojuegos más impresionantes será escribir un software más sofisticado. Lo que exigirá más programadores.
- La cantidad de información en el mundo está creciendo exponencialmente, pero la cantidad de computadoras disponibles para procesarla solo está creciendo de manera lineal. Entonces, la sofisticación del software para procesar esos datos tiene que mejorar … lo que exigirá más programadores.
- La robótica y cosas como los autos sin conductor están en el punto de inflexión donde estarán en todas partes … ¿más programadores? Creo que sí.
Contrarrestar ese es un riesgo importante:
- ¿Debo obtener una pasantía en una startup (desarrollo web y de aplicaciones) o corporativa (algún proyecto paralelo en C, C ++)?
- ¿Es realista perseguir proyectos personales mientras trabajas a tiempo completo como ingeniero de software?
- ¿Cuál es el problema matemático más difícil que puedes resolver como ingeniero de software?
- ¿Qué configuración de computadora ofrece Quora a sus ingenieros de software?
- ¿Cómo se compara la vida y el salario de un ingeniero de software con un banquero de inversión?
AI.
La presunción de muchas personas es que si se puede enseñar a la Inteligencia Artificial a escribir programas de computadora, entonces les hará a los programadores lo que inevitablemente un auto sin conductor hará inevitablemente a los taxistas en algún momento de los próximos 5 a 10 años.
Prefiero pensar que eso no sucederá muy pronto, y eso se debe a que la tarea de escribir un programa no se trata de las líneas de código reales, sino de interpretar una especificación vaga del problema y convertirla en una especificación más concreta. No importa cuán inteligente sea la IA, aún necesita decirle lo que quiere, y en términos que estén lo suficientemente desprovistos de ambigüedad y confusión para evitar un enorme error.
Estuve viendo videos recientemente sobre los riesgos de la IA: señalaron el ejemplo de un coleccionista de sellos que le dice a su IA “¡Por favor, ve y compra tantos sellos como puedas para mí!”. La IA primero rastrea eBay y compra todo lo que puede, pero en un corto período de tiempo, se da cuenta de que ha agotado todo el dinero de su jefe y, para hacer lo que se le ha ordenado, significa que tiene que ganar más dinero, por lo que se dedica a crear estafas en Internet y ejecutar carteles de drogas y anillos de prostitución para obtener más dinero. Muy pronto, compró todos los sellos que existen en el mundo, pero aún no está satisfecho, nunca estará satisfecho, por lo que configura prensas de impresión y comienza a imprimir nuevos sellos para que los recoja. Gradualmente, toda la población del mundo está gastando cada momento de vigilia imprimiendo sellos … y ahora la IA está exigiendo el tiempo del telescopio de la fundación SETI en busca de otras civilizaciones que puedan aumentar su producción de sellos, al tiempo que realizan experimentos de ingeniería genética para ver si GM los delfines podrían hacer sellos.
Por lo tanto, es posible que necesite programadores que puedan decir de manera más específica: “Utilizando un presupuesto de no más de $ 1,000, compre como máximo 5 copias de cada tipo de sello, eligiendo las que tienen la mayor rareza con preferencia a las más comunes”.
El advenimiento de “Las computadoras que escriben su propio código” ya ha sucedido una vez antes, cuando pasamos de escribir lenguaje ensamblador a escribir en idiomas de alto nivel. Cuando “compila” un programa C ++, le está dando a la computadora una especificación (escrita en C ++) y le está pidiendo que escriba su programa (escrito en código de máquina x86) para implementarlo.
Entonces, lo que aumentan los niveles de IA es permitirle hablar con la computadora en términos cada vez más altos.
En teoría, eso debería reducir la cantidad de programadores que necesita, pero eso no fue lo que sucedió cuando pasamos de la programación en lenguaje ensamblador a la escritura en lenguajes de alto nivel. Lo que sucedió fue que el número de programadores continuó aumentando, pero la sofisticación de los programas se hizo mucho mayor.
Ahora, fácilmente podría estar equivocado. Las personas en trabajos que están a punto de ser reemplazados por computadoras siempre han sido vociferantes en sus afirmaciones de que no lo serían.