Cómo administrar a un desarrollador que tiene pocas habilidades de comunicación

52

Administro un pequeño equipo de desarrolladores en una aplicación que se encuentra en la mitad de su ciclo de vida, dentro de una gran empresa. Desafortunadamente, esto significa que comúnmente hay una división de 30/70 de tareas de programación en "otro trabajo técnico". Este trabajo incluye:

  • Trabajando con equipos de DBA / Unix / Network / Loadbalancer en varias tareas
  • Realización y gestión de pedidos de hardware o infraestructura en diferentes regiones.
  • Ejecución de pruebas que aún no se han migrado a CI
  • Análisis
  • Apoyo / Investigación

Es justo decir que los Desarrolladores preferirían estar codificando, en lugar de hacer estas tareas más mundanas, por lo que trato de distribuir los divertidos trabajos de programación de manera uniforme entre el equipo.

La mayoría del equipo fue contratado porque, aunque pueden no tener las habilidades de programación de élite para escribir su propio compilador / motor de juego / sistema de comercio de alta frecuencia, etc., son buenos comunicadores que "pueden hacer cosas", trabajan con otros equipos , y de alguna manera navegar por la compleja burocracia aquí. Son buenos desarrolladores, pero también son buenos técnicos en general.

Sin embargo, un miembro del equipo probablemente tenga habilidades de codificación por encima del promedio, pero habilidades de comunicación por debajo del promedio. Tradicionalmente, el Gerente de Desarrollo anterior tendía a darle las tareas de Programación y no las tareas más mundanas mencionadas anteriormente. Sin embargo, no creo que esto sea justo para el resto del equipo, que ha demostrado una aptitud para desarrollar un conjunto de habilidades completo que comúnmente se requiere en un departamento de TI de grandes empresas.

¿Que debería hacer en esta situación? Si continúo dándole más trabajo de programación, sé que se hará más rápido (y, por el contrario, esperaría que complete el otro trabajo más lento). Pero va en contra de mis principios y promueve la idea de que puedes crear un "nicho cómodo" para ti mismo simplemente siendo malo en las tareas que no te gustan.

Quiero aclarar que no estoy tratando de abordar este problema debido a un rencor, o que tengo un "chip en mi hombro" como se mencionó. Estoy buscando consejos sobre cómo mantener un equipo completo, feliz y motivado. Al observar la variedad de respuestas a esta pregunta, parece que hay muchas opiniones diferentes sobre cómo lograr esto.

djcredo
fuente
15
¿Sabes que todos en tu personal prefieren programar sobre las otras tareas? Sé que en una empresa en la que solía trabajar teníamos algunas que preferían depurar aplicaciones existentes, mientras que otras preferían escribir código nuevo. Luego, algunos prefirieron trabajar en nuestras aplicaciones web, mientras que otros prefirieron trabajar en nuestro sistema heredado.
programador
12
¿Cómo ha demostrado tener malas habilidades de comunicación? ¿Al no encajar en tu molde?
James
55
@EvanPlaice Nuevamente, ¿qué pasa con el ataque del "problema personal"? He dicho en la pregunta "Es justo decir que todos los desarrolladores preferirían estar codificando". Quizás esta oración no fue lo suficientemente clara e introdujo dudas, así que déjenme aclararlo: he hablado con los desarrolladores individualmente y me han dicho que disfrutan más trabajando en las tareas de programación que en otras tareas. Si este no fuera el caso, sinceramente no necesitaría hacer esta pregunta.
djcredo
2
@djcredo No lo dije como un ataque. Digo, creo que estás haciendo la pregunta equivocada. Tratar de hacer las cosas más equitativas de acuerdo con sus estándares personales de un equipo "ideal" es superponer su voluntad en el equipo. A las personas, especialmente a los programadores talentosos (leídos con voluntad) no les gusta que les jueguen. Si, como usted dice, está trabajando con personas capacitadas / talentosas, entonces el enfoque de arriba hacia abajo puede ser contraproducente. En lugar de decidir por el equipo, ¿por qué no preguntarles directamente qué debe cambiar para permitir una mejor comunicación entre el equipo?
Evan Plaice
66
¿Por qué "hacerse un hueco para uno mismo" es algo malo? ¿Desea el mejor neurocirujano que pueda obtener para extirpar su tumor cerebral y el mejor cardiólogo que pueda encontrar para reparar su aorta agrandada, o desea el mismo tipo que está bien en ambos campos pero que no es excelente para hacer las dos cosas? ¿tú?
GordonM

Respuestas:

77

Parece que usted está poniendo mucho esfuerzo en tener bien redondeados individuos y no el suficiente esfuerzo en tener un bien redondeado equipo .

No hay nada de malo en ser bueno en algo; de hecho, ¡probablemente por eso fue contratado! Deberías estar agradecido de tener a alguien que sea bueno en programación para empezar.

Usted dijo:

... va en contra de mis principios, y promueve la idea de que puedes crear un "nicho cómodo" para ti mismo simplemente siendo malo en las tareas que no te gustan.

