When searching Google for the value of a mentor, it's easy to find many opinions on the matter. Most of them talk about how indispensable a mentor is to the success of your career. It's been researched and discussed many times over and the conclusion is almost always the same: mentors are hugely valuable! They can point you in the right direction, help you avoid costly errors, push you when times get tough, and support you in the things you do.
... But what about when you don't have a mentor? Or what about when someone you consider a mentor has roughly the same amount of experience as you? What happens when you're the most senior person in the organization? One obvious answer to that is to seek external mentors and spend a bit more time networking to find them, but what if you want on-the-job mentorship? What happens then?
Over the course of my career, I've met people with a variety of opinions on mentors. Some don't see the value in them and others want on-the-job mentorship so much they'll seek new employment to find it. Its this latter group that's sparking me to write some of my thoughts on this subject.
There I was: a new developer just starting to learn JavaScript and C# and get my bearings after about a month on the job. And I was asked to be solely responsible for one entire product.
In that situation, I had a few possible ways I could react. I could have quit. I was in way over my head. Me? Lead a product? Seems like a tall order for a fresh developer. I could have tried to request external things that may have helped me. After all, this is my first development gig. I need training and support if I'm to succeed.
Ultimately I chose a different path. Now, I don't mean to brag, but I think there are things we can learn from this story. Knowing I was the man in-charge of a product lit a fire under me. Instead of throwing the towel in and giving up or waiting for some external source to help me, I chose to work hard. I didn't know JavaScript, so I decided to learn as much as I could about it and try to become an expert in it. I went from barely knowing its syntax to writing jQuery plugins for internal use. I didn't know ASP.NET or C# but decided to learn them as well as I could for the jobs I needed to perform. I went from barely being able to read ASP.NET to maintaining and eventually porting an entire ASP.NET project to C# and jQuery. I went from not knowing how to say C# to writing web apps and desktop apps in it.
This isn't to say the code was good in anyway... I'm sure there were some pieces that I wrote that were at least decent, but I'm also sure a lot of it was garbage. Not long ago, I had the opportunity to meet someone who joined that team shortly after I left. He saw my name and said he knew that name from commit histories. As a side note, that's not exactly the most desirable thing to hear when you first meet someone... As we talked, we discussed the product I was over when I was there. He was very polite about it, but basically said the code was mostly garbage.
So, if you think you need a mentor... you wouldn't be wrong to think you do. As mentioned at the start of this article, mentors are extremely valuable to you in your career--but don't rely on one. The ultimate factor for success in your career is your inner drive to improve and succeed. A mentor can help guide you, however, if you have that drive, you'll be able to overcome any challenge you encounter. Without it, you may be prone to focus too much on external sources (such as mentors) or give up too early.
... But what about when you don't have a mentor? Or what about when someone you consider a mentor has roughly the same amount of experience as you? What happens when you're the most senior person in the organization? One obvious answer to that is to seek external mentors and spend a bit more time networking to find them, but what if you want on-the-job mentorship? What happens then?
Over the course of my career, I've met people with a variety of opinions on mentors. Some don't see the value in them and others want on-the-job mentorship so much they'll seek new employment to find it. Its this latter group that's sparking me to write some of my thoughts on this subject.
Story Time!
In 2013, I started my first software job as a "Web Developer" for a local company. I was still finishing a degree in Computer Science, so I knew a bit of coding, but I didn't know .NET or JavaScript or jQuery or many of the other technologies we used. At the time, I was the 4th person to join the Web Team. Within a few weeks, two team members had put in their notice of resignation. My friend who referred me there and had only been there for about 3 more months than me was promoted to be the leader of the team. The Web Team "owned" a few products, so, each member of the team was given at least one product to take the lead on.There I was: a new developer just starting to learn JavaScript and C# and get my bearings after about a month on the job. And I was asked to be solely responsible for one entire product.
In that situation, I had a few possible ways I could react. I could have quit. I was in way over my head. Me? Lead a product? Seems like a tall order for a fresh developer. I could have tried to request external things that may have helped me. After all, this is my first development gig. I need training and support if I'm to succeed.
Ultimately I chose a different path. Now, I don't mean to brag, but I think there are things we can learn from this story. Knowing I was the man in-charge of a product lit a fire under me. Instead of throwing the towel in and giving up or waiting for some external source to help me, I chose to work hard. I didn't know JavaScript, so I decided to learn as much as I could about it and try to become an expert in it. I went from barely knowing its syntax to writing jQuery plugins for internal use. I didn't know ASP.NET or C# but decided to learn them as well as I could for the jobs I needed to perform. I went from barely being able to read ASP.NET to maintaining and eventually porting an entire ASP.NET project to C# and jQuery. I went from not knowing how to say C# to writing web apps and desktop apps in it.
This isn't to say the code was good in anyway... I'm sure there were some pieces that I wrote that were at least decent, but I'm also sure a lot of it was garbage. Not long ago, I had the opportunity to meet someone who joined that team shortly after I left. He saw my name and said he knew that name from commit histories. As a side note, that's not exactly the most desirable thing to hear when you first meet someone... As we talked, we discussed the product I was over when I was there. He was very polite about it, but basically said the code was mostly garbage.
What's the Point?
By sharing this story, I'm hoping to illustrate something. A drive to do your best can be more valuable to you than nearly any other factor in your career. I sure would have loved to have a mentor or a teacher when I was hacking my way through old web apps and starting out in development. I know I made a lot of mistakes, but I tried to learn from each of those mistakes. I tried to constantly improve myself, the code I wrote, and the value I brought to my job.So, if you think you need a mentor... you wouldn't be wrong to think you do. As mentioned at the start of this article, mentors are extremely valuable to you in your career--but don't rely on one. The ultimate factor for success in your career is your inner drive to improve and succeed. A mentor can help guide you, however, if you have that drive, you'll be able to overcome any challenge you encounter. Without it, you may be prone to focus too much on external sources (such as mentors) or give up too early.
Comments
Post a Comment