I haven't programmed in a *long* time...
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.
3 comments
[ 2.9 ms ] story [ 42.2 ms ] threadThere 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.