When should I start looking for my first developer job?
2020-01-24 Nick Larsen
I feel like I am still very far from being ready to apply to any sort of programming/cs job, so this may become clearer as I learn more. However, do you have any insight into how someone can tell when they are ready to make that jump, particularly from a non-programming job?
I'm also looking back into computational linguistics; I originally had steered away from this a bit simply because there were less jobs (though likely a smaller pool of candidate I suppose), and seemed to be less flexibility in location (the possibility of working in certain areas or remotely is fairly important to me). This is why seeing more general "Junior Developer" or "Software Engineer" job postings interested me, because there are a lot of those. I'm realizing that maybe those aren't as general as I might think though? Ah, I guess my question is- do you have insight into the positive/negatives of being a more general developer, vs getting very good at a particular area? I'm going off of a lot of general impressions.
Thank you for all the insight!
When it comes to job hunting, I say just go try to get one. Two reasons, first it's not your responsibility to decide if you're able to do the work, it's the companies job. If they hire you, you're probably ready or else their interviewing regime is not particularly effective. And secondly, the easiest way to get a job in this industry is to have experience, so why wait, get that clock started as soon as possible. At the very least you'll get that critical interview experience and after 5 or 6 of those you'll be much more comfortable in them when you are ready to actually start working. The same thing applies when looking at job titles, it's not your responsibility to decide if you are junior or senior. Every company defines those differently and I've seen self taught people who can run circles around me when it comes to web development, managing open source communities and data science who otherwise have zero professional experience. When you get into the interview, that's where you'll shine, and when you're ready I'll show you how to set up your applications to get you the most responses.
Pretty much everyone is a general developer after the first couple of years. It's impossible to succeed without generalizing because your skillset (your developer toolbox I like to say) is just too small if you only focus on one area. Even as a technical person you'll have to learn some CS fundamentals, the details of whatever language you get hired to write in, the tools for debugging in that language, the deployment process, how to use git, how the team is organized, enough about information security to not expose your company to risk, etc. If you just mean being a mobile dev vs a web dev or an ML engineer, yea you'll need to focus on one of those primarily, but exposure to the others always makes you a stronger developer. You need both technical depth and a large breadth of knowledge.