Si él fuera un programador mediocre, entonces estaría de acuerdo. Pero no dijiste eso. Dijiste que era un buen programador. No está siendo malo en las otras tareas para salir de ellas, simplemente ha centrado sus esfuerzos en convertirse en un mejor programador. No hay nada de malo en ello.

Como gerente, no es su trabajo asegurarse de que todos estén "bien formados". Es su trabajo asegurarse de que se cumpla. Y no estás haciendo eso. De hecho, está tomando decisiones que impiden que las cosas se hagan.

Independientemente del problema que tenga, debe superarlo: está haciendo que su equipo sea menos productivo.

Stargazer712
fuente
22
Entonces, si el programador de un llanero solitario es atropellado por un autobús, es mejor asegurarse de que sus habilidades de comunicación sean lo suficientemente buenas como para documentar qué diablos estaba haciendo y en qué parte de su proyecto se encontraba.
programador
8
@JasonHolland, hay una diferencia entre "Bueno" y "Suficientemente bueno". Mientras sea lo suficientemente bueno, no hay razón para impulsar el problema. El operador considera seriamente dañar la productividad de su equipo porque no cree que sea "justo". (Recuérdame de nuevo, ¿quién dijo que el mundo era justo?)
Riwalk
14
@JasonHolland, el operador también dijo: "Si sigo dándole más trabajo de programación, sé que se hará más rápido ..." Eso me dice que ese tipo necesita estar programando. El operador tiene un chip en el hombro, y ese es el verdadero problema aquí.
Riwalk
10
Sin astilla en mi hombro: simplemente estoy pidiendo algunos consejos de administración en un área en la que actualmente soy débil. Creo que estoy tratando de luchar por la justicia para promover la moral del equipo a largo plazo, incluso si esto significa sacrificar algo del potencial de entrega a corto plazo. Haces una excelente observación de que invertir para ser un excelente programador, debería ser recompensado por sus esfuerzos, así que acepté esta respuesta.
djcredo
10
@ Stargazer712, "El operador tiene un chip en el hombro, y ese es el verdadero problema aquí". Eso puede ser cierto, pero míralo desde la perspectiva de los programadores "promedio" que están siendo engañados en tareas que no son de programación debido a un tipo que tiene habilidades de programación "superiores al promedio". Yo diría que este gerente no está haciendo su trabajo de desarrollo profesional para los demás. ¿Quizás el "superior al promedio" es más hábil porque hace más programación? Quizás los otros programadores "promedio" se volverían "superiores al promedio" si se les da más trabajo de programación, los proyectos futuros se realizarían aún más rápido.
programador
39

Usted está recibiendo algo de calor aquí en las otras respuestas por su decisión de "hacer algo" con este tipo, pero entiendo completamente lo que está diciendo. Si los otros miembros del equipo "preferirían estar codificando, en lugar de hacer estas tareas más mundanas", entonces se molestarán porque recompensen el mal desempeño del pobre comunicador al darle solo las tareas que todos quieren.

Imagina que eres uno de los "buenos comunicadores" del equipo cuyas habilidades son comparables a las del desarrollador en cuestión. Usted maneja las llamadas, trabaja con otro personal que no es de TI que apenas conoce un mouse desde un teclado, redacta planes para el cierre de sesión del usuario y más, todo porque su jefe le dice que lo haga. Mientras tanto, el desarrollador gruñón, debido a que tiene "malas habilidades de comunicación", se sienta en su cubo todo el día ignorando a los usuarios que trabajan solo en cosas "divertidas".

Ahora dijiste que el desarrollador gruñón tiene habilidades "superiores al promedio", pero no dijiste que era el mejor. Esto significa que tal vez 1/3 de su equipo, esos buenos desarrolladores de comunicadores que son del nivel de habilidad del desarrollador gruñón o superior, se sienten enojados.

¿Vale la pena perder algo de productividad de su PERSONAL DE MEJOR RENDIMIENTO porque están molestos con el malhumorado desarrollador? Tendrás que decidir.

A menos que quiera despedir al tipo, le sugiero que tome uno de estos enfoques:

1) Guíelo para que sea un mejor comunicador. Solo tú puedes decir si esto es factible. Es posible que solo sostener su mano un poco más pueda ayudar. Algunas personas simplemente están aterrorizadas por las interacciones comerciales formales y lo expresan enojándose cuando se les pide que lo hagan.

2) Incentivar la "buena comunicación", ya sea con dinero u otros beneficios. Deje en claro que realmente valora a los buenos comunicadores y que sus desarrolladores no estarán tan molestos, pero la recompensa debe ser real y significativa. "Almuerzo con el gerente del distrito" no será suficiente. Tampoco lo hará un premio de "jugador estrella / felicitaciones / ataquero" que es solo un pedazo de papel. Tiene que ser dinero extra, licencia adicional, algo de tiempo flexible, algún reconocimiento serio con los superiores que controlan los aumentos salariales, etc.

