Profesión desarrollador de software / desarrolladora de software

Los desarrolladores de software implementan todos los tipos de sistemas de software basados en especificaciones y diseños, utilizando lenguajes, herramientas y plataformas de programación.

¿Le gustaría saber qué tipo de carrera y profesiones le conviene mejor? ¡Haga esta test de orientación profesional gratuito y recibirá los resultados de inmediato!

Tipos de personalidades

Conocimientos

  • Herramientas para la gestión de la configuración del software

    Los programas de software como CVS, ClearCase, Subversion, GIT y TortoiseSVN llevan a cabo las gestiones consistentes en la identificación, el control, el informe de estado y la auditoría de configuración.

  • Gestión de proyectos

    Comprender la gestión de proyectos y las actividades que caracterizan este ámbito. Conocer las variables que intervienen en la gestión de proyectos, como el tiempo, los recursos, los requisitos, los plazos y la respuesta a imprevistos.

  • Principios de ingeniería

    Los elementos de ingeniería como la funcionalidad, la replicabilidad y los costes relacionados con el diseño y cómo se aplican en la realización de proyectos de ingeniería.

  • Dibujos técnicos

    Software de diseño y los diversos símbolos, perspectivas, unidades de medida, notación, sistemas de notación, estilos visuales y esquemas de página utilizados en dibujos técnicos.

  • Herramientas de depuración de las TIC

    Herramientas de TIC utilizadas para probar y depurar programas y códigos de software, como GNU Debugger (GDB), Intel Debugger (IDB), Microsoft Visual Studio Visufger, Valgrind y WinDg.

  • Programación informática

    Las técnicas y principios de desarrollo de software, como análisis, algoritmos, codificación, ensayos y compilación de modelos de programación (por ejemplo, programación orientada a objetos, programación funcional) y de lenguajes de programación.

  • Software de entorno de desarrollo interactivo

    El conjunto de herramientas de desarrollo de software para escribir programas, como compiladores, depuradores, editores de código, resúmenes de código, reunidos en una interfaz de usuario unificada, como Visual Studio o Eclipse.

  • Procesos de ingeniería

    El enfoque sistemático de desarrollo y mantenimiento de los sistemas de ingeniería.

Capacidades

  • Desarrollar métodos de migración automatizada

    Crear una transferencia automatizada de información de las TIC entre los distintos tipos, formatos y sistemas de almacenamiento para ahorrar recursos humanos de la ejecución de la tarea manual.

  • Gestionar proyectos de ingeniería

    Gestionar los recursos, el presupuesto, los plazos y los recursos humanos del proyecto de ingeniería, así como las actividades técnicas pertinentes para el proyecto.

  • Proporcionar documentación técnica

    Preparar documentación sobre los productos o servicios existentes y futuros, describiendo sus funciones y su composición, de un modo que resulte comprensible para una amplia audiencia sin formación técnica y que cumpla los requisitos y normas establecidos. Mantener actualizada la documentación.

  • Crear diagrama de flujo

    Elaborar un diagrama que ilustre el progreso sistemático mediante un procedimiento o sistema que utilice líneas conectoras y un conjunto de símbolos.

  • Analizar especificaciones de software

    Evaluar las especificaciones de un producto o sistema de software que vaya a desarrollarse mediante la identificación de los requisitos funcionales y no funcionales, las restricciones y los posibles conjuntos de casos prácticos que ilustran las interacciones entre el software y sus usuarios.

  • Utilizar patrones de diseño de software

    Emplear soluciones reutilizables, las mejores prácticas formalizadas, para la resolución de las tareas comunes de desarrollo de las TIC en el desarrollo y el diseño de software.

  • Interpretar los requisitos técnicos

    Analizar, comprender y aplicar la información facilitada en relación con las condiciones técnicas.

  • Utilizar software de dibujo técnico

    Crear diseños técnicos y dibujos técnicos con el empleo de software especializado.

  • Utilizar herramientas de ingeniería de software asistida por ordenador

    Utilizar herramientas de software (CASE) para respaldar el ciclo de desarrollo, el diseño y la implementación de software y aplicaciones de alta calidad que puedan mantenerse fácilmente.

  • Realizar investigación científica

    Obtener, corregir o mejorar el conocimiento sobre fenómenos con el empleo de métodos y técnicas científicos, basados en observaciones empíricas o cuantificables.

  • Desarrollar un prototipo de software

    Crear una primera versión incompleta o preliminar de una aplicación informática para simular algunos aspectos específicos del producto final.

  • Utilizar bibliotecas de software

    Utilizar colecciones de códigos y paquetes de software que capturan rutinas de uso frecuente para ayudar a los programadores a simplificar su trabajo.

  • Identificar requisitos del cliente

    Aplicar técnicas y herramientas, como encuestas, cuestionarios y aplicaciones de las TIC, para averiguar, definir, analizar, documentar y mantener los requisitos de los usuarios en cuanto a sistemas, servicios o productos.

  • Definir requisitos técnicos

    Especificar las propiedades técnicas de los bienes, los materiales, los métodos, los procesos, los servicios, los sistemas, el software y las funcionalidades, identificando y respondiendo a las necesidades particulares que deben satisfacerse en función de las necesidades del cliente.

  • Depurar software

    Reparar códigos informáticos analizando los resultados de las pruebas, localizando los defectos que causan que el software produzca un resultado incorrecto e inesperado y eliminar estos fallos.

Conocimientos y capacidades optativas

ml sas language migrar datos existentes php r utilizar programación automática scratch vbscript xcode sap r3 estándares del consorcio world wide web microsoft visual c++ salt ajax openedge advanced business language visual basic asp.net pascal javascript groovy internet de las cosas apl ruby puppet scala abap diseño orientado a objetos assembly integrar componentes del sistema cobol anomalías del software utilizar aprendizaje automático jenkins c++ ansible kdevelop smalltalk prolog matlab adaptarse a los cambios de los planes de desarrollo tecnológico typescript eclipse perl python objective-c haskell java swift utilizar programación funcional concebir ideas creativas utilizar programación orientada a objetos common lisp apache maven c# coffeescript lisp utilizar programación concurrente erlang utilizar programación lógica diseñar una interfaz de usuario recopilar las opiniones del cliente sobre las aplicaciones staf legislación sobre seguridad de las tic