¿Qué aptitudes definen a los mejores programadores informáticos?

Consulte la Prueba de aptitud del programador de computadora para obtener más entradas.

Incluso si el aspirante no conoce las secuencias de comandos, es posible evaluar el potencial del aspirante a través de una prueba de aptitud. Los componentes típicos de tal prueba son:

Razonamiento abstracto :

  • Capacidad para aprender : las pruebas de razonamiento abstracto, incluida la inteligencia espacial y el razonamiento visual, indican la rapidez con que el examinado puede aprender nuevos conceptos. Cuando una empresa contrata a un programador informático, desea conocer la capacidad de aprendizaje del recluta. Dado que los lenguajes de codificación continúan evolucionando, es esencial que el programador aprenda los últimos idiomas.
  • Alta correlación con la capacidad de programación : el razonamiento espacial se refiere a la ubicación de los objetos, sus formas, sus relaciones entre sí y los caminos que toman a medida que se mueven. Estadísticamente, se ha notado que existe una correlación positiva entre la inteligencia espacial y la capacidad de programación.

RAZONAMIENTO LÓGICO / PENSAMIENTO CRÍTICO

Un programador necesita habilidades de razonamiento lógico para sobresalir en su trabajo. : Programar una computadora para realizar operaciones complejas probablemente requiera más habilidades de pensamiento crítico que casi cualquier otra actividad.

1] Comprender el objetivo del Programa :

Antes de poder escribir un programa de computadora para hacer algo , uno debe entender lo que Se supone que el programa debe cumplir. Se requieren habilidades de pensamiento crítico significativas simplemente para comprender lo que se debe hacer.

A menudo, los objetivos de un sistema de software no se describen en ningún idioma. Los desarrolladores de software deben entrevistar a los usuarios previstos del sistema para tratar de determinar lo que realmente se necesita. Este es a menudo un trabajo extraordinariamente difícil, que requiere habilidades de pensamiento crítico bastante sofisticadas.

2 ] Cumplimiento del objetivo :

Los programadores deben determinar, en detalle preciso, cómo se pueden lograr los objetivos determinados por el paso anterior de definir las necesidades.

3] Ejecutando los pasos correctamente:

Los codificadores deben expresar los pasos requeridos como un programa de computadora. Un programa de computadora es un texto en un lenguaje implacable, un lenguaje de programación. Los lenguajes de programación se interpretan más formal y literalmente que prácticamente cualquier otro idioma existente. La sintaxis y la semántica están rígidamente definidas. Todo debe ser correcto para que el programa funcione correctamente.

HABILIDAD VERBAL
La habilidad verbal es esencial porque la gramática y el vocabulario son un requisito previo para un buen inglés hablado y escrito.

RAZONAMIENTO VERBAL
La comprensión lectora indica la capacidad de comprender y razonar con los conceptos en una página escrita.

APTITUD CUANTITATIVA
La capacidad cuantitativa indicará pensamiento analítico y capacidad de resolución de problemas.

Sin contexto, esta es una pregunta imposible de responder con precisión. Existen muchos tipos o programadores y roles en los que las personas “programan”. Estos roles varían desde programadores de I + D puros, programadores de front-end, back-end y algoritmos hasta programadores de mantenimiento. Cada uno de estos tipos requiere un conjunto de habilidades diferente y, como resultado, se dibujan diferentes tipos de aptitud para los roles.

Como ejemplo, hace años, amigo mío, al fallar como programador de nivel de línea en una tienda estadounidense de tamaño medio, con base en Microsoft .NET, fue arrastrado a un proyecto de SharePoint cuando salía por la puerta. Un poco fallido al trabajar en las entrañas de MS C ++, SharePoint le permitió estar menos atrapado en la tecnología de programación y más involucrado en la interfaz de usuario y entregar proyectos rápidamente. Prosperaba en SharePoint y pronto renunció para abrir su propia consultoría en SharePoint y está más feliz y gana más dinero que la mayoría de todos en la tienda que dejó.

Por lo tanto, sugiero que hay pocas aptitudes que definen a los programadores. Los programadores son tan diversos como la raza humana de la que provienen.

  • creatividad
  • resolución de problemas (diseño de algoritmos, depuración)
  • humildad (falta de arrogancia)
  • atención a los detalles
  • curiosidad e impulso para nunca dejar de aprender
  • capacidad de anticipar entradas extrañas y casos de esquina (y programar defensivamente y escribir pruebas para garantizar que el código se comporte correctamente)
  • deseo de consistencia, limpieza del código y mantenibilidad
  • paciencia para hacer las cosas bien la primera vez
  • Conocer múltiples lenguajes, herramientas y marcos para que pueda anticipar cuáles probablemente simplificarán el desarrollo para cualquier problema en particular
  • La capacidad de comunicarse de forma precisa y concisa (tanto para la colaboración como para la documentación)
  • honestidad e integridad (admitir que necesita ayuda con un problema, no reclamar el código de otra persona como suyo, etc.)
  • álgebra básica y matemáticas discretas