Hacker News new | comments | show | ask | jobs | submit login
I haven't programmed in a *long* time...
4 points by RollAHardSix on Nov 14, 2012 | hide | past | web | favorite | 3 comments
Former Web Dev/Design student hired to work in the Web Department...moved into the Art Department to use a niche software doing Print Design. Good job, but I worry I'm in a bad career move. Not ready to leave yet though.

What I'm asking is: if you were to hire someone tomorrow for a Junior Developer position and be there mentor, what would you consider it important they learn to help you and the business, and how would you help them learn it? I realize it varies across industries and that's what I want; different industry responses. I haven't found a niche to start exploring, and that's what I'm looking for...that and some knowledge resources to do so. Knowledge resources, projects, anything. I just miss programming.

I am in precisely that position right now- being a mentor to a junior developer. We need him to do client-side web development, specifically for presenting multimedia for online language learning. Incidentally, it's also a student job- my guy has taken one formal programming course, and this is his first real job experience.

There are many levels of things that I need him to learn. Some of them are "can you actually write code?" issues. If you've previously done Web Dev, I assume that's not a problem for you. But, the next step above that is "can you understand more than one paradigm?" E.g., can you only understand imperative, classical OO code, or can you also write declarative and functional-style code, and can you recognize when to use one or the other? I don't really have good resources for that kind of thing, though I wish I did. That's where a lot of the mentoring comes in.

Those things are important partly because of new-ish additions to JavaScript, like the functional-style array methods (map, forEach, some, etc.). So now I want to know, how familiar are you with the JavaScript "standard library" in different browsers? And how familiar are you with JavaScript design, like the Module Pattern. For that kind of stuff, MDN (Mozilla Developer Network) is my favorite reference, along with an ability to Google.

Then I want to know if you can use the DOM. Again, MDN, along with sites like html5rocks and caniuse.com, are great. But I also want to know if read and understand specs; partially for reference when other documentation doesn't exist, partly so you can implement them (either because we need a polyfill for a standard that the browser is missing or because the boss has just given you a spec for a new product). I don't know of good resources for that, except for just reading a lot of specs.

My methods for helping learn so far are basically just assigning lots of little tasks that shouldn't be too difficult or take too long, and then when it does turn out to be too difficult and take too long, using pair programming to walk him through solving the problem.

Learn one language, any language, and build something with it. Self motivated autodidacts with even embryonic skill sets make excellent hires, particularly if they are open to mentoring. A mentor will point you in the direction of structures and resources to make your life of independent problem solving easier. Beware the guru. A good mentoring-training relationship renders the mentor obsolete within 12-18 months, though mutual affection may seed an enduring professional relationship.

I can't speak for others but I like finding people who are self efficient and having to spend time mentoring them beyond the little nudge here and there is not something I am looking for personally. I have hired people who require a lot of training and mentoring and people who don't and honestly, its a larger headache most of the time for those who need hand holding. So just from experience, I'm less open to hiring people who can't figure out how to solve problems themselves.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact