Introduction
We have not even to risk the adventure alone
for the heroes of all time have gone before us.
The labyrinth is thoroughly known...
we have only to follow the thread of the hero path.
And where we had thought to find an abomination
we shall find a God.And where we had thought to slay another
we shall slay ourselves.
Where we had thought to travel outwards
we shall come to the center of our own existence.
And where we had thought to be alone
we shall be with all the world.-Joseph Campbell
There is no sense in trying to market mentoring and training for developers as a path to a better career for broad audiences. It has to be about more than a career.
Those people who already are in love with programming or are already interested in programming find their way on their own. They look for the groups like OpenHack and the online training like FreeCodeCamp.
So the training and mentoring we offer has to be clearly about the development and improvement of skills in development. Less like job training. More like gym training.
Trainees and Trainers
Some who have gone through a bootcamp or an online program do not need more than a mentor to show them a way to advance. Its been my experience that in the beginning most developers without college training, those who did not dream of doing software since they were children, don't have a strong technical direction. I think that the best thing you can do as a new developer, in the beginning, is fine someone, anyone, to share their knowledge. Later down the road there's more opportunity to be creative with the basic skills and branch out.
Example Trainees
Samantha
Samantha has no background in software at all. Four years ago her friend quit her job doing accounting and now is a software engineer, challenged and stimulated and contributing to the future. Samantha wants that for herself. So she gets a tip that TeamTreehouse offers low-priced instruction to get started. She starts doing those exercises after work every week.
Her weekly mentoring looks like a 30 minute session to talk through what she is working on, what she is thinking about doing next. Her mentor shares a few tips like keyboard shortcuts, the software she uses to code outside the browser. Samantha's mentor is mostly informing her about the basics of software engineering best tools and practices.
Atoinette
Atoinette has been through a bootcamp. She has a fundamental understanding of HTML/CSS/JavaScript. She has been introduced to React. She acknowledges the contradictions of earning a degree titling her a Full-stack Developer and lacking the credentials to get her first job as a Full-stack Developer. She begins taking any and every coding-related project she can get her hands on, keeping her engaged with her skillset.
Her weekly mentoring looks like two 30 minute sessions that are oriented to her trainers skillsets, learning how to apply her React skills to a real project. Layered in are concepts of collaborating using git in professional contexts, as well as her trainers insights into programming efficiently. Her mentor prepares exercises that are assigned in the first session then reviewed in the second session. The duo engage for six months on intermediate skill development exercises and build Atoinette's skillsets to improve her ability to land her first job.
Mike
Mike has taken a college course whose final deliverable is a website built in HTML and CSS (bootstrap). He has a desire to further his skills in front-end web development and lacks the structure to go forward.
His weekly mentoring looks like one 30 minute session in fundamental skill development like learning what a function is and how a function can make a Component in React. He has one 2 hour session with his mentor doing pair program to apply what he learned in his 30 minute session to a real problem under the supervision of his mentor. After a semester he earns independent study credits for his time and is able to take on an entry level development job.
Example Trainers
Atoinette
Having more experience than Samantha, Atoinette has the qualifications to be a mentor. She can answer the basic questions of HTML and CSS that Samantha asks, reinforcing what she learned in the bootcamp she recently graduated from. CODES provides her with general tips and examples of what mentoring materials can help guide her as mentor.
Darrell
Having credentials as one of the premier Gatsby developers on the planet, Darrell is able to provide an trainee with not only the fundamental knowledge necessary to be a developer, but also the knowledge of Gatsby that only a few people can provide. He can work with an beginner-intermediate developer on the structure of Gatsby applications, giving them transferable knowledge that could be applied to Next.js and other React paradigms. He is working with CODES to develop materials that can be re-used across The Hero Path program for Gatsby and React related training exercises.
Albert
Being experienced with building software and running software teams Albert can take on Mike as a trainee. Not an expert in React, though recognizing it as a good starting point for Mike, Albert can teach the fundamentals by leveraging transferable knowledge from Angular. After a few months of training Mike, as Albert realizes the limits of his own React and Gatsby knowledge, Albert can pull on Darrelljamin's materials. Both Albert and Mike can improve their skills and knowledge, Albert's half a decade of experience gives him the leg-up that allows him to learn the material fast, bringing Mike along.
What CODES Provides
- Facilitation: by marketing and advertising the training program, CODES helps match the trainees to the pool of trainers.
- Mentoring resources: CODES provides the basic structure and materials for any mentor to work with a trainee. Many trainers will be first-time trainers so the organization will work with them to understand how to structure mentoring sessions to not take more of their time than necessary, to not engage in sprawling theoretical lessons, to not leave the trainee without tasks to work on after the session.
- Training resources: CODES provides the basic projects and materials for intermediate exercises.
Capacity
CODES has capacity to start with 30 trainees. Some trainees will also be trainers. There is opportunity for trainers to take on more than one trainee, three maximum.
Cancellation and Commitment
Trainers are under no obligation to continue with trainees they do not like. Any duo can be broken up for no reason at any time.
Trainees are expected only to show up on time to their mentoring sessions, whether in-person or through zoom.
Measurement
CODES will only measure the number of sessions that occur. Each mentor will submit a "YES" when they engage in a mentoring session with a trainee.
The baseline we are looking to achieve is 1 session on average per pair per week.