¡Hola a todos!
Creo que este artículo será útil para los principiantes en el mundo de las TI. Para los desarrolladores experimentados, muchos de los consejos pueden parecer obvios. Pero espero que ellos también puedan aprender algo nuevo y útil para ellos.
1. Intente sumergirse en el proceso empresarial
En el entorno de desarrollo ágil actual, comprender cómo funciona un proceso empresarial es fundamental. Un conocimiento profundo del producto que se está desarrollando le permite diseñar correctamente la arquitectura de la aplicación y seleccionar la pila de tecnología relevante. Además, a los representantes comerciales les gustó la aparición del término "desarrollador de productos". Y ahora, el rol de un desarrollador presupone no solo la presencia de competencias técnicas desarrolladas, sino también una cierta forma de pensar: cuando un desarrollador participa en discusiones de productos, participa en la formación de un plan de desarrollo de productos y monitorea el impacto de los lanzamientos en el desempeño comercial. En resumen, está “apoyando” el producto.
Hoy en día, el enfoque del producto es omnipresente. Y para mantenerse al día con las realidades modernas, es importante comprender cómo funciona el negocio dentro del cual se desarrolla un producto de software.
2. Usa un vocabulario unificado
La falta de una terminología unificada en un proyecto puede provocar el efecto de un teléfono roto, cuando el resultado no le da a la empresa exactamente lo que quería del desarrollo. O cuando los desarrolladores nombran la misma entidad comercial de manera diferente en su código, lo que puede generar errores potenciales y un crecimiento excesivo del código base. Por lo tanto, el siguiente punto importante, considero la compilación y el uso de una terminología uniforme en el proyecto. Y no solo en comunicación, sino también en código.
Al iniciar un proyecto, es aconsejable fijar los términos comerciales utilizados en un solo documento: un diccionario. En el futuro, este documento no solo será una herramienta de comunicación entre los miembros del equipo. Se convertirá en una especie de contrato API entre el desarrollo y el negocio, entre los requisitos del negocio y el código. Muchas metodologías de desarrollo se basan en esta idea. Por ejemplo, diseño impulsado por dominio . El uso del diccionario crea el efecto de un espacio de información único para todos los miembros del equipo, donde todos se entienden perfectamente. Y también le permite reducir significativamente el umbral para ingresar al proyecto para los miembros del equipo recién llegados.
3. Formar acuerdos de equipo
El problema de las discusiones en los comentarios a las solicitudes de extracción siempre es agudo. En un momento, en uno de los equipos, incluso desarrollamos una regla de que bajo un comentario del revisor no debería haber más de cinco mensajes. De lo contrario, se consideró que la discusión se deslizaba hacia la demagogia, el agravamiento de las relaciones entre los miembros del equipo y el uso improductivo del tiempo de trabajo. Y la falta de acuerdos de mando tiene la culpa.
Antes de comenzar el desarrollo, recomiendo encarecidamente adoptar acuerdos generales sobre cuya base se construirá el trabajo del equipo en el futuro. Aquí me refiero a la arquitectura del proyecto, el estilo de codificación, el tamaño permitido de clases y métodos, el cronograma de revisiones de código y otros puntos que usted considera importantes para su equipo. Porque sin realizar este procedimiento de antemano, una y otra vez se encontrará con el mismo tipo de temas de discusión en los comentarios.
Y aquí nuevamente me gustaría referirme a mi experiencia. Cuando presentamos los acuerdos de equipo, en realidad solo observamos la implementación de la función al realizar revisiones de código. Y el código en algún momento comenzó a parecer que fue escrito por una sola persona. Y lo más importante, mejoraron las relaciones dentro del equipo, ya que prácticamente no había base para conflictos.
Naturalmente, todos los acuerdos son difíciles de tener en cuenta. Y mucho se puede automatizar mediante el uso de linters, pre-ganchos, recordatorios automáticos y otras herramientas auxiliares.
4. Dar y recibir comentarios con regularidad
No subestimes la ceremonia de retroalimentación. Intente compartirlo con sus colegas con la mayor frecuencia posible. Después de todo, no siempre es posible observar objetivamente el trabajo realizado y sacar las conclusiones correctas. Cada uno de nosotros tiene una experiencia única y, a través de su prisma, podemos brindar importantes consejos, que pueden convertirse en la base de su futuro desarrollo.
La retroalimentación correcta es siempre una zona de crecimiento para un desarrollador. Y la retroalimentación oportuna es el "pegamento de la información" que ayuda a unir al equipo y protegerlo de la discordia.
5. Apéguese a un enfoque sistemático
Trate de ceñirse siempre a sus acuerdos y metodologías de desarrollo elegidas. Si decide cubrir funciones con pruebas, siempre cubra. Si decide ejecutar una demostración previa al lanzamiento, hágalo siempre. Si el compromiso directo con una rama de lanzamiento está prohibido, entonces está prohibido para todos. Esto traerá consistencia y orden a las acciones de su equipo, y también asegurará a nuestro amado "tal vez" contra todos nosotros.
6. Utilizar metodologías de gestión del tiempo.
Para aumentar la eficiencia personal y el uso racional del tiempo de trabajo en mi práctica, trato de adherirme a la metodología de gestión del tiempo. En mi caso, este es Pomodoro . Por supuesto, tiene derecho a no insistir en mi elección. Pero en general, controlar el tiempo y descomponer las tareas dentro de la jornada laboral le permite estar más concentrado y ser más productivo al eliminar las distracciones y maximizar la concentración en la tarea actual.
Además, completar cada tarea produce una liberación de serotonina a corto plazo y una sensación de satisfacción. Al final del día, puede mirar la lista de tareas cerradas, analizar y pensar qué se puede mejorar en el futuro para lograr mejores resultados. Un retro tan personal al final del día.
7. Cuidado con el agotamiento
Hay días en los que nos apasiona tanto nuestro trabajo que nos olvidamos del tiempo de descanso. A veces podemos permitirnos "horas extras" por la noche para lograr rápidamente nuestras metas. Sin embargo, en esos momentos, debemos recordar que tomaremos prestada esta eficiencia y productividad momentáneas de nosotros mismos en el futuro.
Estar en este modo durante mucho tiempo conduce a una pérdida total o parcial de la eficiencia en el lugar de trabajo debido al creciente agotamiento emocional y físico. En otras palabras, conduce al agotamiento. La defensa psicológica del cerebro actúa en respuesta a un estrés prolongado para conservar los recursos del organismo.
Debe poder detenerse a tiempo y ajustar su régimen para evitar esto. Normalice su rutina de sueño y descanso, siga una dieta saludable, intente cambiar a su pasatiempo favorito y no olvide salir a caminar al aire libre.
Gracias por la atención. ¡Buena suerte a todos!