Necesita un jun ya preparado: enséñele usted mismo o cómo lanzamos un curso de seminarios para estudiantes

Necesita un jun ya preparado: enséñele usted mismo o cómo lanzamos un curso de seminarios para estudiantes

No es ningún secreto para el personal de RR.HH. de TI que si su ciudad no tiene más de un millón de habitantes, entonces encontrar un programador allí es problemático, y una persona que tenga la tecnología y la experiencia necesarias es aún más difícil.

El mundo de las tecnologías de la información en Irkutsk es pequeño. La mayoría de los desarrolladores de la ciudad conocen la existencia de la empresa ISPsystem y muchos ya están con nosotros. Los solicitantes a menudo vienen para puestos junior, pero en su mayoría son graduados universitarios del pasado que aún necesitan formación y perfeccionamiento.

Y queremos estudiantes preparados que hayan programado un poco en C++, estén familiarizados con Angular y hayan visto Linux. Esto significa que tenemos que ir a enseñarles nosotros mismos: presentarles la empresa y darles el material que necesitan para trabajar con nosotros. Así nació la idea de organizar cursos sobre desarrollo backend y frontend. El invierno pasado lo implementamos y en este artículo te contamos cómo sucedió.

Formación

Al principio reunimos a desarrolladores líderes y discutimos con ellos las tareas, la duración y el formato de las clases. Sobre todo, necesitamos programadores de backend y frontend, por eso decidimos realizar seminarios en estas especialidades. Como esta es la primera experiencia y se desconoce cuánto esfuerzo requerirá, limitamos el tiempo a un mes (ocho clases en cada dirección).

El material para los seminarios en el backend fue preparado por tres personas y leído por dos; en el frontend, los temas se dividieron entre siete empleados.

No tuve que buscar profesores durante mucho tiempo ni persuadirlos. Hubo un bono por participación, pero no fue decisivo. Hemos atraído a empleados de nivel medio y superior que están interesados ​​en probarse a sí mismos en un nuevo rol, desarrollando habilidades de comunicación y transferencia de conocimientos. Pasaron más de 300 horas preparándose.

Decidimos realizar los primeros seminarios para los chicos del departamento cibernético del INRTU. Acababa de aparecer allí un cómodo espacio de coworking y también estaba previsto el Career Day, una reunión de estudiantes con posibles empleadores a la que asistimos regularmente. Esta vez, como siempre, nos hablaron de ellos y de las vacantes, y además nos invitaron al curso.

A quienes deseaban participar se les entregó un cuestionario para conocer sus intereses, nivel de formación y conocimiento de la tecnología, recopilar contactos para invitaciones a seminarios y también averiguar si el oyente tenía una computadora portátil que pudiera llevar a las clases.

En las redes sociales se publicó un enlace a la versión electrónica del cuestionario y también le pidieron a un empleado que continúa estudiando una maestría en el INRTU que lo comparta con sus compañeros. También se pudo acordar con la universidad publicar la noticia en su página web y redes sociales, pero ya había bastante gente dispuesta a asistir al curso.

Los resultados de la encuesta confirmaron nuestras suposiciones. No todos los estudiantes sabían qué eran un backend y un frontend, y no todos trabajaron con la tecnología que utilizamos. Escuchamos algo e incluso hicimos proyectos en C++ y Linux, muy pocas personas usaban Angular y TypeScript.

Al inicio de clases, había 64 estudiantes, lo cual era más que suficiente.

Se organizaron un canal y un grupo en el messenger para los participantes del seminario. Escribieron sobre cambios en el horario, publicaron videos y presentaciones de conferencias y tareas. Allí también mantuvieron debates y respondieron preguntas. Ahora los seminarios han terminado, pero las discusiones en el grupo continúan. En el futuro, a través de él será posible invitar a chicos a geeknights y hackathons.

Contenido de las conferencias.

Lo entendimos: en un curso de ocho lecciones es imposible enseñar programación en C++ o crear aplicaciones web en Angular. Pero queríamos mostrar el proceso de desarrollo en una empresa de productos moderna y al mismo tiempo presentarnos nuestra tecnología.

Aquí no basta la teoría, se necesita práctica. Por lo tanto, combinamos todas las lecciones con una sola tarea: crear un servicio para registrar eventos. Planeamos desarrollar una aplicación con los estudiantes paso a paso, y al mismo tiempo presentarles nuestra pila y sus alternativas.

Conferencia introductoria

Invitamos a todos los que completaron los formularios a la primera lección. Al principio dijeron que solo el full stack, eso fue hace mucho tiempo, pero ahora en las empresas de desarrollo hay una división en desarrollo frontal y posterior. Al final nos pidieron que eligiéramos la dirección más interesante. Un 40% de los estudiantes se matriculó en el backend, un 30% en el frontend y otro 30% decidió asistir a ambos cursos. Pero a los niños les resultaba difícil asistir a todas las clases y poco a poco se decidieron.