Graham
fuente
11
En realidad, mencionó que el pobre comunicador era un mejor intérprete. ¿Por qué abogarías por premiar el buen desempeño de este tipo con un trabajo menos adecuado? Soy un gran defensor del concepto de que todos tienen sus puntos fuertes y deben jugar con ellos. Si soy blando en un área, espero que el gerente tenga la capacidad de completar el equipo con alguien que sea fuerte en esa área, ¡y luego NO hacer que cambiemos de trabajo!
Bill K
3
@BillK, "Sin embargo, un miembro del equipo probablemente tenga habilidades de codificación superiores a la media". No dijo que era el "mejor". Tomé una puñalada y dije que es mejor que 2/3 de los otros desarrolladores. Eso deja a 1/3 de los desarrolladores que son tan buenos o mejores que este tipo, que tienen que hacer un trabajo extra que no es tan divertido como lo que hace todo el tiempo ("todos prefieren estar codificando"). ¿Qué le parecería si uno de sus compañeros de trabajo dijera "No me gusta ejecutar Pruebas unitarias, por lo que tiene que hacer todo lo mío por mí"? Te enfadarías bastante rápido. La mala actitud de este tipo es conseguirle una recompensa (menos tareas no codificantes).
Graham
9

En primer lugar, culpar a los miembros de su equipo ... denota habilidades de gestión deficientes.

Quiero decir, si realmente tiene malas habilidades de comunicación, lo siento mucho por su vida social, pero realmente, en el trabajo, este no es tanto su problema como el tuyo . Y seamos sinceros, en realidad podría aburrirse por su entorno de trabajo aburrido, o tener problemas privados que influyen en su rendimiento, o estar conspirando en secreto para matarlos a todos.

La comunicación requiere al menos dos, y después de todo, el que tiene habilidades de personas pobres podría ser usted. No importa que el resto de los miembros del equipo se lleven bastante bien, todos podrían estar compensando (incluso sin saberlo) por alguna deficiencia de comunicación que tenga e ignorando felizmente.

Y de todos modos, no andes preguntando por Internet sobre las personas que están sentadas a tres escritorios tuyos, ve al chico y pregúntale si realmente hay algo mal y si se puede resolver. (o algo aburrido que se puede optimizar o mejorar)

Tal vez solo odia la posición de su escritorio (¿está frente a los baños?) Y esto lo pone de mal humor.

Sugerencia: escuche la respuesta, como si fuera un ser humano sensible, no un recurso humano.

(por ejemplo: trate de explicarle en detalle la necesidad de ciertas prácticas y el significado de ciertas decisiones, algunas personas cavan detalles, ya que les dan la sensación de tener un capitán que no está conduciendo el barco a los acantilados)

revs ZJR
fuente
99
-1: No está culpando a nadie. Identificó que un tipo es más pobre en la comunicación y, en consecuencia, logró esquivar algunos de los trabajos más aburridos que otros tienen que hacer. No estoy seguro de cómo concluir que esto denota una mala gestión, o que el OP tiene dificultades para comunicarse ... Dicho esto, estoy totalmente de acuerdo en que hablar con el tipo en cuestión debería formar parte de cualquier solución.
cjmUK
1
@cjmUK Lo que este respondedor está señalando es que la falta de toda la información es difícil de tomar una determinación. Como ejemplo, mi esposa solía trabajar para alguien que pensaba que mi esposa era horrible, ahora mi esposa trabaja con personas y se la considera de alto rendimiento. Entonces, ¿es mi esposa el problema o el compañero de trabajo el problema?
Paul
3
-1 Creo que no es necesario decir que tengo pocas habilidades de gestión porque culpo a la gente. Es un buen tipo y quizás haya una buena razón por la que es menos comunicativo. Mis acciones al tratar este asunto son dobles: a) intentar remediar la situación con él, yb) decidir cómo asignar el trabajo basado en el desempeño pasado del equipo. Estoy "pidiendo ayuda a Internet" con la opción b)
djcredo
2
+1 "Sugerencia: escucha la respuesta, como si fuera un ser humano sensible, no un recurso humano". Si solo más gerentes pensaran así ... suspiro.
demongolem
8

Las personas son diferentes. Como gerente, debe tratar a las personas de manera diferente (¡pero justamente!) Para aprovechar al máximo su equipo.

Dicho esto, probablemente sea bueno para el desarrollador trabajar con habilidades sociales deficientes. Descubriría qué cosa de no codificación disfruta el desarrollador (o le gustaría hacer) que involucra más de esas habilidades blandas. Involúcralos en esa tarea, e idealmente mejorarán las habilidades blandas como efecto secundario.

La gente a menudo no es mala en algo para salir del trabajo; son malos porque no lo disfrutan o no tienen aptitud para ello. No puedes evitar lo último, así que trabaja en lo primero.

Telastyn
fuente
6

La división 30/70 puede ser donde comienzan todos sus problemas. Nunca he visto a los desarrolladores contentos con dividir así.

He visto a los desarrolladores sentirse cómodos con el 10, 15% de otros trabajos (y me he sentido feliz porque es divertido cuando la dosis es correcta), pero el 30% es demasiado. Prefiero pensar que otros miembros del equipo prefieren no decir lo que piensan que a uno a quien no le gusta "30% de otro trabajo".

