Introduction

 

In this post, I’ll be sharing what Jive JavaScript Mentorship Program is, how it all started, and where the whole initiative is heading.

 

And before we start let's see how some of the mentees (i.e. the program participants) feel first:

 

"I joined the JavaScript mentorship program as I know that I have a lot to learn there and there are awesome people to learn from.

My mentor was Rob Putnam who has awesomely and brilliantly covered the subject of promises and all of my questions.

I will say that its not that I didn't know what promises are, but this session definitely made a lot of things clearer."

Nitzan Harel, Sr. Software Engineer

 

"I really enjoyed my first JavaScript Bootcamp.

At a few points during the session, the world felt like a speeding train, but I somehow muddled through and managed (I think) to get everything installed and working. Hooray! --

One thing I really like about this bootcamp approach is that our teacher has chosen to teach us directly from the product we make here at Jive.

There's no better way to learn, imo. "

Melanie Jennings, Sr. Documentation Engineer

 

"So last hackday, Inyang Umoh and I worked to get QUnit tests running in Jenkins.

I knew there were some old QUnit tests from other teams, but I didn't have the time to re-enable them all.

As part of the JavaScript Mentors initiative, Todd Runstein is learning how to write JavaScript unit tests.

We decided our first attack should be re-enabling just one of these older QUnit suites.

And we succeeded! Todd and I will be adding more tests to this test suite, and continuing to re-enable others."

Lynn Jepsen, Software Engineer

 

 

"I got my personal mind meld on JavaScript promises the other day. We added promises to the jive-sdk for purposeful places a few weeks back.

Because I have to tell people how to use the sdk, as well as explain out design decisions,

I wanted to make sure that I understood the props/cons of promises,

how you debug an application that uses them, and any tips and tricks that might be useful.

The mentoring session was great. Volkan did a fantastic job of giving me a quick primer on promises

and then assigned me some "homework" where I could learn a bit more.

This was all great stuff. Thanks JavaScript Mentors!"

Mark Weitzel, Director of Platform and Ecosystem

 

These are just a select few excited Jive engineers are about Jive JavaScript Mentorship Program. And they should be.

 

Everyone Loves to Learn

 

All you need to do is focus on the fact that what they want is more important than their fears.

Once you begin to shift your attitude and take action steps towards your goals the sky is the limit.

And your ability to express information is filtered by what you know and what you know is limited by your learning acquisitions.

 

No matter what you learn, learning is empowering.

 

That's why we've created the Jive JavaScript Mentorship Program.

 

A month ago we've started a JavaScript Mentorship Program in Jive.

The program is an effort to establish a common set of idioms, and best practices among Jive engineers.

Along with leveling up Jive engineers' JavaScript knowledge, the program also aims to create

a central knowledge repository for JavaScript architectural decisions, reusable patterns, code conventions, and best practices.

 

And that's only one side of the coin:


A second goal of the Jive JavaScript Mentorship Program is to engage with the community to

proactively create events, lunch & learns, and workshops.

We are currently doing this internally within the company,

and there's no reason we would not be extending this to a greater audience

once we master the challenges of creating a distributed mentorship program.

 

And we are already a few steps ahead in this challenge.

 

Since Jive has engineering offices widespread around the globe, we already know how to communicate and get stuff done in a distributed team environment.

 

Jive JavaScript Mentorship Program leverages this knowledge to create a distributed mentor-mentee relationship.

So that even if the mentor and mentee are geographically spread apart they still find a way to collaborate effectively.

 

Jive JavaScript Mentorship Program in a Nutshell

 

Jive JavaScript Mentorship Program is an initiative that is voluntarily started by Jive engineers who are JavaScript domain experts.

 

JavaScript Mentors community is a central reference point, where Jive engineers are sure that it would support them with reliable, battle-tested solutions where anyone can trust.

 

And that's not the only gist of it!

 

JavaScript Mentors, do not only decide on the best way to formulate common JavaScript problems, and find the best tools, frameworks and architectures to use, but also they engage with Jive engineers by...

 

  • Answering questions, leading the way, and helping the rest of the community;
  • Creating weekly one-hour bootcamp classes to level-up Jive engineers' JavaScript;
  • Engaging in one-on-one mentorship relationship by trying to create a tailor-made improvement path depending on the mentee's needs and wants.

 

Establishing this was not an easy task.

And the success of the program depended on creating a solid and well-defined mentor-to-mentee relationship, which we did pretty well so far.


So let's dive into the definition of this relationship further:

 

What Exactly is a Mentor-Mentee Relationship?

 

A mentoring relationship means periodic conversations with the mentor and mentee, about mentee's development; which punctuates professional growth of the mentee.

 

In a successful relationship, the mentee is supposed to improve herself, whereas the mentor's responsibility is to lead the mentee the way.

 

Ever watched Karate Kid? Mr. Miyagi appears to have done nothing, while Daniel appears to do all the hard polishing work --

