paint-brush
Cómo utilizar los gremios para una mejor transferencia de conocimientos entre ingenierospor@alex-chernenko
7,974 lecturas
7,974 lecturas

Cómo utilizar los gremios para una mejor transferencia de conocimientos entre ingenieros

por Alex Chernenko7m2020/05/29
Read on Terminal Reader
Read this story w/o Javascript

Demasiado Largo; Para Leer

Los gremios de tecnología son una forma popular pero aún nueva de implementar comunidades de prácticas en las empresas. La motivación es que la transferencia de conocimientos, tecnologías y experiencias entre ingenieros de una misma empresa se puede realizar de muchas formas. Las principales responsabilidades del gremio: Mantenerse en contacto con la comunidad para seleccionar las mejores prácticas. Establecer estándares dentro del gremio basados en las mejores prácticas. Mantener una comunicación eficaz con el equipo. Aplicar tecnologías de vanguardia cuando sea pertinente. Proporcionar tutoría y entrenamiento de todos los miembros. Desarrolle la experiencia del gremio y construya la experiencia del gremio en soluciones de código abierto.

People Mentioned

Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Cómo utilizar los gremios para una mejor transferencia de conocimientos entre ingenieros
Alex Chernenko HackerNoon profile picture

¡Hola, gente de Hacker Noon! Los gremios de tecnología son una forma popular pero aún nueva de implementar comunidades de prácticas en las empresas. Aún así, hay muchas preguntas, especialmente relacionadas con las responsabilidades y la organización del gremio. Junto con Andrew Kozin , he preparado esta publicación para usted como un resumen de nuestra experiencia personal y nuestra comprensión del papel de un gremio tecnológico en la actualidad.

La motivacion

La transferencia de conocimientos, tecnologías y experiencias entre ingenieros de una misma empresa se puede realizar de muchas formas. Es fundamental tener tales procesos, porque un buen especialista está aprendiendo e investigando durante toda la vida. A los desarrolladores también les gusta aumentar su red de contactos. A menudo intentan mantenerse al día con la comunidad y mantener su contexto profesional más amplio que el alcance del proyecto actual.

Ahí es donde surge el llamado “gremio”.

El enfoque del gremio

Un gremio de tecnología en sí mismo es una comunidad dentro de la empresa, todos los miembros de la cual se desarrollan utilizando la misma pila tecnológica, pero en diferentes proyectos. Por ejemplo: un gremio de front-end, un gremio de back-end, un gremio de Android, etc.

A cargo del gremio hay una sola persona (Líder de tecnología / Líder de competencia / Maestro del gremio / Coordinador del gremio) o varios profesionales con las mismas habilidades con este rol (Equipo líder de competencia central).

Las principales responsabilidades del gremio:

  • mantenerse en contacto con la comunidad para seleccionar las mejores prácticas
  • establecer estándares dentro del gremio basados en las mejores prácticas
  • garantizar el cumplimiento de los estándares de desarrollo
  • detectar y eliminar la deuda técnica
  • mantener una comunicación eficaz del equipo
  • aplicar tecnologías de punta cuando sea relevante
  • proporcionar estimaciones de desarrollo y arquitectura de características bien equilibradas
  • construir la experiencia del gremio
  • proporcionar tutoría y entrenamiento a todos los miembros
  • mejorar las habilidades de los miembros del gremio
  • entrevistas y proceso de selección de candidatos adecuados

Expliquemos cada elemento de responsabilidad con más detalle.

Manténgase en contacto con la comunidad para seleccionar las mejores prácticas

Cada pila de tecnología en TI tiene su comunidad mundial y cada desarrollador que se precie trata de rastrearla.

Existen mejores prácticas bien establecidas, como OOP, patrones OOP, FRP, arquitectura limpia, principios SOLID y muchos otros. Este tipo de conocimiento no es tan difícil de obtener ya que hay muchos recursos que incluyen libros y autores famosos como Robert C Martin.

Además, existen mejores prácticas altamente especializadas para una tecnología, marco o proyecto en particular. En términos de proyectos específicos, estas mejores prácticas son las más valiosas. Pero a menudo y rápidamente se vuelven obsoletos. Requieren monitoreo continuo, clasificación y recuperación de los más relevantes. Para obtenerlos, debe realizar un seguimiento de las conferencias, las reuniones, leer al prof. fuentes de noticias, etc.

El gremio debe monitorear regularmente y extraer de todo este flujo interminable de información las mejores prácticas que sean adecuadas para su uso dentro de la empresa.

Debe quedar claro para todos los miembros del gremio que también son parte de la comunidad porque adoptan la experiencia adquirida en el mundo, la implementan con éxito y aumentan su experiencia única. Tales partes de experiencia (en un volumen que no violará la NDA) se pueden compartir en artículos y discursos. Por lo tanto, también contribuyen al desarrollo de la comunidad. Esta es una de las motivaciones para estar en un gremio.

Algunas soluciones exitosas y generalizadas que nacen dentro del gremio pueden impulsarse al código abierto. Después de todo, se podría compartir con la comunidad una experiencia de desarrollo única, siguiendo el ejemplo de cómo lo hicieron Google, Facebook, Airbnb, Wix y muchos otros. Si una empresa no solo se mantiene en contacto con la comunidad sino que también contribuye a su vida, esto la lleva a un nivel de prestigio radicalmente nuevo.

Establecer estándares dentro del gremio basados en las mejores prácticas

Los siguientes estándares deben describirse explícitamente dentro del gremio:

  • Estándares de estilo de código, nomenclatura de variables, redacción de comentarios sobre el código, uso de ciertos patrones.
  • Normas de uso de Herramientas Específicas.
  • Estándares para frameworks y paquetes relacionados.
  • Estándares de versiones de idiomas compatibles.
  • Estándares para ramificación (control de versiones), nomenclatura de confirmaciones, etc.
  • Estándares para trabajar con entornos y ramas (desarrollo, escenario, maestro...)
  • Estándares de redacción de pruebas. Propósito, metodología, cobertura.
  • Estándares de revisión de código
  • Normas de registro de deuda técnica y eliminación de la misma.
  • Estándares de comunicación del equipo
  • Y más...

Se debe proporcionar acceso y navegación convenientes a todos estos estándares para que los nuevos empleados puedan familiarizarse con ellos lo antes posible al comenzar a trabajar.

Garantizar el cumplimiento de los estándares de desarrollo.

El principio principal aquí es automatizar todo lo posible.

El estilo de código básico se automatiza mediante la configuración de herramientas de formato de código.

Todos los marcos, herramientas y administradores de paquetes utilizados deben configurarse fácil y rápidamente en las máquinas en funcionamiento, a veces con la ayuda de pautas preparadas. También es posible automatizar la creación de módulos/componentes/unidades individuales en el código del proyecto a través de herramientas de plantillas.

Las configuraciones de canalizaciones de CI/CD y muchos otros recibos se pueden almacenar cuidadosamente en las fuentes del gremio.

Las cosas que simplemente no se pueden automatizar deben verificarse durante la revisión del código y los procesos de tutoría.

Detecte y elimine la deuda técnica

Todo ingeniero experimentado sabe el daño que puede traer la deuda técnica. Al tener un gremio en la empresa, los ingenieros pueden usarlo como la principal emisora que informa a todos los demás (gerencia, clientes, equipo de ventas, etc.) sobre la deuda técnica, cómo lidiar con ella y cuáles son las consecuencias de ignorar este problema.

Mantener una comunicación eficaz del equipo.

Un estándar muy importante es la comunicación entre los miembros del gremio. La administración del gremio debe evitar cualquier comunicación tóxica, comentarios sobre las habilidades de alguien. Cada desarrollador debe sentirse como un miembro digno del equipo.

Todos los comentarios sobre la eliminación técnica de la deuda deben ser razonables y correctos. Al mismo tiempo, es crucial que el gremio siga estrictamente los intereses de la implementación de las mejores prácticas y pueda fundamentar correctamente a los ingenieros menos calificados por qué sus soluciones no son apropiadas, requieren reelaboración o no pueden ser aprobadas.

Todas las relaciones entre la administración del gremio y los miembros del gremio deben basarse en la confianza.

Aplicar tecnologías de vanguardia cuando sea relevante

El gremio debe apoyar el desarrollo de nuevos proyectos utilizando una pila de tecnología moderna. También debe intentar actualizar la pila para las existentes siempre que sea posible. Este es un gran componente de motivación tanto para los propios desarrolladores como para el cliente del producto. La experiencia global está creciendo y están surgiendo soluciones más flexibles, productivas y funcionales. El gremio debe marcar tendencias dentro de la empresa en este sentido. El gremio debe ser capaz de encontrar, implementar y justificar nuevas soluciones y marcos, lenguajes de programación y herramientas. Además, la elección no debe ser exagerada, sino reflexiva y racional en términos de estabilidad y apoyo adicional. Por lo tanto, se recomienda encarecidamente que la parte práctica del trabajo del gremio se base en proyectos internos de la empresa con objetivos reales y medibles.