También creo que es importante ajustar su "matemática de productividad" a cifras más realistas. Nunca sumará hasta el 100% debido a pérdidas inevitables en los "cambios de contexto".

  • 30 + 70, sumando hasta un 100% de productividad al cambiar entre programación y otros trabajos , nunca sucederá en la vida real; es más probable que sea alrededor de 20 + 50 o incluso 20 + 40. Los cambios de contexto son especialmente dolorosos para los desarrolladores de software; si está interesado, consulte este artículo para obtener una buena explicación de por qué es eso: ¡NO DESPIERTE EL PROGRAMADOR!
    Los programadores que valoran su productividad naturalmente no estarían contentos con pérdidas como esa.

En cuanto a ejecutar pruebas parte del trabajo, ¿consideró pasarlo a los evaluadores? El hecho de que los programadores puedan hacerlo (creo que cualquier programador experimentado debería ser capaz de eso) no significa que deberían hacerlo . Los probadores también pueden hacerlo, y lo hacen mejor, y no sufrirán pérdidas de productividad en los "cambios de contexto".

Otro punto que me hace preguntarme cómo utiliza los recursos de control de calidad es su mención de Soporte / Investigación . Los probadores profesionales con los que solía trabajar tienden a "decir primero" en cosas como esa.

  • Como ex-evaluador, los entiendo bastante bien: los problemas de producción han sido para mí (como probador) una fuente invaluable de datos para aprender sobre la cobertura de las pruebas ("¿este problema ha sido cubierto adecuadamente por mis pruebas?") Y para priorización de defectos ("está bien, ha sido cubierto por pruebas e informado antes del lanzamiento, pero ¿establecí la prioridad / gravedad adecuada en ese momento?").

Es bastante fácil para un buen evaluador averiguar cuándo pasar la investigación del problema de soporte a los desarrolladores, y esto no sucede con mucha frecuencia. Las razones para sobrecargar a los desarrolladores con esto simplemente escapan de mi mente. Como ya escribí, seguramente pueden hacer eso (generalmente esperaría que el desarrollador senior sepa cómo hacer cualquier cosa que haga el control de calidad), pero eso no significa que deberían hacerlo .

mosquito
fuente
4

Tengo 2 cosas que decir sobre esto

  1. ¿Has reclutado a un programador o desarrollador de software?
    Cuando está considerando un desarrollador de software, todas las cosas que ha mencionado son parte integrante del desarrollo de software. Simplemente no puede ignorarlas a menos que haya reclutado solo para una tarea específica. La OMI 50% del desarrollo total de software está codificando, todo es diseño, análisis, pruebas, documentación, etc.

  2. Nadie nace perfecto.
    Simplemente no puede ser que puedas encontrar una persona que sea buena en todo. Tienes que hacerlos luchar y hacer que aprendan cosas.

Como gerente, debe obtener lo mejor de ellos, estoy de acuerdo, pero a largo plazo puede enfrentar problemas. Asignarles tareas livianas para que puedan controlarlo. Saquen la sensación de que no soy bueno en esto / no puedo permitirme hacer esto . Sobre todo, trate a todos por igual para obtener el resultado más eficiente de su equipo.

Shirish11
fuente
+1 - Estoy de acuerdo con ambos puntos. Un desarrollador debe estar razonablemente bien redondeado. Y con el apoyo y el estímulo adecuados, puede que no haya ninguna razón por la que el chico no pueda mejorar su juego.
cjmUK
Sí, "codificador" vs "desarrollador de software" es una excelente manera de enmarcarlo. Por supuesto, todos solo queremos escribir código divertido. Pero hacer todas las otras cosas que lo acompañan es en realidad la razón por la que a la mayoría de nosotros nos pagan. Puedo codificadores off-shore al instante. Off-shoring los desarrolladores de software que entienden el dominio comercial existente es mucho, mucho más difícil.
Graham
@Graham eso es lo que posiblemente te convierte en un activo de la empresa
Shirish11
4

Si todos los miembros de su personal tienen el mismo título / descripción del trabajo y la descripción del trabajo incluye todo lo que usted enumeró, entonces este programador necesita que estas otras habilidades se agudicen al asignarse más de estas otras tareas que no son del programador. Del mismo modo, su otro personal no tendrá sus habilidades de programación mejoradas si continuamente tienen que trabajar en tareas que no son de programación (úselas o piérdalas).

Pero sigo pensando que su principal prioridad probablemente debería ser cumplir con sus plazos (lo que aún podría hacer mientras distribuye el trabajo de manera uniforme).

EDITAR: Si tiene un equipo pequeño, probablemente tenga sentido que todos los miembros puedan usar múltiples sombreros. Si tiene un equipo lo suficientemente grande, probablemente tenga sentido tener grupos que se especialicen en diferentes áreas. Según su publicación, parece que no tiene un equipo lo suficientemente grande como para tener grupos de especialistas.

Jason Holland
fuente
4