however Mr. Miyagi is also exerting a monumental mental effort to shape the kid's future.

That's kind of how this is in Jive JavaScript Mentorship Program, too.

 

So most of the time it's the mentee who will be doing the hard work, while mentor is formulating a roadmap by looking at the pace, progress, knowledge, skills, and abilities of the mentee.

 

It Works the Best When Mentees are Proactive

 

By extension, it is up to the mentee...

 

  • To ask questions to the mentors;
  • Request resources;
  • Attend to workshops;
  • Do practices/homeworks assigned;
  • And report their progress.

 

And it's the mentor's task to thoroughly think about every single question, and provide great valuable feedback.

 

Not only mentees, but also mentors should be proactive, too.

 

In Jive JavaScript Mentorship Program, our mentors are far from being a group of gurus sitting in their ivory towers.

They, to the best of their abilities, foster a shared emotional connection towards a common goal.

 

It Was a Hard Job That Involved Everyone, and We "Did It"!

 

Yes, the Jive JavaScript Mentorship Program is alive, and we are about to celebrate our second month!

 

We believe that, although there still is a lot of dust to settle, the hard part is over:


We were able to create and engaged community of mentors and mentees.

 

We can confidently say that, this was the hard part, because creating a community is really hard:

it requires systematically converting a group, into an audience, and an audience into a community.

 

Before Getting our Hands Dirty, We Asked "a lot" of Questions

The program is something bigger than the sum of the individuals involved.

 

We, as a community of engineers, sought answers to the following questions (and many more), to set a baseline for our program structure:

 

  • What Are the Objectives of the JavaScript Mentorship Program?
  • What do we want to see as the outcome?
  • What are the ultimate goals of the program?
  • What Will the Benefits of JavaScript Mentors Program Be?
  • What will the benefits to the mentors be?
  • What will the benefits to the mentees be?
  • What will the benefits to Jive as a whole be?
  • How Will We Conduct the Mentoring?
  • What should be the Criteria to Select a Mentor?
  • Do their immediate manager need to approve them for mentorship? (Hint: No!)
  • Do we need a nomination/application process?
  • What Kind of Recognition/Rewards Can We Give to Mentees and Mentors?
  • What Kind of Supporting Documents and Activities Will We Need?
  • What do we need to help the new acolytes?
  • How about helping those willing to be mentors?
  • How will we measure progress?
  • How will we measure the effects of the program on mentors, and mentees?
  • How will we measure the effects of the program on Jive?

 

We gathered every idea in the last two months, and we are still structuring the overall program.


Here's how the program works, in its current state, in a nutshell:


JavaScript Mentorship Program Structure

 

At Jive we make an impact! And the impact we make far exceeds our boundaries.

This is no different in Jive JavaScript Mentorship Program.


JavaScript Mentors is an initiative to improve your effectiveness in topics like JavaScript, front-end development, debugging, frameworks, and accessibility.

 

If there's one goal of JavaScript Mentors, it is to encourage improve effectiveness.

 

Encourage is the keyword here:

 

To improve her effectiveness is up to the mentee;

what a mentor can do is limited to how willing a mentee to spare her mental resources to her improvement.

 

Here's some further details:

 

  • We currently have weekly mentorship cycles;
  • At the end of each cycle, everyone discusses about what topics to cover next;
  • Mentees work hard; Mentors support hard.
  • The only thing that's required to be a mentee is your willingness to do so.

 

Any Jive Engineer, who’s ready to work hard; receive feedback; and document your progress, is more than welcome to be a JavaScript Mentors mentee.

 

Mentees Have Full Responsibility for Their Progress

 

The onus is on the mentee to set the tone, pace, and needs for the interaction.

 

The mentor will only be setting goals for her, and it's solely up to the mentee to how to walk towards those goals.

 

  • Our mentees know that they are not in college, and your mentor is not their professor.
  • They, and only they, are responsible for your progress.
  • Their mentor is there to show you the way, and provide you with options.
  • And it's up to them to walk the walk.

 

As part of the program we currently do

 

  • One one one meetings;
  • Code-review sessions;
  • Learning bootcamps for JavaScript newbies;
  • And occasional lunch and learns.

 

I believe we'll be adding more to this list in the near future!

 

What's Up Next?

 

We (both mentors, and mentees) are learning a lot in this mentorship program.

And this blog post was a non-technical introduction to what we're doing behind the curtains.


By the end of each month, I'll be writing more technical articles from our mentees' achievements.

Like, for example:

 

  • How to write a basic Node.JS client that consumes Jive V3 API and does real time messaging;
  • Even Faster JavaScript Apps: How to profile an application for memory leaks;
  • JavaScript Patterns and Practices (what do we use within Jive; what are the best practices to common sets of problems);

 

And until next month, stay tuned, and have your days full of JavaScript!


Oh and please do share your suggestions and ideas in the comments.