Some weeks ago, I received an invitation to participate in a big project named “Socio Formador” with one of the biggest universities in the country, Tecnológico de Monterrey. This big challenge involved guiding 50 students to complete 2 software development projects in 15 weeks (3 blocks of 5 weeks). From the planning to the implementation (SDLC), it was the first time that those students would face their first authentic project, not just a simple homework assignment. They wanted to play and learn in the real world.
For us, the idea was that this experience worked as a scouting camp where we could discover the talent and invite some students to be part of our company as future software engineers. From a high-level perspective, it looked like an easy plan, but the emotions were ready to flow.
When was the last time you did something for the first time?
It was our first time facing this kind of challenge. Previously, we got some experience mentoring interns and recent graduates, but never in a complete classroom. So, in this first block of 5 weeks, we learned how to coach together, and the students learned how to plan and analyze a software development project.
Block 1 – Planning, Analyzing, Designing, and walking through
Our students started to work on their prototypes with amazing features. We couldn’t imagine some of the solutions that they shared with us. Meanwhile, we were designing the best approach to assist 5 teams during the day to tackle all the different questions they had during this project phase. We had a boost seeing their designs, we were amazed by their innovative ideas, and we got a breath of fresh air during this phase.
Block 2 – Implement and don’t forget the testing before the integration
We started the second block, the one that all students had been waiting for. From this point until the end of the project, the students started coding the designs previously completed. This section of the project was the one where the students faced the real world, following specific requirements by a real client, implementing the best practices for coding, and having a real deadline. Hence, we needed to guide them on how to face the actual world in the software development industry. The big achievement of this part of the project was to make them understand how important the testing phase is in each assignment and how to ensure the products worked properly. To achieve this, we needed to test their products until their software crashed.
Block 3 – Starting is not most people’s problem, staying, continuing, and finishing are
After crashing their products, we worked on rebuilding their projects, but now with a huge lesson learned: we need to test everything before implementing. During the last 5 weeks, all the teams looked like professional development teams; their vocabulary changed, their questions changed, their vision of the projects changed, and now we were ready for the main event: a showcase where all of them would present their projects to the clients.
Their final projects were remarkable; the solutions provided, the technical skills displayed, and the passion shown during the last demos were amazing. At this moment, as a team, we said, “We did it,” and we made 50 students show us a professional project in 15 weeks. Both students and the team completed the goal. We did it together!
In learning, you will teach, and in teaching, you will learn…
Taking on a mentoring role can be scary, especially if it is your first time in a complete classroom. When done properly, it demands time and energy from both parties. But collaboration can be fun and stimulating within a mentoring relationship. The students want to learn and grow. The mentor wants to provide the proper amount of structure and support. On my side, I looked back on how fun it is to innovate and think outside of the box. Also, I reinforced how fun my job is and how I like to be part of a software development team. This group of 50 students made me remember why I love my job, and now I’m unsure who teaches who.