Do you hire juniors?
8 04 Apr 2016 02:26 by u/captbrogers
To;Dr: what's your experience with people brand new to programming at a job?
My current employer had two juniors when I joined the company (small start up, less than 20 people including everyone). Since I got hired, we've brought on another junior and a senior.
I have to admit that working with juniors has been an awesome experience. For one, it is always a huge delight to see the lightbulb click on when they are given direction and work out a problem for themselves. I've also found it a trmendous help for me personally because I have to teach them, on occassion, something that feels fundamental to me.
I will also admit, it's a huge ego boost when they compliment me and say they hope that they'll be as good as I am one day. I just keep telling them I'm not special, I just started programming before they did.
6 comments
6 u/Morbo 04 Apr 2016 03:24
My company does hire many junior programmers. They have always looked to hire the inexperienced and mold them to suit. I was the first senior hire they brought on board. I work with a wide range of programmers with varying levels of skills, but this has been my experience all throughout my career. Once I became a senior, I began a long journey of training and mentoring juniors and non-programmers alike to code and do it well. My experience with mentoring the junior programmers has generally been great. There are maybe just a handful out of dozens I've mentored that just didn't work out. I think they were not really programmers at heart and just wanted to do what they thought would be cool or career advancing but didn't want to put in the effort to learn. I've become quite adept at identifying the diamond in the rough programmers from those who will just get by. It's fun to mentor and it keeps me sharp as well since I have to stay ahead of them to maintain the guru status. I enjoy being a mentor mostly because I was lucky enough to have had some great mentors myself. Because of that I feel it is my duty to keep the tradition alive and to help juniors become seniors.
2 u/captbrogers [OP] 04 Apr 2016 03:30
What do you look for when identifying the diamonds in the rough?
I've usually found that those types are ones to think through problems and don't stop the first time it works, they make sure to account for user error, odd cases, etc.
1 u/Morbo 04 Apr 2016 03:54
Hmm, I don't think I can put it down to a guideline. It's sort of an intuitive feel I get from them during an interview or working with them the first time. Some people just have the programmer mentality and it exudes from them. Others just come off as wet fish. I guess if I had to make it into something concrete then I would say it's how comfortable they feel/act when you ask them to back up their reasoning or motivation for doing something. I'd also add in there the willingness to go learn about something on their own to solve a problem before just simply asking for help. The good diamonds in the rough often tell you all about what they learned and tried along the way to solving a problem and then ask for guidance once they get stuck. I like those types since they show initiative and the ability/willingness to learn. They also aren't easily intimidated and accept challenges even when they might be getting in over their heads. Of course there are some who just take every challenge and drown, but I usually know them ahead of time and are standing by with the life jacket and some words of wisdom when the time comes.
As for the trying to account for user errors and odd cases, I changed my style of teaching to make these things less of an issue. I try to get them to think more simply about a problem and make it so they can't possibly have a situation that causes a user to make an improper choice/action. I used to be a defense type programmer with lots of error handling until I was shown that most errors can be avoided by simply reducing the complexity of the code/feature so it can't error in the first place (except for things like hardware failures of course). It's another one of those things I can't simply put into words here, but I do spend a lot of time teaching these things to my more experienced students. It makes me proud when they show me how they avoided a pitfall just by changing how the users/interfaces/systems interact with it.
1 u/ValentinaSmith 04 Apr 2016 08:30
Can some name some good companies where juniors are hired ?
1 u/captbrogers [OP] 04 Apr 2016 16:06
Honestly I can't name specific companies because it depends on where you are and your skill set. I live in Utah, and there is a rather large tech company presence here. It seems that many of the smaller ones can't hire juniors because they are running "lean", but the larger ones tend to be able to take on juniors.
My advice to finding companies that hire juniors is find a local user group for your programming language of choice with an email list and send out an email asking if anyone knows which companies are junior friendly. Odds are you'll get a handful of responses, some may even tell you why their particular company is great for juniors.