¿Qué habilidades blandas necesita un desarrollador? Opiniones de Yandex

Pronto comenzará la gran Olimpiada estudiantil "Soy profesional". Ha estado funcionando en línea y fuera de línea desde hace varios años. Pueden participar estudiantes de diversas especialidades, incluidas las técnicas. La Olimpiada está organizada por 26 universidades líderes: la Escuela Superior de Economía, la Universidad Estatal de Moscú, la Universidad Técnica Estatal de Moscú, el Instituto de Física y Tecnología de Moscú, MEPhI, la Universidad Estatal de San Petersburgo, la Universidad ITMO y otras.

Yandex es el socio técnico del proyecto. Para nosotros “Soy un Profesional” se ha convertido por segundo año consecutivo en una buena oportunidad para hablar de la importancia de las soft skills (soft skills) en el trabajo de los desarrolladores y otros especialistas. Hace un año, nuestra oficina de Moscú organizó una reunión para los participantes de la Olimpiada dedicada a las habilidades interpersonales. Sobre ellos también habló el jefe de la oficina de desarrollo de Yandex en Novosibirsk, Sergei Brazhnik, hablando en una sesión de formación incluida en el programa "Soy un profesional". Hoy Sergey y otros dos gerentes de Yandex: Anna Fedosova y Oleg Mokhov olegbl4 — le contarán a Habr sobre las habilidades sociales: qué son, cuáles necesita un desarrollador, dónde conseguirlas y cómo su presencia afecta el crecimiento de la empresa.

Sergey Brazhnik, jefe de la oficina de desarrollo en Novosibirsk, director de desarrollo de proyectos educativos regionales

¿Qué habilidades blandas necesita un desarrollador? Opiniones de Yandex

— Para un desarrollador, las “4K” son importantes: pensamiento crítico, creatividad, cooperación y comunicación. Generalmente se acepta que la comunicación en esta profesión no es una habilidad importante, pero si lo piensas bien, es necesaria para el crecimiento profesional: debes poder hacer preguntas, escuchar y oír a tu interlocutor, explicar tu punto de vista y aceptar lo ajeno, hablar y negociar. Es posible que el pasante no sea capaz de trabajar en equipo o pensar críticamente, y esto es normal, porque aún no tiene esa experiencia.

Si un especialista ya maduro viene a nosotros para una entrevista, evaluamos todas estas habilidades durante la conversación. Observamos cómo una persona habla de sí misma. A lo largo del camino, hacemos preguntas importantes y aclaramos muchas cosas. Ponemos a prueba el pensamiento crítico mediante problemas. Por un lado, para nosotros es importante que los resuelva, por otro lado, nos fijamos en cómo los resuelve exactamente.

Para un desarrollador que ya trabaja para una empresa, hay dos formas de determinar qué habilidades le faltan. La primera es solicitar comentarios a su gerente. Si no te dicen nada no quiere decir que todo esté bien. Si dudas, vuelve a preguntar. En medio de las tareas actuales y los objetivos comerciales, los gerentes pueden olvidarse de la dirección del software; es importante recordárselo. La segunda forma es intentar evaluarse a sí mismo en relación con otros colegas del equipo, por ejemplo, durante las lluvias de ideas, cuando todos lanzan ideas y luego las discuten y critican.

Digamos que entiendes qué habilidades te faltan. Este es el primer paso y el más importante: darme cuenta de que sí, de hecho, algo anda mal conmigo aquí. A continuación, lo ideal sería encontrar un mentor, al menos un amigo que haya desarrollado estas habilidades. Puedes simplemente mirar a un amigo. Y si encuentras un mentor, él podrá darte consejos y seguir tu crecimiento. Un mentor puede ser su colega (queda inmediatamente claro por qué necesita supervisión: está trabajando para lograr el mismo objetivo) o, a veces, incluso un experto externo (pero suele ser alguien que usted conoce; de ​​lo contrario, su motivación no está clara). Los libros, conferencias, capacitaciones también son una opción, pero de esta manera solo obtendrás conocimientos. Para que el conocimiento se convierta en habilidad, se necesita práctica regular.

Las habilidades de comunicación mejoran enormemente durante los stand-ups: breves reuniones de planificación diarias en las que cada miembro del equipo cuenta en qué está trabajando actualmente. Cualquier discurso en público también ayuda. Y trate de comunicarse más con colegas y compartir experiencias dentro del equipo.