Necesita un jun ya preparado: enséñele usted mismo o cómo lanzamos un curso de seminarios para estudiantes

En la conferencia introductoria, el desarrollador backend bromea sobre el enfoque de la formación: “Los seminarios serán como instrucciones para los aspirantes a artistas: paso 1 - dibuja círculos, paso 2 - termina de dibujar el búho"
 

Contenidos de los cursos de backend.

Algunas de las clases de backend se dedicaron a la programación y otras al proceso de desarrollo en general. La primera parte abordó la compilación, make СMake y Conan, multiproceso, métodos y patrones de programación, trabajo con bases de datos y solicitudes http. En la segunda parte hablamos de pruebas, Integración Continua y Entrega Continua, Gitflow, trabajo en equipo y refactorización.

Necesita un jun ya preparado: enséñele usted mismo o cómo lanzamos un curso de seminarios para estudiantes

Diapositiva de la presentación de desarrolladores backend.
 

Contenidos de los cursos frontend

Primero, configuramos el entorno: instalamos NVM, usamos Node.js y npm, los usamos Angular CLI y creamos un proyecto en Angular. Luego tomamos módulos, aprendimos a usar directivas básicas y crear componentes. A continuación, descubrimos cómo navegar entre páginas y configurar el enrutamiento. Aprendimos qué son los servicios y cuáles son las características de su funcionamiento dentro de los componentes individuales, los módulos y la aplicación completa.

Nos familiarizamos con la lista de servicios preinstalados para enviar solicitudes http y trabajar con enrutamiento. Aprendimos cómo crear formularios y procesar eventos. Para realizar pruebas, creamos un servidor simulado en Node.js. De postre aprendimos sobre el concepto de programación reactiva y herramientas como RxJS.

Necesita un jun ya preparado: enséñele usted mismo o cómo lanzamos un curso de seminarios para estudiantes

Diapositiva de una presentación de desarrolladores front-end para estudiantes
 

Instrumentos

Los seminarios implican práctica no sólo en clase, sino también fuera de ellas, por lo que se necesitaba un servicio de recepción y revisión de tareas. Los front-end eligieron Google Classroom, los back-end decidieron escribir su propio sistema de calificación.
Necesita un jun ya preparado: enséñele usted mismo o cómo lanzamos un curso de seminarios para estudiantes

Nuestro sistema de calificación. Es inmediatamente obvio lo que escribió el backender :)

En este sistema se autotestó el código escrito por los estudiantes. La calificación dependía de los resultados de la prueba. Se podrían obtener puntos adicionales por la revisión y por el trabajo presentado a tiempo. La calificación general influyó en el lugar en el ranking.

La calificación introdujo un elemento de competencia en las clases, por lo que decidimos dejarla y abandonar Google Classroom. Por ahora, nuestro sistema es inferior en términos de comodidad a la solución de Google, pero esto se puede solucionar: lo mejoraremos en los próximos cursos.

Tips

Nos preparamos bien para los seminarios y casi no cometimos errores, pero aun así cometimos algunos errores. Formalizamos esta experiencia en un consejo, por si a alguien le resulta útil.

Elige tu tiempo y distribuye tus actividades correctamente

Esperábamos la universidad, pero fue en vano. Al final de las clases, quedó claro que nuestro curso se llevó a cabo en el momento más inconveniente del año académico: antes de la sesión. Los estudiantes regresaban a casa después de clases, se preparaban para los exámenes y luego se sentaban a hacer nuestras tareas. A veces las soluciones llegaban en 4 o 5 horas.

También es importante considerar la hora del día y la frecuencia de las actividades. Comenzamos a las 19:00, por lo que si las clases de un estudiante terminaban temprano, tenía que irse a casa y regresar por la tarde, lo que era un inconveniente. Además, las clases se impartían los lunes y miércoles o jueves y martes, y cuando había un día para hacer tareas, los niños tenían que trabajar duro para completarlas a tiempo. Luego nos adaptamos y en esos días pedíamos menos.

Trae compañeros que te ayuden durante tus primeras clases.

Al principio, no todos los estudiantes podían seguir el ritmo del profesor; surgieron problemas con la implementación del entorno y su configuración. En tales situaciones, levantaban la mano y nuestro empleado se acercaba y ayudaba a solucionarlo. Durante las últimas lecciones no hubo necesidad de ayuda porque ya estaba todo preparado.

Grabar seminarios en vídeo.

De esta forma solucionarás varios problemas a la vez. Primero, déles a aquellos que se perdieron la clase la oportunidad de verla. En segundo lugar, reponga la base de conocimientos interna con contenido útil, especialmente para principiantes. En tercer lugar, al observar la grabación se puede evaluar cómo el empleado transmite información y si puede captar la atención de la audiencia. Este análisis ayuda a desarrollar las habilidades de oratoria del hablante. Las empresas de TI siempre tienen algo que compartir con sus colegas en conferencias especializadas y los seminarios pueden producir excelentes oradores.

