Tuesday, 27 October 2015

Toptal Global Mentors: Education Everywhere

www.toptal.com

BY RODRIGO ALVES - FREELANCE SOFTWARE ENGINEER @ TOPTAL

As software becomes indispensable for all economic activity, the demand for good software engineers only increases. But while the number of people engaged in learning software development seems to be growing, we know that not everybody has the same access to education or the means to successfully become professionals.
There are several reasons for this, including difficulties with access to computers or the Internet, and the more serious issues of gender and economic inequality.
Toptal has a mission to help underprivileged groups through software development education, via the Toptal Global Mentors program, in which enrolled developers become mentors for six months to one student. During this period, mentors and mentees are expected to meet for at least an hour every week and mentors are there to provide professional guidance.
This article intends to shed some light on the Toptal Global Mentors program, provide insights into how it works, and what mentors and mentees can expect from the program, and discuss some of the best approaches for this important opportunity.

The Problem

The world continues to evolve at an accelerating rate, driven by technological advancements that build one atop another at an unprecedented pace. Almost every day, new reports prove that this or that once-venerated skill or craft is quickly becoming obsolete, replaced by computer algorithms and robots that can do it better and cheaper. Among the few skills that continue to promise a fruitful and secure career is that of software development.
But software development is not an easy skill to learn; it takes a great deal of time and focus to become a proficient coder, and to the unversed, the core concepts can be utterly indecipherable without guidance.
The Toptal Global Mentors Program is designed to level the playing field.
The Toptal Global Mentors Program is designed to level the playing field.

It’s no surprise that more people are choosing to forego the alternatives, and shift their focus towards a software development career. Many are doing so with great success. Yet despite the immense demand for skilled programmers, women, minorities, and low-income individuals face major hurdles to reaching the promised land. The first obstacle is access to education resources. The second is acceptance by an industry that suffers from an embarrassing lack of diversity.
In short, the playing field is not even. As a result, not only do those facing these disadvantages suffer, but so does the tech industry as a whole. The Toptal Global Mentors program is designed to address this issue.

Toptal Global Mentors Program

Toptal has partnered with General Assembly to help solve this problem. Through its Opportunity Fund, General Assembly has helped students from disadvantaged backgrounds start learning the skills of the programming trade.
The Toptal Global Mentors program is an extension of this service. Through the program, Toptal developers, like me, have a chance to provide ongoing remote mentorship to Opportunity Fund graduates. By signing up to be a part of the program, I have committed to connect with my student for at least one hour, every week for six months, to help answer his questions and teach him new software development skills.

The Mentor-Mentee Relationship

I’ve been mentoring for about twelve weeks so far, and have found it to be extremely enjoyable and rewarding. Teaching is, as the saying goes, one of the best ways to learn, and now I find myself going through several concepts again, and experiencing a whole new perspective. There’s also another, deeper level of gratification with mentoring: Feeling that you’re helping someone change their lives for better and watching them open new doors to their future.
I always have a good time when I am connected to my student. I like talking to him about his background, experiences, and plans for the future; I think we both benefit from helping each other understand things better, be it technical or cultural. Many days, I feel like I learn as much from him as he does from me.
As a mentor, it’s important to be patient and remember where your students are coming from. My student, for example, has had to struggle witht a great deal of economic and social disadvantages, and has never had access to the kinds of educational resources that I had. Sometimes I am caught off guard by the things I have to explain. But these differences are symptomatic of the larger problems we are trying to solve, so I am always mindful to be understanding.
The mentor-mentee relationship has to be straightforward, productive and mutually beneficial.
The mentor-mentee relationship has to be straightforward, productive and mutually beneficial.

When teaching any difficult subject, there is a lot of potential, for both the student and the teacher, to get frustrated. If the student isn’t grasping a concept, both sides can blame themselves, or worse, blame each other, for being a “bad teacher” or a “bad student.” But, this isn’t fair to either side; at some point, both participants have had to prove themselves in order to make it into the Global Mentors program. My role is to help my student with whatever he is struggling with, not to force him to learn what I think he should learn.
Having said that, I’ve found it can take time to feel out what I should be teaching. For the student, it can often be impossible to know what information he or she is lacking, so the mentor must take responsibility for finding where the missing pieces are. My student and I started out building an application. The idea was that I would teach him design and procedural techniques along the way, things like cohesion, reusability, testing, versioning, and so on. But from the get-go it didn’t feel right. He didn’t find it engaging, and seemed to be struggling to appreciate why these things were necessary. After the first few weeks, I decided to switch to more fundamentals, and discuss trees and sorting algorithms. The change in his response was immediate: This is what he was missing! Now that we know where to focus our energies, every session is engaging and exciting.
Rather than get frustrated or impatient, I always see mentoring as an opportunity to grow. Helping someone else learn this amazing skill is immensely satisfying, and in the process, I become better at it myself. Although the commitment is for one hour a week, I usually find our meetings last a good deal longer.

Useful Tools for Mentors and Students

For mentors and mentees who are getting started with the Toptal Global Mentors program, here are some free tools you will probably find useful for connecting and working on software together.
A myriad of online and offline tools for remote learning are readily available, usually free of charge.

A myriad of online and offline tools for remote learning are readily available, usually free of charge.

Chat and Screensharing

You can’t do anything if you can’t talk to each other! Since mentorship time can be fairly limited, it’s important to use voice or video chat tools so that you can talk to each other while working, instead of stopping to type messages. Skype and Google Hangouts are both great all-in-one chat applications. Both also have built-in screen sharing capability, which is critical for seeing what the student or mentor is doing (unless you are using one of the pair programming tools mentioned below).

No comments:

Post a Comment