Si necesitas elegir un líder de equipo entre un director de proyecto técnico y un desarrollador, no hay una respuesta clara cuál es mejor. En Yandex, incluso un proyecto, por regla general, puede escribir código. Por lo tanto, primero compararía al gerente y al desarrollador según varios parámetros: cómo saben establecer tareas y controlar la ejecución, cómo dirigen el equipo y, en general, qué tipo de relación tienen con el equipo. Sucede que una persona fija bien las tareas y controla los plazos, pero al mismo tiempo se lleva peor con el equipo. Todo depende también de quién toma la decisión. Alguien que fue desarrollador en lugar de administrador tiene más probabilidades de elegir a otro desarrollador como administrador.

Con solo habilidades duras puedes convertirte en líder de equipo; ha habido casos. Pero los gerentes que promueven a una persona así a liderazgo de equipo deben recibir una palmada en la muñeca. Porque él, aprendiendo en el proceso, se equivocará tanto que el equipo quedará desmotivado. Entonces todo depende de qué tan fuertes sean los muchachos. O esperarán hasta que la persona crezca y se dé cuenta de lo que está pasando. O no esperarán y empezarán a huir.

Si aún convierte a un desarrollador incondicional en gerente, primero debe prepararlo a fondo y luego asegurarse de asesorarlo durante los primeros tres a seis meses.

Anna Fedosova, jefa del departamento de formación y desarrollo

¿Qué habilidades blandas necesita un desarrollador? Opiniones de Yandex

— Es difícil compilar una lista completa de habilidades. Así, el modelo de competencias de Lominger incluye 67 posiciones. Dentro de Yandex, dividimos las habilidades en universales y aquellas que los gerentes necesitan.

Habilidades universales asociado con la efectividad personal y la interacción con los demás. La eficacia personal se asocia, por ejemplo, con la capacidad de gestionarse a uno mismo, el tiempo, los procesos de trabajo, la orientación a resultados, el pensamiento crítico y la capacidad de aprender. Lo que distingue a la economía moderna de la economía de hace treinta años es que es poco probable que uno haga lo mismo durante toda su vida. Lo más probable es que algo cambie y hay que estar preparado para ello.

Otro grupo de habilidades universales está relacionado con la comunicación con otras personas. Ya no vivimos en los días de la producción en cadena. Hagas lo que hagas, lo más probable es que tengas que negociarlo y discutirlo con otras personas. El proceso de comunicación en este caso se vuelve muy importante. En las empresas de TI, donde el horizonte de planificación es muy corto debido al constante desarrollo de la tecnología, incluso los especialistas técnicos tienen que tomar muchas decisiones colectivas que nacen en el proceso de discusión. Y los empleados no pueden permitir que las negociaciones lleguen a un callejón sin salida, de lo contrario el trabajo simplemente se detendrá.

Una capa grande separada es habilidades para gerentes. Estos incluyen la capacidad de establecer y evaluar tareas, motivar a otros y desarrollarse, ser un líder, formar su equipo e interactuar con otros equipos.

En Yandex, los programas de capacitación en habilidades sociales están diseñados para que los empleados puedan trabajar en diversas situaciones en un entorno seguro. Pueden ser situaciones con las que no se ha topado antes, o casos concretos de su experiencia en los que le gustaría obtener un mejor resultado. Hay muchas cosas que se pueden resolver, desde contratar gente nueva y establecer objetivos hasta conflictos de intereses y cuestiones de motivación. Como regla general, las situaciones de malentendidos entre un empleado y un gerente son difíciles para ambas partes, pero usted puede aprender a afrontarlas.

Se pueden utilizar diferentes métodos de enseñanza. Por tanto, es bastante difícil aprender a trabajar en equipo. En la escuela nos enseñan a trabajar individualmente, se dan calificaciones para el éxito académico personal. Pero es en un equipo donde las personas aprenden a asumir responsabilidades, distribuir roles entre ellas y acordar objetivos y resultados comunes. Y a menudo resulta que esto hay que aprenderlo como adulto en el trabajo. Ahora algunas escuelas practican el aprendizaje basado en proyectos y la realización conjunta de tareas. Esto debería ayudar a aprender a trabajar en equipo desde la infancia.

¿Cómo enseñar a los adultos a aprender y adquirir conocimientos de forma independiente? A veces la experiencia en la educación superior ayuda. Los cursos de maestría y posgrado enseñan a los estudiantes a comprender qué es importante y qué no, y dónde buscar conocimientos relevantes. Pero a menudo es necesario dominar esto ya en el proceso de trabajo. No sorprende que uno de los cursos más populares de Coursera se llame Aprender a aprender.

No hay nada más útil para aprender que conocerse mejor a uno mismo: mirarse desde fuera con la ayuda del feedback de los compañeros, volver a pensar en lo que funciona bien y lo que no, encontrar personas a las que uno quiere parecerse, y compararte con ellos.