Proporcione estimaciones de desarrollo y arquitectura de características bien equilibradas

Las estimaciones de Guild deben basarse en una arquitectura correctamente definida y esta definición debe basarse en la comprensión de las tecnologías de vanguardia relevantes existentes. Además, las bibliotecas de soluciones probadas existentes de un gremio también se pueden usar como una opción "lista para usar".

Todos los miembros del equipo deben entrenar su habilidad de estimación, cuanto mayor sea la calificación, más cosas voluminosas se pueden dar para evaluar (desde micro tareas hasta proyectos completos).

Al estimar las características, es necesario comprender sus pasos de implementación. En la mayoría de los casos son los siguientes:

  • Cree un código completamente funcional basado en una arquitectura definida
  • Compruebe la función de aplicación en ejecución en diferentes escenarios
  • Compruebe la función en las plataformas compatibles
  • Cubra el código con pruebas (unidad, etc.)
  • Despliéguelo, apruebe la revisión del código, tal vez haga algunas correcciones después de recibir comentarios

Construir experiencia del gremio

La experiencia gremial debe basarse en la planificación y ejecución de proyectos internos, donde se utilicen nuevas tecnologías, enfoques y metodologías. Los proyectos pueden ser de muestra y tener solo fines de estudio, pero es preferible tratar de aplicar cualquier proyecto a las necesidades específicas internas de la empresa o incluso desarrollar e implementar una idea de un proyecto comercial. Este concepto también ayuda a utilizar y aumentar la experiencia de los recursos de banco existentes y aplicar el conocimiento tecnológico de vanguardia obtenido a proyectos comerciales regulares.

Una base de código de productos comerciales lanzados también puede ser una fuente útil para la experiencia del gremio. Algunas de las funciones (módulos) se pueden implementar con la posibilidad de reutilizarlas en proyectos futuros. Dichos casos deben registrarse y catalogarse en la biblioteca de soluciones comprobadas del gremio.

Proporcionar tutoría y entrenamiento a todos los miembros.

Es fundamental cultivar una cultura de comunicación y ayuda mutua para quienes necesitan ayuda. En las grandes empresas, el número de miembros de un gremio puede ser bastante grande. Es por eso que el equipo de liderazgo del gremio no solo debe asesorar, sino también saber cómo delegar las funciones de mentoría entre los ingenieros más calificados.

La tutoría debe ser una de las habilidades necesarias de los desarrolladores de alto nivel. Los desarrolladores dicen que no puedes sentirte como un verdadero senior, si no trabajas con compañeros de equipo de menor grado.

Mejorar las habilidades de los miembros del gremio

Los miembros del gremio deben desarrollarse continuamente. El gremio debe motivar, proporcionar a sus miembros hojas de ruta, listas de verificación y procedimientos de evaluación transparentes. La capacitación y los talleres pertinentes deben llevarse a cabo de manera regular. Las evaluaciones de habilidades deben hacerse en términos de ejecución de proyectos gremiales. La evaluación debe llevarse a cabo de tal manera que el resultado final sea razonable, medible, imparcial, honesto y comprensible para el propio ingeniero.

Entrevistas y proceso de selección de candidatos adecuados

El gremio debe seleccionar especialistas de primer nivel que puedan proporcionar entrevistas de trabajo de alta calidad.

Conclusión

Como podemos ver ahora, un gremio de tecnología tiene muchos deberes. Entendemos que algunas de las declaraciones descritas anteriormente no pueden implementarse de inmediato y en su totalidad. A veces, en el mundo real, tienes que desviarte de las reglas por el bien del resultado.

No obstante, pensamos que los gremios tecnológicos deben servir a las empresas para lograr los siguientes objetivos:

Los productos lanzados deben tener una calidad decente, hechos con amor y enfoques modernos, una pequeña cantidad de deuda técnica, que se registra y se puede eliminar si es necesario.

Al tener gremios, las empresas pueden unificar más fácilmente el uso de tecnologías y los procesos de entrega en varias cuentas y departamentos.

Ofrezca soluciones comprobadas para tareas estándar y no triviales. La experiencia del gremio debería crecer y ayudar a resolver los problemas de ingeniería cada vez con más eficacia.

Aumentar significativamente la retención de ingenieros en una empresa. Es bueno cuando el gremio crea una gran cantidad de desarrolladores exitosos que están agradecidos por su experiencia.

La experiencia de la propia empresa debe almacenarse cuidadosamente, catalogarse y ser accesible para su reutilización. Y algunos de sus componentes innovadores deben ser presentados a la comunidad para promover a la empresa como un participante activo en su vida.