I stumbled on a really awesome article: What it really means to be a “junior” developer. Jonathan Barronville had some great insights on what it truly means to be a junior developer. For us, freshly out of college with our diplomas, after four years of hard work, we feel like we know everything. That is so wrong because we don’t nearly know enough ! Of course, we saw a lot of concepts and we had tons of practice, but some never had some real world experience.
Knowing a lot of concepts can help you at the beginning, but what really helps is to have real world experience. By having real world experience I mean to have projects when you have set backs at every turn or for some reasons, the project seems to fail and your team have a lot of work to in a little amount of time to deliver a fully functional project to your client(s). See, after writing that article, Scott Hanselman received Jonathan for an online interview. In this interview, he talked about something that we don’t truly value in our domain: failure. And that’s quite right. Who would go in an interview saying that I tried to take on 4 projects by myself right after college to get some experience, but I failed to deliver what was ask on me on 2 of those projects and one that succeed had some serious memory leaks and I had to re-factor my code. Thing is, failure shapes us. By failing, we learn quite a lot of what should be done and what should not be.
As for myself, I’m still a student who has two more years to do before I can get my degree. Being a student and soon, a junior developer, means something else for me. It’s a world that moves really quickly, and I think (not sure) that it moves way quicker than it did in the past. So, I’m not trying to master everything because that’s impossible. There are things that interest me such as web and mobile applications. Being a student, I have all the time I need to get to know stuff.
Even though I might know what senior developers or architects are talking about, there’s still a world of difference between “knowing” a technology and really it, inside and out. My definition of a junior developer would be a new programmer who’s still trying out new technologies. Some can’t wait to be seniors or architects. It might be fun to get those titles, but the real deal, it’s the journey that we took to get at this level and that’s what I’m really into !