Cabe recordar que la motivación está en el centro de todo. Si comprende que es insociable, pero necesita cambiar esto, por ejemplo, esto es importante para el equipo, entonces aparecerá tanto la motivación como la necesidad de cambiar. Si no necesita comunicarse con nadie para trabajar, ¿por qué pasar por alto?

Oleg Mokhov, jefe de desarrollo de proyectos de recursos humanos y del servicio Yandex.Contest, que alberga la parte online de la Olimpiada

¿Qué habilidades blandas necesita un desarrollador? Opiniones de Yandex

— Los desarrolladores sin ambiciones de liderazgo de equipos realmente no necesitan habilidades interpersonales. Es importante poder hacer preguntas, escuchar y transmitir sus pensamientos. Para mejorar estas habilidades, puede dar un informe en una conferencia o leer conferencias en una universidad. Todos estudiamos en algún momento, lo que significa que podemos enseñarle a alguien nosotros mismos. Los estudiantes, son contagiosos, hacen las preguntas más ocultas. La capacidad de responderlas rápidamente y callarse le ayuda a mantener la calma en discusiones acaloradas.

Los libros no ayudan con las habilidades sociales. Las capacitaciones solo ayudan si asistes regularmente. Pero es muy útil venir a la conferencia y adoptar una posición activa. Simplemente haga preguntas al orador.

Durante las entrevistas, a veces cuestiono incluso la respuesta correcta del candidato: observo cómo piensa. Pero esto sólo funciona si una persona tiene confianza en sí misma. En general, es mejor analizar las habilidades sociales durante las entrevistas finales. Por ejemplo, te pido que nos cuentes cuál es la tarea más interesante que ha realizado el candidato. De esta manera puedes descubrir qué es más interesante para una persona: codificar, investigar, obtener resultados o comunicarse.

Muchas personas que han desarrollado enormemente habilidades sociales se convierten en gerentes de alto rango cuyo día entero consiste en reuniones. ¿Cómo mantener tus habilidades de codificación? Te dices a ti mismo: llevo dos horas programando. Apagas todas las notificaciones, tu teléfono, esa es la única manera. Conozco líderes que hacen esto. Pues las entrevistas y los apartados técnicos también ayudan a desarrollar el cerebro. En Yandex, simplemente dejaste de ser un junior y ya te invitarán a una entrevista. Es como un impuesto por el hecho de trabajar para una gran empresa.

Si necesita elegir un líder de equipo entre un gerente y un desarrollador, entonces todo depende de las responsabilidades futuras del líder. Una cosa es si el gerente alguna vez fue desarrollador. Entonces tiene más posibilidades. Es diferente si se trata de una camioneta de proyecto. Interactúa con los equipos, diseñadores y analistas de backend y frontend. Pero no sabe cómo funciona una biblioteca en particular en el frontend, no está familiarizado con la programación asincrónica en el backend y no entiende por qué es difícil. El crecimiento de los desarrolladores consiste en profundizar más. Y la esencia de la gestión es recoger la capa superficial, comprender el problema y establecer conexiones y procesos. Por lo tanto, creo que lo más probable es que un directivo no sea capaz de mejorar las habilidades de desarrollo de las personas.

El equipo puede desarrollar hostilidad hacia un extraño. Así que elegiría un líder entre los propios desarrolladores, y quizás no elegiría al más fuerte de ellos. Supongamos que una persona trabajó durante cinco años, ahora es un desarrollador senior, pero durante estos cinco años solo creció el hardware y el software no. Entonces no puedo esperar que se disparen si le doy un puesto. Pero cuando un desarrollador ha estado trabajando durante un año, pero veo que tiene buena lengua, se comunica, puede conectar a varias personas, resolver conflictos entre ellas, este es un líder de equipo para mí, incluso si no es un desarrollador senior. .

No creo en una historia en la que una persona se convierte en líder basándose únicamente en sus habilidades duras. Un líder de equipo sin software probablemente no cumpla su función en alguna parte. ¿Cuándo podría funcionar esto? Cuando los subordinados son autosuficientes. Tengo un eslogan para los nuevos gerentes: los gatos son fáciles de manejar. Los líderes de equipo se enojan cuando tienen casos difíciles: un empleado quiere renunciar, otro está deprimido y comienza a rendir menos, el tercero tiene un conflicto. A esto le digo al líder de su equipo: regocíjate, esta es la primera vez que necesitas trabajar como líder. Porque los gatos (maúllan, son amables, alegres) son muy fáciles de controlar.

Fuente: habr.com

Añadir un comentario