Puedes ahorrar
Hace un tiempo hablábamos de que invertir en una formación para tu equipo junior con Hello, Wordl! te permite ahorrar costes, es decir, que sale más barato pagar por formar a tus empleados sin experiencia que no hacerlo y que aprendan ellos solos en el proyecto.
Uno de los puntos esenciales donde se encuentra ese ahorro es el menor tiempo que tienen que dedicar los programadores con más experiencia en guiar a los más junior en tareas sencillas o explicar conceptos genéricos básicos.
Otro punto en el que se van una cantidad enorme de recursos, y por tanto costes, es en las meteduras de pata por falta de experiencia que cometen aquellas personas que están empezando a trabajar y que muchas veces requieren de horas de compañeros para solucionar o que “saltan” meses después.
Formaciones Hello, World!
En nuestras formaciones de Hello, World! además de impartir formaciones en una tecnología concreta como pueda ser Java Spring, Angular o React; también hacemos hincapié en las habilidades blandas y lo que llamamos formación de contexto. En esta formación de contexto es en lo que nos queremos parar ahora mismo.
Esta formación de contexto es una razón fundamental para reducir la dependencia de tus equipos junior para con los seniors. Si los programadores más novatos tienen la formación mínima, tanto teórica como práctica, para conocer los conceptos y herramientas generales de nuestro día a día no tendrán que preguntar cada mínimo detalle a sus compañeros más experimentados. Por encima, cuando tengan que preguntar algo -que lo harán- irán mucho más al grano y sus compañeros tendrán que ayudarles con un tema concreto sin tener que explicarles en detalle todo lo que sucede alrededor.
Contextualicemos
Imaginemos que comienza un programador sin experiencia previa en tu proyecto y para que vaya entrando en materia le mandamos una tarea sencilla. Resulta que más o menos lo resuelve y lo intenta subir a git. Sin embargo, no ha tenido en cuenta que el proyecto está configurado con un sistema de pull request con code review y aunque se le comentó que se trabajaba con gitFlow no sabe lo que es y por vergüenza no lo preguntó. Una vez ocurrido esto lo tenemos que solucionar. Deshacer los commit, volver a generar toda la PR, subir los cambios desechos de nuevo, etc. Y además, contarle a este nuevo compañero cómo funciona git, GitFlow, code review, etc, etc, etc.
Este problema se puede prevenir de antemano de dos formas:
- Explicarle cómo funciona git, todo el proceso de flujos de trabajo, los flujos de code review, revisión y aprobación de PRs, como hacer commits, pull, push, etc. antes de que haga nada y como no lo ha hecho antes las primeras veces que esté haciendo estas tareas siéntate con él para asegurarte que lo hace bien
- Formarlo con Hello, World! y ahorrarse todo este dolor de cabeza
Si optamos por la primera opción, nos debemos olvidar totalmente del trabajo de un senior durante días y de muchas horas a posteriori explicando cada pequeño detalle varias veces. En la segunda opción estos conceptos los tendrá bastante claros antes de comenzar en el proyecto, ya que no solo los explicamos de forma teórica sino que los vamos aplicando en los ejercicios y sobre todo en la práctica final, consiguiendo una asimilación efectiva de los mismos. Este es solo un ejemplo, quizás el más claro, de las ventajas de la formación de contexto que impartimos en los bootcamps para junior en Hello, World.
La diversidad en nuestras formaciones
Estas formaciones de contexto pueden variar ligeramente en función de la duración del curso, la tecnología base que impartimos o las peticiones de las empresas. En estas formaciones podemos encontrar conceptos informáticos genéricos, conceptos puros de programación, uso de herramientas o metodologías. Pero podemos decir que generalmente solemos incluir los siguientes elementos:
- Git
- Flujos de trabajo con git (git Flow)
- Gestión de dependnecias (npm, maven, nuget)
- Metodologías ágiles (scrum/canvan)
- Clean code y buenas prácticas en el desarrollo de software
- Estructuras de datos complejas
- Algoritmia (como afrontar un algoritmo/problema en la vida real)
- Introducción al testing
- Conceptos básicos de cliente/servidor
- Postman
- Almacenamiento persistente
- Desarrollo seguro
- SOLID
- Accesibilidad
Como podemos ver en estas formaciones de contexto para junior, nos enfocamos en varios puntos claves. Por un lado nos aseguramos de que tengan soltura manejando las herramientas básicas del día a dia. Les enseñamos a pensar, no solo en solucionar los problemas sino en solucionarlos de la forma más eficiente, eficaz y limpia posible. Les introducimos en conceptos teóricos de base que les ayuden a comprender lo que hacen, pero muy centrados en lo que realmente hacemos diariamente. Y por último y quizás lo más importante, les picamos y metemos el gusanillo de la calidad del software. Obviamente, en una formación inicial de 2 a 3 meses no vamos a conseguir que sean Uncle Bob ni que dominen los conceptos de código limpio, pero sí que conseguimos que se interesen por ello y lo empiecen a tener en cuenta desde el primer día, reduciendo los vicios y malas prácticas con las que, por desgracia, todos hemos empezado y asentando las bases de una carrera de calidad en el desarrollo del software.