Just over a year ago, I had learned that an old coworker's wife had started at the same code school that I did here in Portland. I casually offered to help and she gladly accepted. One day in my office, I had mentioned this interaction to my boss and he kindly offered to help me set up a formal process to the mentorship. It was all surreal and unexpected because the casual mentorship offer I thought would be act as a moral support role turned into a strong friendship with lessons for both of us. Prior to this experience, I had known nothing about process or purpose of mentorship, but dove in with high hopes. I was only about a year into my journey as a developer, but I had already identified how helping others inspired and fueled a lot of my own desire to learn.


I can't emphasize this enough. The value of proactive patience is rewarding and revealing to one's self when practiced in the context of mentorship and teaching (and probably other areas of life). At first it was very difficult not to just offer the answer when she didn't see it right away. I had to first identify my own impatience and remind myself that I wasn't there to solve the coding challenges before us. I was there to help her understand the processes I've learned to solve these problems and help her to develop her own. We all solve problems in somewhat unique ways and that's what makes collaboration so fruitful and often unexpectedly enjoyable. This proactive patience then taught me how to ask questions. I would ask her the questions I often ask myself when having to solve a coding problem. Questions like, "Where does this value come from?" or "What is the value at this point in the code and how are why has it changed" or "Why is the function returning such type of a value?" After a few sessions I would notice her asking these questions and developing a process of problem solving for herself.

Mentorship is a two way street

As a mentor I often found each time we met I would learn just as much as my mentee. She would ask questions I didn't think of or I would find myself explaining something I didn't know thoroughly enough. We would go digging on the internet for the right answer and it eventually helped us find common ground. After practicing this, I found that we were identifying knowledge gaps in each other and using them to guide our learning sessions. That's eventually what they really became; learning sessions.


From what I've learned in my short time as a software engineer, one of the largest hinderances to a project or a team is lack of motivation. If we have lost purpose or that foundational seed of inspiration, every problem we try to solve our focus will intermittently drift off into dreams of another job, city, etc. As a mentor, I have found an irreplaceable inspiration to keep pushing forward learning new technologies, finding what inspires others in their own work, and realizing that giving has been the best investment I've made as a developer.