Focos

Títulos similares

Ingeniero de software, desarrollador de aplicaciones, arquitecto de software, programador informático, programador de juegos, desarrollador de software para juegos

Descripción del puesto

Los desarrolladores de software son las mentes creativas que están detrás de los programas informáticos. Algunos desarrollan las aplicaciones que permiten realizar tareas específicas en un ordenador u otro dispositivo. Otros desarrollan los sistemas subyacentes que hacen funcionar los dispositivos o que controlan las redes.

Aspectos gratificantes de la carrera profesional
  • Posibilidad de crecer en la empresa elegida
  • Capacidad para hacerse cargo de proyectos e influir en los demás
  • Amplíe sus conocimientos tecnológicos cada día
  • Capacidad para influir directamente en el crecimiento de una empresa
$102,280
Título
2016 Empleo
1,256,200
2026 Empleo proyectado
1,558,700
La primicia
Responsabilidades laborales
  • Analizar las necesidades de los usuarios y, a continuación, diseñar, probar y desarrollar software que satisfaga esas necesidades.
  • Recomendar actualizaciones de software para los programas y sistemas existentes de los clientes.
  • Diseñar cada pieza de una aplicación o sistema y planificar su funcionamiento conjunto
  • Crear una variedad de modelos y diagramas (como diagramas de flujo) que muestren a los programadores el código de software necesario para una aplicación.
  • Garantizar que un programa siga funcionando con normalidad mediante el mantenimiento y las pruebas del software.
  • Documentar todos los aspectos de una aplicación o sistema como referencia para futuras tareas de mantenimiento y actualizaciones.
  • Colaborar con otros informáticos para crear programas óptimos

Diferentes tipos de promotores

  • Desarrolladores back-end: responsables de la construcción técnica general del sitio web.
  • Desarrolladores front-end: responsables del aspecto de un sitio web (diseño y gráficos).
  • Webmasters: mantenimiento y actualización de sitios web
Conocimientos necesarios
  • Concentración
  • Creatividad
  • Capacidad de atención al cliente
  • Orientación al detalle
  • Conocimiento profundo de HTML, herramientas de publicación multimedia y lenguajes de programación.
  • Flexibilidad
  • Aprende rápido
  • Capacidad para adaptarse rápidamente a los cambios
Expectativas y sacrificios
  • Expectativas: capacidad para aprender sobre la marcha y entregar código de calidad y mantenible.
  • Sacrificios: tener que rellenar los huecos y ayudar a otros miembros del equipo, además de las propias responsabilidades, especialmente cuando se trabaja con requisitos poco claros de las empresas de productos.
Diferentes tipos de organizaciones
  • Empresa tecnológica (no importa si es una gran empresa o una startup): es decir, Google, Facebook
  • Organizaciones que se ocupan de operaciones que pueden realizarse mediante programación (cada vez hay más organizaciones que se ajustan a esta descripción).
  • Posibilidad de crear su propia startup
  • Puede trabajar como autónomo para varias empresas
  • Taller de desarrollo
Tendencias actuales
  • Inteligencia Artificial que hace el software/aplicación/sistema más inteligente día a día
  • Aprendizaje automático integrado para que las máquinas piensen como los humanos
  • Ejemplos de este software: Asistente de Google, Siri, Alexa
  • Grandes datos
  • Desarrollo de software de código abierto: El código fuente original del código abierto está disponible y puede redistribuirse y modificarse, lo que lo convierte en la clave de la innovación en diversos ámbitos. La publicación de código abierto no sólo nutre a empresas individuales, sino que hace evolucionar, crea y a veces destruye industrias enteras. Utilizar el código abierto, hacer que tus proyectos sean de código abierto y formar parte activa de la comunidad del código abierto es una forma necesaria de mantenerse al día con la tecnología y formar parte de una comunidad más amplia.[www.oreilly.com]
  • Interrupción y reensamblaje de la infraestructura: Estos nuevos programas permiten a los ingenieros de software centrarse en hacer crecer el negocio en lugar de preocuparse por si los "órganos internos" funcionan correctamente o no: XaaS, arquitectura sin servidor, sistemas distribuidos, contenedores y microservicios. Utilizar servicios de terceros como OpenStack por su potencia de cálculo, construir microservicios reactivos para compartimentar y centrar segmentos de su arquitectura para crear un entorno mucho más resistente y escalable, y desplegar software de forma continua con herramientas nativas de la nube como Docker y Kubernetes.[www.oreilly.com]
  • Aprendizaje automático: OpenAI (Elon Musk), Watson (IBM), TensorFlow (Google) y CNTK (Microsoft) han creado nuevos e interesantes productos (Alexa) y paradigmas (apps impulsadas por voz), y automatización de infraestructuras, provocando que el Machine learning vuelva a calentarse oficialmente y para bien esta vez.[www.oreilly.com]
  • Diseño orientado al cliente: "Poner al cliente en primer lugar conduce siempre al éxito"[www.oreilly.com]
¿Qué tipo de cosas le gustaba hacer a la gente de esta carrera cuando era más joven...
  • Disfrutar jugando / resolviendo problemas
  • Interés por la ciencia
  • Pasión por la programación
  • Deseo de descubrir nuevas ideas y adquirir tantos conocimientos como sea posible.
  • Bibliotecas frecuentadas
  • Disfrutaba hablando con amigos durante horas sobre ideas, descubrimientos, libros
  • Interés por el desarrollo de habilidades, la lluvia de ideas, la lectura y la concienciación medioambiental