No está claro en su publicación original qué es exactamente lo que falta en las habilidades de comunicación de este desarrollador. La falta de interés en ir a reuniones o hacer trabajos de planificación / coordinación (por ejemplo) no necesariamente indica malas habilidades de comunicación. ¿Quizás el desarrollador simplemente siente que este tipo de trabajo es trabajo de gerente y reduce su productividad como desarrollador? ¿O tal vez siente que hay demasiada sobrecarga organizativa y esta es una forma de protesta contra lo que siente que es solo tiempo perdido en general? Después de todo, el problema opuesto en el que las personas hablan todo el día y nunca hacen nada también es bastante común en la oficina.

Es importante que hable con este desarrollador de una manera no conflictiva y trate de descubrir por qué evita las tareas que no son de programación. Probablemente no sea una sola razón, puede tener tantas razones diferentes como diferentes tipos de tareas. Asegúrese de que comprenda que el propósito de la conversación es para que pueda aprender cómo mejorar efectivamente la productividad del equipo y la satisfacción laboral de todos los miembros del equipo (no está dispuesto a conseguirlo). Este es un momento para que escuches y no discutas ni trates de abordar sus preocupaciones con reacciones instintivas. Probablemente también deberías reunirte con los otros miembros del equipo, tal vez estén totalmente de acuerdo con dejar que este tipo haga el trabajo pesado de desarrollo mientras se enfocan en el lado más caluroso de la profesión.

Después de esta reunión, pase un tiempo pensando en las conversaciones que tuvo e intente considerar la perspectiva de este empleado con una mente abierta. Tal vez tus sentimientos iniciales fueron correctos y le faltan algunas habilidades importantes que debes empujarlo a desarrollar. O tal vez hizo algunos desafíos válidos a sus suposiciones. Quizás pueda trabajar con otros equipos para formalizar algunos procesos y reducir la necesidad de comunicación redundante. Tal vez otros equipos no están haciendo todo lo posible y necesita tener una conversación amistosa con su administración. Hay muchas posibilidades que quizás no estés considerando.

Finalmente, y lo más importante, mantenga una conversación de seguimiento con las personas o una reunión de equipo si es apropiado. Si ha identificado problemas organizativos reales que pueda afectar, informe a sus empleados sobre las acciones que tomará para mejorar su situación laboral. Si aún cree que el empleado individual está equivocado, siéntese con él y explíquele qué cambios necesita de él y por qué. Los desarrolladores tienden a responder bien a las explicaciones lógicas / prácticas. "No es justo para tus compañeros darte todo el trabajo divertido. Nos gustaría que todos ustedes sean desarrolladores puros, pero esa no es la realidad de la situación, por lo que debemos compartir la carga del trabajo horrible".

Por supuesto, si este tipo es simplemente un imbécil gruñón, se niega a decirte por qué es infeliz, no responderá a la razón y no es muy respetado por sus compañeros ... bueno ... es hora del Plan de mejora del rendimiento.

skelly
fuente
2

Aunque está tratando de administrar un equipo y desea mantener a todos motivados (tener un sentido de justicia ayuda), pero ¿está sacrificando el proyecto al no tener su mejor programación de programación? Quiero decir, este es el punto, ¿no?

¿No tienes miedo de subutilizar y / o arriesgarte a perder a tu mejor desarrollador? Su trabajo es tratar de aliviar este tipo de deberes de todos.

Ser tratado por igual no significa que trates a todos por igual. Si los demás quieren aflojar las tareas que no son de programación para que se les asignen más tareas de programación, ¿no corren el riesgo de no ser buenos?

EDITAR: Aparte de tus sentimientos personales, no has identificado un problema. En algún momento, la falta de comunicación dificulta a un programador. Otros mostrarán resentimiento y su trabajo puede sufrir. Hasta ahora, parece ser el único que tiene un problema. ¿A menos que haya algo más que no estés compartiendo?

EDITAR 2 Eventualmente, todos van a pedir un favor especial. Esta persona se comunica menos y codifica más (lo que debería hacer según todas las cuentas). Alguien más quiere venir un poco más tarde. Otro deberá saltear una reunión para cumplir con una fecha límite. Una persona gráfica obtiene un monitor más grande. Cuando pones demasiado énfasis en llevar la cuenta, olvidas lo que es importante.

JeffO
fuente
Nadie dijo que era el mejor programador. E incluso si lo fuera, no hay nada que decir que exigir que cumpla un papel más amplio está mal. Estoy de acuerdo en que ser justo no significa necesariamente tratar a todos como clones , pero puede haber un camino intermedio, en el que a las personas se les asignan tareas que les convienen e interesan, pero donde todos se involucran con las tareas menos glamorosas hasta cierto punto.
cjmUK
1
@cjmUK - y nadie dijo que los otros miembros del equipo tuvieran un problema con esto. Ver Edición 2.
JeffO
2
@Jeff O "Es justo decir que todos los desarrolladores preferirían estar codificando". Lo sentimos, pero si los otros desarrolladores no tienen un problema con el tipo en cuestión ahora, eventualmente lo harán. djcredo está siendo proactivo al tratar de controlar esto antes de seguir esa ruta.
Graham
2

