“Looks like you can kinda swim, jump in the deep end”
Alright, look at you! You followed through with the hell that was Part 1 and check you out, you are really programming now, kinda, sorta. You’ve got a couple projects under your belt and you feel you are kind of getting the hang of this now. You are kinda swimming now, okay time for the deep end. Get a job. Whoa, don’t panic I know what you are thinking, at this point you feel you still don’t know your primitive types from your reference types and now I’m telling you to go and be a professional. Trust me this is a fear I know all too real. Luckily I was able to meet someone who had done it before and he told me that learning on the job when the pressure is on was the best kind. It creates that sense of urgency and kicks you into survival mode greatly compounding your learning rate. At least that was the case for him and myself, so I feel as though I am legally obligated to let you know experience may vary. But from teaching this to others, one of my students was a high school student who managed to get a developer job a month or so after graduation and learning for three or so months, I am fairly confident in the process.
So write up a resume and start sending it out and letting everyone know you are officially on the market. Now this doesn’t mean that you are done learning of course, in fact you should probably double your study and practice regimen after you begin advertising your services. You must be ready and primed for opportunity’s eventual beckoning call.
Build your brand
In this day and age, personal branding may be one of the most financially rewarding things someone can do. Once I discovered its potential I have been quite shocked as to why more people don’t take advantage of the vast and inexpensive resources available for doing it. For you, potential developer, this means get a blog, link it up with your github, and start showing everyone what you’ve learned. Document projects you undertake and explain your learning process. If a new library or new api comes out for your target framework, learn it and teach others how to use it through your blog. This allows the world to see how diligent, studious, and above all passionate you are about your work. There is a talent war going on; all the big companies are looking for the best highest performing people they can find. As it turns out, more often than not, valuable indicators of high performance in the field are actually personality traits rather than prestigious degrees or impressive grades. Build your brand around these traits and opportunity will swarm.
Refine, Refine, Refine.
This is the stage where perhaps you have landed that first job, or like me perhaps you’ve created your own opportunity. Now don’t get to cocky I wouldn’t call yourself a developer just yet. Now as I stated earlier, you have landed yourself in an environment where the real learning can happen. You’ll be under pressure to deliver so refine your schedule and center it around studying areas that you feel are still fuzzy to you. Now you are truly in the deep end and you need to swim like hell. Get up early everyday, be health minded and avoid anything that may break your focus. You are a self-taught blooming developer, and you have a lot of proving to do so be sure to not let anyone outwork you. When you release your first professional piece of software, now maybe you can start to refer to yourself as a developer.
Now you may be feeling at this point that perhaps I am a bit too intense, but I have my reasons. You see this refinement period never truly ends when you are a developer. There will be always something new to learn, some new way of doing things to adopt to keep your edge. So its important you develop the habit of continuously learning. I believe perhaps this is one of the reasons Bill Gates, Mark Zuckerburg and the like recommend that everyone should learn to code, it really does teach you something fundamental about life – always be learning.
Parting advice, Resources
So, parting advice. If you make it through this regiment you should be able to become professional developer in three months if you were diligent. As we become more and more reliant on computers for everyday tasks, it is natural that the demand for people who speak computer language to increase. Well, for now perhaps; in my upcoming blog I will discuss how Machine Learning may change all that.
Now I would like to provide some resources I found helpful in my self-taught journey to developer professionalism. Now I’ve mentioned Lynda earlier, I believe it is absolutely a beginners best friend when it comes to being taught the foundations. I recommend going through every single on of their Foundations of Programming courses. The instructors in these lessons explain confusing topics with amazing clarity and work through some helpful examples. Now if you are a student check with your school to see if you already have a subscription to Lynda as a student. This is how I was able to be exposed to it and I don’t think it would be a stretch to say, learning of it greatly altered the course of my life. If you do need to purchase a membership, believe me its totally worth it. Another awesome resource that I used is Coursera. This website basically allows you to get an Ivy League education without ever having to step into a classroom, also by completing the courses you are awarded a certificate that is actually a resume booster. Udacity is a resource I unfortunately came to learn about a bit too late outside of the time I became a professional, but regardless I have found it a really amazing tool for beginners to use. They have co-signs from industry leaders such as google and as such are able to provide certain programming courses from the source. So if learning android programming is your goal you would be a fool to miss out on the Udacity Android courses taught by google employees.
So there you have it, my recipe for the hard-but-quick way to become a developer. I am always assisting people interested in learning programming on how to learn more efficiently so if you have your own tips for learning programming I would love to hear it. Also feel free to contact me if you would like to hear more about how I and some others I’ve helped were able to learn!