Necesita un jun ya preparado: enséñele usted mismo o cómo lanzamos un curso de seminarios para estudiantes

El profesor habla, la cámara escribe.
 

Esté preparado para cambiar su enfoque si es necesario

Íbamos a leer un pequeño fragmento de teoría, hacer un poco de programación y dar tarea. Pero la percepción del material resultó no ser tan sencilla y fluida, y cambiamos el enfoque de los seminarios.

En la primera mitad de la conferencia comenzaron a considerar en detalle la tarea anterior y en la segunda parte comenzaron a leer la teoría para la siguiente. En otras palabras, les dieron a los estudiantes una caña de pescar y en casa ellos mismos buscaron un depósito, un cebo y pescaron, profundizaron en los detalles y entendieron la sintaxis de C++. En la siguiente conferencia discutimos juntos lo que pasó. Este enfoque resultó ser más productivo.

No cambies de profesor con frecuencia

Teníamos dos empleados que impartían seminarios en el backend y siete en el frontend. No hubo mucha diferencia para los estudiantes, pero los profesores principiantes llegaron a la conclusión de que para un contacto más productivo es necesario conocer a la audiencia, cómo perciben la información, etc., pero cuando hablas por primera vez, este conocimiento no está ahí. Por lo tanto, puede ser mejor no cambiar de profesor con frecuencia.

Haga preguntas en cada lección

Es poco probable que los propios estudiantes digan si algo va mal. Tienen miedo de parecer estúpidos y hacer preguntas “estúpidas”, y les da vergüenza interrumpir al conferenciante. Esto es comprensible, porque desde hace varios años ven un enfoque diferente del aprendizaje. Entonces, si es difícil, nadie lo admitirá.

Para aliviar la tensión utilizamos la técnica del “señuelo”. El colega del profesor no sólo ayudó, sino que también hizo preguntas durante la conferencia y sugirió soluciones. Los estudiantes vieron que los profesores son personas reales, puedes hacerles preguntas e incluso bromear con ellos. Esto ayudó a calmar la situación. Lo principal aquí es mantener un equilibrio entre apoyo e interrupción.

Bueno, incluso con tal "señuelo", sigue preguntando sobre las dificultades, averigua qué tan adecuada es la carga de trabajo, cuándo y cómo analizar mejor la tarea.

Tener una reunión informal al final.

Después de recibir la solicitud final en la última conferencia, decidimos celebrarlo con pizza y simplemente charlar en un ambiente informal. Dieron regalos a los que aguantaron hasta el final, nombraron a los cinco mejores y encontraron nuevos empleados. Estábamos orgullosos de nosotros mismos y de los estudiantes, y nos alegramos de que finalmente hubiera terminado :-).

Necesita un jun ya preparado: enséñele usted mismo o cómo lanzamos un curso de seminarios para estudiantes
Presentamos premios. Dentro del paquete: camiseta, té, libreta, bolígrafo, pegatinas.
 

resultados

16 alumnos llegaron al final de las clases, 8 en cada sentido. Según los profesores universitarios, esto es mucho para cursos de tanta complejidad. Contratamos o casi contratamos a cinco de los mejores, y cinco más vendrán a practicar en el verano.

Inmediatamente después de la clase se lanzó una encuesta para recopilar comentarios.

¿Los seminarios le ayudaron a decidir su elección de dirección?

  • Sí, me dedicaré al desarrollo backend: 50 %.
  • Sí, definitivamente quiero ser desarrollador front-end: 25%.
  • No, todavía no sé qué me interesa más: 25%.

¿Qué resultó ser lo más valioso?

  • Nuevos conocimientos: "esto no se puede conseguir en la universidad", "una nueva mirada al C++ denso", formación en tecnologías para aumentar la productividad: CI, Git, Conan.
  • La profesionalidad y pasión de los profesores, el deseo de transmitir conocimientos.
  • Formato de clase: explicación y práctica.
  • Ejemplos del trabajo real.
  • Enlaces a artículos e instrucciones.
  • Presentaciones de conferencias bien escritas.

Lo principal es que pudimos decir que después de graduarse de la universidad, los muchachos tendrán mucho trabajo interesante y desafiante. Comprendieron en qué dirección querían avanzar y se acercaron un poco más a una carrera exitosa en TI.

Ahora sabemos cómo elegir el formato de formación adecuado, qué simplificar o excluir por completo del programa, cuánto tiempo lleva prepararse y otras cosas importantes. Entendemos mejor a nuestros oyentes, los miedos y las dudas quedan atrás.

Quizás todavía estemos lejos de crear una universidad corporativa, aunque ya estemos formando empleados dentro de la empresa y trabajando con estudiantes, pero hemos dado el primer paso hacia esta seria tarea. Y muy pronto, en abril, volveremos a enseñar, esta vez a la Universidad Estatal de Irkutsk, con la que colaboramos desde hace mucho tiempo. ¡Deseanos suerte!

Fuente: habr.com

Añadir un comentario