Soy un administrador de Linux gruñón que hace muchos scripts y se ha notado que tengo pocas habilidades de comunicación. Me parezco mucho a tu chico. De hecho, esa es la única área en la que me critican en las evaluaciones de rendimiento. Por otro lado, estoy continuamente liderando a mi equipo en innovación y resolución de problemas, y he creado y liderado el camino hacia la nueva plataforma que estamos implementando y le hemos ahorrado mucho tiempo a mi equipo y a mi empresa mucho dinero al ser permitido ser yo mismo.

A mi ex jefe se le pidió a su familia / esposa Y a la alta gerencia de nuestra compañía que dejaran su puesto ... simultáneamente. Trabajó incansablemente para equilibrar las responsabilidades de manera justa y asumió mucha carga. Durante cualquier interacción con alguien fuera del departamento, si hubo un malentendido en la comunicación que le respondió, él fue rápido para, ah, corregirlo punitivamente. Era pobre en "administrar hacia arriba", por lo que nuestro equipo fue el último en obtener recursos hasta que fue una emergencia, y luego la compañía pagó de más a los vendedores con argumentos de venta ingeniosos para hardware no probado sin consultar al equipo que usaría esas herramientas. En un esfuerzo por crear un equipo "bien equilibrado", administró nuestras listas de tareas y trató de equilibrar las tareas para que los miembros del equipo pudieran mejorar sus habilidades en áreas donde no eran geniales, lo que resultó en MUCHO código roto o implementaciones mal diseñadas. Mientras que otras personas además del autor fueron asignadas específicamente a tareas de soporte para ese código roto para que pudieran "aprender", las implementaciones, el código y las pruebas mal diseñadas crearon mucha mala voluntad entre los miembros del equipo y, de hecho,aumento de las ocurrencias del "juego de la culpa", que es una ruta rápida hacia un estado de equipo tóxico.

Mi jefe actual es un individuo tranquilo y sereno que llegó desde el puesto de administrador junior y ha trabajado para ascender. Toma buenas decisiones y depende en gran medida de los miembros del equipo para establecer sus propias prioridades. Es un excelente comunicador y reacciona con calma y en concierto con su supervisor ante cualquier problema de comunicación, ideas o necesidades expresadas por mi equipo. Él "trabaja hacia arriba" incansablemente. Es lento para realizar cambios arquitectónicos importantes, y consulta a fondo con todo el equipo antes de realizar cambios en nuestro entorno y se siente cómodo al confiar en las especialidades de los miembros de nuestro equipo.

Bajo el nuevo gerente, nuestro tiempo de inactividad se ha reducido a casi cero (que también ha reducido el porcentaje de tiempo que pasamos en tareas de soporte de aproximadamente 40% a aproximadamente 10%), la satisfacción de nuestro equipo se ha disparado, y estamos en camino de pasar de un 'quiebre bancario en hardware nuevo cada tres a cinco años' a un plan de adquisición continua que debería ahorrarle a la compañía alrededor de un millón por año durante cinco años. Ese plan era un programa de base que nunca hubiera sucedido bajo el gerente anterior, pero el nuevo gerente lo impulsó activamente a la alta gerencia y dependía de encontrar MUCHAS sinergias en las habilidades del equipo. El CIO nos ha dicho informalmente que ahora somos el único equipo en la compañía que realmente "tiene su mierda junta" y que él ' s interferirá con nuestro entorno de trabajo lo menos posible y barajará tantos recursos hacia áreas problemáticas que identifiquemos como sea posible. Esto ha sido cierto, y está haciendo que nuestro "costo" de soporte sea aún más bajo, aunque ha interrumpido las cargas de trabajo de otros equipos, pero también ha reducido el "costo" de soporte de esos equipos.

Mira, el lugar para que los desarrolladores mejoren sus habilidades es en la escuela o en su propio tiempo. El lugar para que produzcan cosas es en el tiempo de su empresa. La mejor manera de producir cosas es produciendo lo que mejor saben. Cuando trabajen en áreas donde un desarrollador no se sienta cómodo, deberían atraer a un segundo desarrollador especializado y trabajar en equipo, o el desarrollador especializado debería escribir el código y producir documentación y diagramas. Dirija las tareas de soporte a las personas que escribieron el código. Sí, esto aumenta lo que llamamos su "factor de autobús": la probabilidad de que su departamento golpee un bache de velocidad si el especialista es atropellado por un autobús. (O despedido, o cambiar de trabajo, o ...) La verdad es que su pérdida de productividad de ese miedo es de órdenes de magnitud mayor que la pérdida real cuando un "evento de autobús" sucede Lo que generalmente sucede durante un "evento de autobús" es que el heredero del trabajo del especialista lo rehace a su propia imagen para que pueda apoyarlo de manera más efectiva, generalmente resolviendo un montón de problemas y reduciendo aún más el tiempo dedicado al soporte, y la vida continúa en.

Asigne cosas a las personas que puedan hacerlas mejor. Haz que apoyen y documenten su trabajo. Fomenta su creatividad y permíteles concentrarse sin distracciones ni microgestiones. Todo lo demás es BS de la escuela de administración, que desafortunadamente parece que su empresa está nadando. Eso no significa que su equipo también necesite nadar en ella.

