¿Qué hace a un programador efectivo y rentable? (cualquier tipo)

Emmanuel Ezeh ya tiene una excelente respuesta. Solo agregaré un par de cosas específicas.

  • La programación es la cosa número uno que lo hará mejor en la programación.
  • Más tiempo dedicado no significa necesariamente un mejor código. Lo que quiero decir es que trabajar largas horas generalmente no es bueno. Algunos empleadores no entienden esto, pero trabajar 14 horas no ofrece un código mejor o incluso más. De hecho, generalmente da peor.
  • Dormir es importante. Si no duermes, tu cerebro no funciona bien.
  • Lo mismo con la comida. Comer. No coma solo comida chatarra.
  • Beber agua. Las bebidas energéticas son malas energías y te dejarán estrellado.
  • Ejercicio. Estar sano hace que su cerebro funcione mejor, y el ejercicio libera químicos en su cerebro para hacerlo feliz y capaz de relajarse. ¿Tienes algún problema para volverte loco? Sal a correr o levanta pesas. Regrese al problema y tal vez descubra que su cerebro renovado puede destruirlo. El estereotipo de nerd masivamente fuera de forma necesita dejarse en el pasado para siempre.

En mis observaciones, los mejores programadores que he encontrado utilizan cada oportunidad para comprender realmente lo que está sucediendo.

Buscan esta comprensión hasta el final de la pila, hasta el hardware físico. Entienden cómo funciona el almacén de datos, cómo se accede y almacena la memoria, y cómo funciona cada una de las capas de software para construir una plataforma para usted. Entienden (o trabajan para comprender) las estructuras de datos. Y cada vez que las cosas no funcionan de la forma esperada, hacen pequeños experimentos para descubrir por qué.

Lo segundo que diría es que programan, constantemente, y practican su oficio.

Lo tercero que he observado es que los programadores experimentados entienden lo que está haciendo el código y pueden hacer cambios a gran escala en el código, incluso mientras respetan la intención original. Puedes ver cuán experimentado es alguien por cuán grande es el cambio de escala que puede hacer. Pero no se trata solo de hacer grandes cambios, sino también de comprender lo que estaba haciendo la persona anterior. Entonces, para volverse altamente calificado, se requiere leer mucho código. Lo que se remonta al segundo punto.

Un programador efectivo es aquel que puede hacer la mayor parte de lo siguiente:

  1. Tiene una comprensión muy sólida del algoritmo y la estructura de datos.
  2. Puede programar en más de un idioma.
  3. Puede traducir fácilmente un requisito comercial en un prototipo funcional.
  4. Comprenda cuándo decir ‘No’ a un requisito, proporcionando consejos razonables sobre por qué ciertas características no son técnicamente necesarias.
  5. Comprende la gestión del tiempo.
  6. Puede comunicarse eficazmente con el resto del equipo sin parecer vago.
  7. Le apasiona ayudar a otras personas cuando tienen problemas con su código, sin ser sarcástico.
  8. Escribe código limpio y fácil de mantener que puede ser legible para otros.
  9. Hace un esfuerzo adicional para implementar una característica necesaria, sin cortar esquinas, cuando la solución tiende a ser difícil de lograr.
  10. Tiene integridad y no está dispuesto a usar sus habilidades en detrimento de otros o de su empleador.

Bonificación: voluntad de aprender de los demás, no importa cuán bueno él / ella piense que es. Sobre todo apasionado por la codificación y apegarse a las mejores prácticas de codificación.