El Programador Profesional
Autor: Uncle Bob
¿Qué es un programador profesional?
El rasgo más importante de un programador profesional es la
responsabilidad personal. Los programadores profesionales se
responsabilizan por su carrera, sus estimaciones, el compromiso con su
agenda, sus errores y su mano de obra. Un programador profesional no le
pasa la responsabilidad a los demás.
- Si eres profesional, entonces eres responsable de tu propia carrera.
Eres responsable de leer y aprender. Eres responsable de mantenerte
actualizado con la industria y la tecnología. Muchos programadores
piensan que es trabajo de sus patrones entrenarlos. Lo siento, están
tremendamente equivocados. ¿Crees que los médicos se comportan de esa
manera? ¿Crees que los abogados se comportan de esa manera? No, ellos se
entrenan en su propio horario, y con su propio dinero. Ellos gastan
muchas de sus horas libres leyendo revistas y tomando decisiones. Se
mantienen al día. Y así debemos hacerlo nosotros. La relación entre tú y
tu empleador está escrita claramente en tu contrato. En breve: prometen
pagarte y tú prometes hacer un buen trabajo.
- Los profesionales asumen la responsabilidad del código que escriben. No
liberan código a menos que sepan que funciona. Piensa en esto por un
minuto. ¿Cómo puedes considerar llamarte profesional, si estás esperando
liberar código del cuál no estás seguro? Los programadores profesionales
esperan que QA no encuentre algo porque no liberan su código hasta que
se ha probado completamente. Por supuesto, QA encontrará algunos
problemas, debido a que nadie es perfecto. Pero, como profesionales,
nuestra actitud debe ser: dejar nada para QA.
- Los profesionales son jugadores de equipo. Asumen responsabilidad de la
salida de todo el equipo, no sólo de su propio trabajo. Se ayudan unos a
otros, enseñan a los demás, aprenden unos de otros e, incluso, cubren a
los demás, si es necesario. Cuando un compañero cae, los demás
intervienen, sabiendo que algún día ellos van a ser los que necesiten
cobertura.
- Los profesionales no toleran grandes listas de errores. Tener una lista
así es ser descuidado. Los sistemas con cientos de issues en la base
de datos de seguimiento de problemas son tragedias por la falta de
cuidado. De hecho, en muchos proyectos, la propia necesidad de un
sistema de seguimiento de problemas es un síntoma de descuido. Sólo los
sistemas muy grandes deberían tener una lista de errores tan larga que
sea necesario la automatización para manejarla.
- Los profesionales no hacen un desastre. Se enorgullecen de su mano de
obra. Mantienen el código limpio, bien estructurado y fácil de leer.
Siguen estándares acordados y las mejores prácticas. Ellos nunca, jamás
se apresuran. Imagina que estás teniendo una experiencia “fuera de tu
cuerpo” y miras a un cirujano realizar una cirugía a corazón abierto en
ti. Este médico tiene un hora límite (en sentido literal). Debe terminar
antes de que la máquina de derivación corazón-pulmón dañe muchas de las
células sanguíneas. ¿Cómo quieres que se comporte? ¿Quieres que se
comporte como el típico desarrollador de software, apresurado y haciendo
un lío? ¿Quieres que diga: “regreso y lo arreglo luego”? ¿O quieres que
se aferre cuidadosamente a sus disciplinas, tomándose su tiempo, seguro
de que su enfoque es el mejor? ¿Quieres un desastre o profesionalidad?
Los profesionales son responsables. Asumen la responsabilidad por sus
propias carreras. Asumen la responsabilidad de asegurarse de que su
código funciona correctamente. Asumen la responsabilidad de la calidad
de su mano de obra. No abandonan sus principios cuando los plazos se
ciernen. De hecho, cuando la presión aumenta, los profesionales se
aferran a las disciplinas que saben que son correctas.
Traducción: Espartaco Palma
Leer contribución original