Desde el punto de vista de una empresa, un buen gerente promueve los valores de la empresa mientras ejecuta tareas de acuerdo con esos valores. Desde el punto de vista de un empleado de TI, un buen gerente le permite al equipo hacer lo correcto para hacer lo más rápido y limpio posible y actúa como una barrera fecal contra la alta gerencia que empuja los valores que aprendieron en las clases de MBA de fin de semana por las gargantas de los subordinados. Estás siendo un hombre de compañía, y eso podría no ser lo mejor para tu equipo. Los que tienen "buenas" habilidades de comunicación son demasiado educados para decirlo.

Karl Katzke
fuente
0
  • Asegúrese de que el empleado sepa cuán importantes son las habilidades de comunicación para la descripción de su trabajo. Trabaja con él / ella para mejorar.
  • No insista en que sean tan buenos como los otros miembros del equipo en tales tareas.
  • Asigne tareas de acuerdo con los principios en los que cree. Encuentre un equilibrio entre la asignación eficiente de tareas a las habilidades y la equidad / diversión.

Estas son solo ideas resumidas, ojalá alguien robe estos puntos y los doble en una de las otras respuestas. ;-)

Chris Quenelle
fuente
0

El rendimiento lo es todo. Dale las tareas de programación. Hable de esto con el resto del departamento. Opcionalmente, traiga a alguien para que haga tareas de com o que solo realice tareas de com. No pienses en la programación de divertirte. Todo es "divertido" desde tu POV.

Si no lo hace, creará una situación que es extremadamente difícil de manejar y menos efectiva de lo que podría ser.

Lodewijk
fuente
0

Qué gran pregunta, es el tipo de cosas en las que deben pensar todos los líderes de equipo, supervisores y gerentes de técnicos. Me gusta su enfoque, todos deberían tener una tarea 'divertida'. Llevarlo más lejos al tener un equipo que puede recoger diferentes tareas y está entrenado evita que el Principio de Peterbilt cause estragos 'un miembro del equipo indesipensible deja el equipo o incluso se queda sin aliento '.

Ahora, como lo señalan muchas publicaciones, el trabajo no es justo y no debería serlo. Los gerentes se miden sobre cuánto trabajo valioso se realiza.

  • Los gerentes relacionan las tareas con las personas en función de sus habilidades.
  • Los buenos gerentes combinan tareas basadas en habilidades, crecimiento, interés y productividad del equipo.
  • Los grandes gerentes logran que su equipo haga esto con un poco de ayuda y orientación. Es decir, sin el gerente gastando todo el día en ello.

Hable con su buen programador, pregúntele si hay cosas que quiere aprender. ¿Qué otras tareas aceptaría ... incluso lo que sea menos objetable para él? ¿Puede ayudar a otros miembros del equipo con su programación ... guiarlos? Sí, sé que la comunicación es un problema, así que tal vez debería estar trabajando en eso.

Otra forma de empaquetar esto es tener una lista de tareas y dejar que cada miembro del personal elija algo. Deje que su buen programador elija primero. Si le avisas con anticipación y le muestras la lista de tareas aún mejor.

Si obtiene resistencia, lo que casi siempre hace con el cambio, encuentra un punto de venta, algo de valor para él, ¿por qué se beneficiará? Por último, puedes decirle que lo haga por el equipo.

También espere que comiencen los errores y una menor productividad, esa es una señal de que las personas están aprendiendo. Este proyecto puede sufrir, pero el próximo será mejor.

Para concluir, es su trabajo asegurarse de que se hagan las cosas, pero también está aumentando su personal y si puede involucrarlos en el proceso aún mejor. Algunos podrían decir que la mejor manera de garantizar que las cosas se hagan es un equipo que sepa lo que hay que hacer y sea el propietario de los resultados.

Editar: Ah, y sigue intentándolo, el consejo anterior proviene de años de cometer errores, pero siempre supe que quería ayudar a mi equipo a crecer, y sabía que la productividad era la reina, así que seguí intentando cosas nuevas cuando falló el último intento.

MarcLawrence
fuente
0

Ya se ha aceptado la mejor respuesta, pero me sorprende que nadie haya señalado que la "asignación de tareas" no es lo único con lo que el gerente puede trabajar. Tener un "programador por encima del promedio" que también tenga "habilidades de comunicación por encima del promedio" debería (en igualdad de condiciones) ser un desarrollador mejor pagado / más senior que alguien con habilidades de programación similares y habilidades de comunicación débiles. Esto puede ayudar a compensar cualquier "favoritismo" percibido por el equipo. (En algunas organizaciones, tener habilidades superiores al promedio en "Análisis de requisitos" y habilidades inferiores al promedio en otras áreas puede valer mucho más para la compañía debido al tipo de trabajo que se realiza. Como gerente, debe decidir cómo manejar esto .)

Otra cosa a tener en cuenta: dar a la persona en cuestión nada más que tareas de programación conducirá al aislamiento a largo plazo. Asegúrese de seguir dándoles algunas de las otras tareas (¡pero las que pueden hacer bien, no las configure para recibir comentarios negativos!) Para que sean visibles y tengan visibilidad con los otros departamentos / equipos.

