10 tipos de programadores
Los programadores tienen reputación de ser una gente peculiar. De hecho, incluso en la comunidad de desarrolladores, hay ciertos arquetipos de programadores que, entre ellos mismos, ven como extraños. Aquí se muestran 10 tipos de programadores con los que te puedes cruzar. ¿Puedes pensar en alguno mas?
#1: Gandalf
Este tipo de programador es un candidato ideal para interpretar a Gandalf en el Señor de los Anillos. Tiene una barba a medio camino de sus rodillas, un sombrero para mirar embobado y suele llevar una capa durante el invierno. Afortunadamente para el equipo, esta persona es adicta a trabajos mágicos como Gandalf. Desafortunadamente para el equipo, tendrán que aguantar horas de historias de Gandalf sobre cómo caminaron cuesta arriba por ambiguos caminos en la nieve para sacar las tarjetas perforadas del cuarto de la computadora. El tipo Gandalf es el peso pesado del equipo, pero hay que dejarlo en la retaguardia y llamarlo solamente en momentos de desesperación.
#2: El martir.
En cualquier otra profesión, el mártir es simplemente el “adicto al trabajo”. Pero en el campo de la programación, el mártir va todavía mas allá, hacia otra dimensión. Los adictos al trabajo, al menos van a casa para ducharse y dormir. El mártir tiene el orgullo de dormir sobre el escritorio entre cajas de pizza vacías. El problema es que nadie pregunta al mártir porqué trabaja así. Él o ella intentan crear sentimiento de culpa en el resto del equipo con frases como “Sí, id a casa y disfrutad de la cena. Yo me quedo y así termino con el código de tres semanas esta noche.”
#3: El admirador
Tenga cuidado con el admirador. Si le arrinconan, se asegura una conferencia de tres o cuatro horas sobre la superioridad de Dragonball comparado con Gundam Win, o sobre porqué la Playstation 3 es mejor que la XBox 360. El lugar de trabajo del admirador está lleno de posters, muñequitos, y alguna otra chuchería relacionada con alguna obsesión, la mayoría importada de Japón. No solo son desagradables en el trato, sino que invierten mucho tiempo en la obsesión que tienen (tanto dentro como fuera de la oficina), para no dejar pistas sobre lo que hacen cuando están haciendo aquello para lo que fueron contratados.
#4: El Heavy
Este espécimen es un retroceso al año 1984 en todas sus vertientes malas. Larga melena, vaqueros desgastados a la piedra y pañuelos de colores por aquí y por allí, el heavy se sienta en la oficina tarareando canciones de Bon Jovi y Def Leppard durante toda la jornada laboral. No sería tan malo si “Pour Some Sugar on Me” no fuese tan jodidamente mala. El heavy es normalmente una persona divertida en el trabajo, y cuenta con mucha experiencia, pero el problema es que nunca llegó a crecer del todo. De hecho, tanto ellos como ellas se convierte en molestos cuando intentan seguir el estilo de vida a lo rock’n roll en cuanto al pelo y el uso de tops. Es realmente difícil trabajar con alguien que está con resaca todos los días.
#5: El Ninja
El Ninja es el MVP de tu equipo, y nadie lo conoce. Como los legendarios asesinos, ni tu sabes si está en el edificio o trabajando, pero descubres alguna evidencia por la mañana. Arrancas el sistema de control de desarrollo y ves que a las 4 de la mañana, el Ninja ha arreglado el código que contenía el problema para el que habías planeado dedicar toda una semana de trabajo, ¡y eso sin estar seguro de si el Ninja está dentro del proyecto! Mientras tu estabas en alguna otra reunión, el Ninja estaba trabajando. Son tan silenciosos, que incluso puede que no sepas sus nombres, pero sabes que cada proyecto en el que participan parece ir mas suavemente. Aunque, trátalo con cuidado. El Ninja es un guerrero solitario; no intentes obligarlo a trabajar con la tropa.
#6: El Teórico
El Teórico sabe todo lo que hay que saber sobre programación. Pueden pasar cuatro horas leyendo sobre la historia de un oscuro lenguaje de programación o encontrar una prueba de cómo el código que tú escribes no es perfectamente óptimo y eso puede conllevar tres nanosegundos extra de ejecución. El problema es que el Teórico no sabe nada sobre desarrollo de software. Cuando el Teórico escribe código, es tan “elegante” que los simples mortales no pueden apreciarlo. Su técnica favorita es la recursividad, y cada bloque de código es exprimido al máximo con el correspondiente cose de tiempo y legibilidad. El Teórico es también fácilmente distraible. Una tarea simple que puede llevar unas horas, para el Teórico puede consistir en tres meses, momento en el que decide que las herramientas actuales no son suficientes y que se deben construir nuevas herramientas y nuevas librerías para un sistema completamente nuevo que cumpla sus altos estándares. El Teórico puede convertirse en uno de tus mejores jugadores, si consigues que juegue según las reglas del proyecto y no pierda el tiempo trabajando en el Algoritmo de Ordenación Definitivo.
#7: El Vaquero
El Vaquero es una fuerza de la naturaleza que no se puede parar. Es casi siempre un gran programador y puede hacer su trabajo dos o tres veces más rápido que cualquiera. El problema es que al menos la mitad de esa velocidad viene dada por atajos. El Vaquero siente que probar el código por sistema retrasa demasiado, en almacenar la información de configuración fuera del código mismo se tarda mucho, comunicarse con los demás también retrasa … ¿lo captas? El código del Vaquero es un lío de código espagueti, y es así porque trabaja tan rápido que no necesita refactorizar. El resultado son siete páginas de código que podrían ser utilizadas en la sección de malas prácticas de cualquier libro de programación, pero, sin embargo, ¡todo funciona! El Vaquero no suele trabajar bien con los demás. Y si pones dos Vaqueros en el mismo proyecto, está garantizado el fracaso, desde el momento en el que uno le pisa el código al otro y el otro le dispara en el pie al primero. Pon un Vaquero en un proyecto en el que el impacto por la fecha límite es más importante que hacerlo de forma correcta, y el código estará listo siempre antes de la fecha límite. El Vaquero es realmente una versión ruidosa del Ninja. Mientras el Ninja ejecuta con precisión quirúrgica, el Vaquero es como un toro furioso y corneará a cualquiera que se ponga en su camino.
#8: El Paracaidista
¿Conoces esas películas donde un único soldado se lanza en paracaídas tras las líneas enemigas y regresa con los planes secretos de la batalla? Esa persona en el tenderete del desarrollo de software es el Paracaidista. Es el programador que, en última instancia, envías para salvar un proyecto moribundo. Los Paracaidistas no tienen paciencia para trabajar en algo a largo tiempo, pero su mejor activo es su capacidad para aprender código desconocido y trabajar con él. Otros programadores pueden tardar semanas o meses en aprender lo suficiente sobre un proyecto para trabajar en él de forma efectiva; mientras, el Paracaidista puede tardar horas o días. Los Paracaidistas puede que no aprendan lo suficiente para trabajar en el núcleo del código, pero cuando el tiempo se echa encima ellos pueden resolver con éxito aquello en lo que el equipo entero puede fallar.
#9: El Mediocre
“Bastante bueno” es lo mejor que podrás obtener del Mediocre. No dejes que el nombre te engañe, hay también variedades femeninas del Mediocre. Él o ella siempre tardan mucho en producir el peor código del equipo. “Lento y estable, apenas acaba la carrera” podría describir los proyectos del Mediocre. Pero siempre es lo “bastante bueno” como para mantener el empleo. Cuando entrevistas a estos tipos te pueden contar mucho sobre los proyectos en los que han estado implicados pero no mucho sobre su implicación real. Deshacerse del Mediocre es muy fácil: pregúntale detalles reales sobre trabajos que haya hecho y tendrá rápidamente un ataque de amnesia. Dejalos en tu organización y puede que te cueste algunos años deshacerte de ellos.
#10: El Evangelista
Cueste lo que cueste el tipo de entorno que uses, el Evangelista insiste en que puede ser mejorado tirando todas tus herramientas y reemplazándolas con otras. El Evangelista es el antagonista del Teórico. El Evangelista es abierto, conoce mucho la parte horrible del desarrollo de software, pero realiza muy poco código en realidad. El Evangelista es en el fondo, y en secreto, un jefe de proyecto o gerente de departamento, pero carece del conocimiento o la experiencia para ascender. Pero no es hasta que el Evangelista es capaz de entrar en un papel puramente directivo, cuando todos los demás intentan revolucionar el lugar de trabajo.
No hay comentarios.:
Publicar un comentario