"Me gustaban bastante los juegos, y estoy seguro de que eso también fue un factor al final, pero en realidad me gustaban más las ciencias cuando era más joven. Fui a la universidad a estudiar ingeniería química antes de cambiarme. La chispa y la pasión por la programación probablemente vinieron de mi curso de programación en el instituto, donde disfruté mucho con los problemas que se presentaban, así como desglosándolos de forma lógica, como las complejidades de crear una pecera simulada." Leon Ho, ingeniero de software en OpenX

Educación y formación necesarias
  • Los ingenieros de software pueden empezar con una licenciatura en informática o estudios afines.
  • Los puestos avanzados pueden requerir un máster
  • Las prácticas de Ingeniero de Software son muy útiles para aprender a la vez que se adquiere experiencia práctica
  • Existen numerosos certificados relacionados con la Ingeniería de Software, entre los que se incluyen:
    • Programa de formación inicial en ingeniería de software Springboard
    • Profesional certificado en el ciclo de vida seguro del software
    • Certificación de desarrollador de software profesional
    • Profesional de Desarrollo Web CIW
    • Maestro certificado por Oracle
    • Arquitecto de soluciones Azure certificado por Microsoft
  • O*Net enumera una amplia gama de competencias tecnológicas necesarias, incluidos varios tipos de software, como acceso, analítica, servidor de aplicaciones, copias de seguridad, inteligencia empresarial, acceso a datos basado en la nube, servidor de comunicaciones, gestión de la configuración, flujo de trabajo de contenidos, gestión de bases de datos, minería de datos, entorno de desarrollo, planificación de recursos empresariales y muchos más.
Cosas que hacer durante el instituto/universidad
  • Resuelve puzzles, juega al ajedrez y a otros juegos de estrategia y lee
  • Analizar cómo funcionan las cosas en la vida cotidiana; ejemplo: la gravedad.
  • Empezar a explorar cómo enfocar los problemas y resolverlos de forma lógica, junto con estructuras de datos y algoritmos.
  • Los proyectos de código paralelo también son siempre una ventaja
  • Los temas comunes de las clases incluyen matemáticas avanzadas, AP Cálculo, AP Estadística, AP Física, ingeniería, física, y un montón de cursos de ciencias de la computación, tales como fundamentos de programación, estructuras de datos, introducción a los algoritmos, sistemas operativos, arquitectura de computadores, Interacción Humano - Computadora, y matemáticas discretas.
  • Estudia frameworks como React, Angular, Express y Rails
  • Los lenguajes de programación más utilizados por los ingenieros de software son Java, Python, JavaScript, C++ y Scala.
  • Decide si quieres detenerte en una licenciatura y luego solicitar trabajo, o seguir adelante con un máster primero.
  • Trabaja en las certificaciones pertinentes que quieras completar antes de buscar trabajo
  • Cree un sitio web de portafolio para mostrar su trabajo con casos prácticos
  • Únete a clubes informáticos escolares donde puedas intercambiar información y mantenerte motivado.
  • Aprende en tu tiempo libre con vídeos, libros y proyectos paralelos
  • Solicite trabajos de Ingeniero de Software en prácticas para adquirir experiencia real
  • Trabaja en el borrador de tu currículum a medida que vas superando hitos académicos y laborales
Cómo conseguir tu primer empleo
  • Pedir recomendaciones a los profesores
  • Aprovechar las oportunidades de los autónomos
  • Presente su candidatura a ofertas de empleo en empresas tecnológicas
  • Experimentar con distintos sectores
  • Poner en marcha tu propia startup con una visión y un plan de negocio claros (puedes utilizar Kickstarter para financiarte)
  • Utilizar las redes sociales para establecer contactos en el sector
  • Construye perfiles en portales de empleo como Monster, Indeed, Glassdoor, Zippia, así como en sitios relacionados con las TI como Machine Hack, MLconf Job Board, Stack Overflow, AngelList y DataJobs. No olvides utilizar también LinkedIn.
  • Solicita puestos subalternos hasta que tengas suficiente experiencia para optar a puestos avanzados.
  • Fíjate en las palabras clave utilizadas en los anuncios de empleo. Incorpórelas a su currículum.
  • Echa un vistazo a las plantillas de currículum de ingeniero de software para obtener ideas sobre la redacción
  • Pregunte previamente a sus posibles referencias antes de facilitar sus datos de contacto.
  • Prepárese para las entrevistas leyendo las preguntas de la entrevista a un ingeniero de software
  • Sea usted mismo durante las entrevistas y deje que brille su personalidad. La competencia técnica es importante, pero también lo es la adecuación cultural. Debes asegurarte de que tú y la empresa a la que te presentas encajáis bien.
Cómo seguir siendo competitivo y permanecer en el juego
  • Conozca las nuevas tecnologías
  • No tiene por qué limitarse a su trabajo, puede ser cualquier cosa que agudice su capacidad para resolver problemas.
  • La capacidad de adaptación es muy importante
  • Mentes brillantes que pueden pivotar rápidamente

Requisitos:

  • Formación en escuelas de formación profesional, experiencia en el puesto de trabajo o titulación de grado medio.
  • Habilidades, conocimientos o experiencia previos relacionados con el trabajo ne o dos años de formación que incluyan tanto experiencia en el puesto de trabajo como formación informal con trabajadores experimentados, es decir, un programa de aprendizaje reconocido.
  • Gran capacidad de comunicación y organización para coordinar, supervisar, gestionar o formar a otras personas en la consecución de objetivos, como directores de producción hidroeléctrica, guías de viaje, electricistas, técnicos agrícolas, barberos, niñeras y asistentes médicos.
Plan B
  • Analistas de seguridad de la información
  • Fundador de una empresa tecnológica
  • Agente de patentes
  • Abogado de patentes
Infografía

Haga clic aquí para descargar la infografía

Desarrollador de software GladeoGraphix

Noticias

Cursos y herramientas en línea