Finalmente ... verifique periódicamente con los otros miembros del equipo si ven alguna desigualdad en las tareas del equipo. Esto puede ser una gran preocupación para usted, pero # 15 en la lista de todos los demás.

Al Biglan
fuente
1
Él tiene, desafortunadamente, habilidades de comunicación inferiores al promedio aparentemente.
Matthieu M.
-1

Dado que, según su propia evaluación, este programador es el mejor en el equipo, de alguna manera es "justo" darle a esa persona el trabajo deseado (como resultado de haber demostrado que está en mejores condiciones para hacerlo). Después de todo, probablemente hubo personas a las que les hubiera gustado trabajar en esta empresa pero que no fueron contratadas en absoluto, pero nadie va a decir que no es "justo" para ellos que no puedan hacer esta codificación.

Creo que un enfoque justo sería decirle a otro miembro menos capacitado del equipo que quiere hacer más codificación: "estamos dejando que (más o menos) tome la iniciativa en este caso. Quizás usted pueda tomar la iniciativa en lo siguiente que viene, si puedes demostrar que has aprendido habilidades x e y ".

gcbenison
fuente
2
"Sin embargo, un miembro del equipo probablemente tenga habilidades de codificación superiores a la media". El no es el mejor. Él está por encima del promedio. Podría haber alrededor de 1/3 del equipo que es mejor en la codificación.
Graham
-1

Como algunos de los otros que respondieron, entiendo su posición y tendría ambiciones similares.

Si bien es un caso decir que tiene sentido asignar tareas a las personas mejor equipadas para llevarlas a cabo, también tiene sentido ampliar las habilidades de las personas para proporcionar un equipo dinámico y flexible.

Si se requiere que este tipo haga elementos no codificantes en su rol, pero sus habilidades de comunicación son más pobres de lo que realmente se necesita, necesita mejorar. Suponiendo que tiene algún tipo de sistema de revisión / evaluación del desarrollo, este es el momento de plantear el problema.

Los temas clave son trazar claramente lo que necesita de él, evaluar si tiene las habilidades para cumplir y elaborar un plan de capacitación para permitirlo. El entrenamiento no necesariamente debe ser formal, pero debes ayudarlo a obtener las habilidades requeridas.

Si él simplemente no puede ser molestado, entonces finalmente se trataría de un problema disciplinario. Si él no tiene la capacidad, a pesar de haberlo intentado y de haber sido apoyado por usted, entonces puede haber medidas disciplinarias disponibles (lo cual diría que sería duro y contraproducente), pero igualmente podría aceptar que no lo es. cortado para ciertas tareas.

Hablar con el chico será uno de tus primeros puertos de escala . Puede encontrar que carece de confianza o perspicacia. También puede encontrar que él es muy receptivo y apreciará la oportunidad de mejorarse.

cjmUK
fuente
-1

Debe contratar a un junior para que haga todo el trabajo duro, y que todos sepan que necesitan ayudarlo con cualquier cosa con la que él / ella solicite ayuda.

Estarán más inclinados a molestar al codificador "por encima del promedio" debido a sus habilidades y el resto del equipo tendrá un nuevo lacayo. El junior aprende desde cero y la empresa termina con un empleado completo al final.

Douglas
fuente
1
Considere reelaborar esta respuesta para que fluya un poco más suavemente para mostrar la relación del nuevo programador, incluido dónde obtenemos el dinero para pagar el nuevo gruñido (inicialmente, pensé que era al deshacerme del pobre comunicador). En su respuesta, ¿trabajar con el chico nuevo es una forma para que el chico existente desarrolle habilidades de comunicación? ¿Qué tipo termina bien redondeado?
DesarrolladorDon
-2

Esperar que todos tengan las mismas habilidades de comunicación es tan racional como esperar que le enseñes al hombre lisiado a correr tan rápido como el resto del equipo.

Las personas son diferentes, tienen diferentes habilidades y diferentes debilidades. Disparar a un gran programador solo porque no puede alcanzar a los demás en habilidades de comunicación sería como despedir a un hombre lisiado porque no puede caminar tan rápido como los demás. Sería injusto desde el punto de vista ético y será contrario a sus propios intereses económicos hacer el trabajo.

Al principio, si no lo ha hecho en el pasado, debe leer sobre el síndrome de Asperger . Las malas habilidades sociales son el principal indicador de ese síndrome.

En segundo lugar, puedes contratar y despedir a quien quieras, pero si no logras hacer frente a las fortalezas y debilidades de tus empleados, terminarás con un grupo de programadores promedio, porque los mejores se irán (si no te despiden primero) .

Hay una película, Adam , en la que el genial programador es despedido solo porque ha escrito algo que no se esperaba. Su idea podría aportar mucho dinero al empleador, pero no pudo aprovechar la oportunidad porque estaba concentrado en sus "principios".

La gente
fuente
1
Para ser claros, nadie está siendo despedido aquí. Todos trabajamos muy bien juntos, y él es un miembro extremadamente valioso del equipo de desarrollo. Estoy hablando de cómo asignar trabajos futuros y cómo mejorar el rendimiento y la moral del equipo en general.
djcredo