Like many I have spoken to in recent months. I recently took the leap, and ventured into my new career in web-development. While I may have taken the intensive 12 week code school route, with all of the resources available to discover, play and learn about code. It seems easier than ever to quickly build up the skill set that will allow anybody to break into an industry clamoring to hire and develop applications for the web.
But does completing the Rails for Zombies, watching two dozen Ruby Videos, and having an active subscription to Code School really check all of the requirements to become a Junior developer? Not quite, but it might be a better start than you would expect. Here are the three most important things I thought I knew going into my position as a Junior at Planet Argon.
How to work with others
Communicating with other people is the most challenging aspect of writing good code. Like it or not, the stereotype of the lone wolf programmer is a false. If you don't get along with your co-workers, are unable to communicate concepts to the client, and gain nothing from a code review because you know better. A key component is missing that makes you a valuable team member, and employee.
What it is like to build an app from the ground up
Building a 'micro-blogging' app while following the step by step processes is a great way to learn the introductory concepts of TDD and can be exciting to see take shape. But it is no replacement for needing to deal with the issues, bugs, and obstacles that come from trying to build something of your own conception. There are knots and rabbit holes to be found that are impossible to replicate any other way. That being said, trying to get specs to pass in my first pass through Hartl's Rails Tutorial came close...
Be sure you enjoy code
First and foremost. What we bring to the table as Juniors, is excitement & enthusiasm, perhaps even blissful ignorance. But one thing is for sure, if you aren't absolutely sure you enjoy and have fun spending 8-10 hours trying to crack a bug. You owe it to yourself to find out. Staying motivated long enough learning to code from the couch and on your own time is probably a pretty good sign, but becoming competent takes time, to say the least.
What about other Junior developers?? How did you know you were ready to enter the field??