How I Got a Developer Job After My First Year in College
By: Yamo Gebrewold
Tags: Studying, Job Hunting, Programming, Software Development

Any aspiring developer dreams about the day when s/he will get hired at a company as a programmer. For most if not all industries, there is a problem that any junior/entry-level worker will inevitably face — how do you get a job without experience, and how do you get experience without a job?

The job opening posts can be quite daunting to someone who lacks experience. They require you to have worked several years with several different technologies. In fact, those requirements have become something that developers joke about since they are sometimes surreal and written by people who don’t have any technical competency. Developers tend to joke about job posts that require five years of experience in a technology that has only existed for four years.

As an aspiring worker, you might think of these obstacles and create some type of mental block in your head that you are not job-ready, when in fact you might just be ready as anyone else.

In this article, I will try to break down four key things that I kept in mind and did which led to me getting employed after my first year in college while still pursuing my Computer Engineering degree.

1. Expanding my programming skills

If you want to break into any knowledge-based industry, you need to broaden your knowledge and apply it enough times that you become proficient with it. I realized that I wasn’t gaining very much from college, so I studied a lot outside of school. Even before I started college, I focused heavily on studying programming daily. I was so committed to it that I could grind on coding platforms for many hours a day.

Of course, that is not possible for many people, especially if you have other duties and responsibilities to take care of in life. In my case, I was more or less free, and I took advantage of that freedom to expand my knowledge in programming. But I think that anyone can find some spare time to invest in growing — it’s just a matter of priorities in life.

2. Showcasing my skills publicly

Even if you’re the best programmer out there, no one will know if you don’t showcase your skills in some fashion. Future employers will also like to see concrete work that proves your competency.

One great thing to do is to build projects. By that I mean, going through the phases of developing a system from the planning phase to deployment. It will act as proof that you are acquainted with the entire software development process.

When I watched a tutorial, I would pause it after a couple of sections and try to implement things on my own. I repeatedly pushed myself to build things independently and forcing myself into hard situations that require deep thinking and researching.

You might ask “well, what should I build?” If you don’t have any ideas, then one suggestion would be to look at popular applications that exist and try to clone them or create a minified version of them. Another suggestion is to google for “project ideas" and you will find a bunch of lists which can inspire you.

Another thing that you would probably want to do is to build an online portfolio of some sort. Ideally, at this point, you already have some built projects that you can showcase. Remember to not only link to your deployed applications but also share the source code by linking to your GitHub repositories.

I built a fairly simple online portfolio site which is not fancy in any sense but is useful since it is public and I can point to that site whenever asked.

While you’re in the process of building software, you will bump into issues that force you to search for solutions. Most likely you will find yourself on Stack Overflow a lot. This is not only a good place to get help, but helping others too. It can also benefit you in the long run when people see that you are active in the programming community and contribute to it.

I was (and still am) particularly active in the YouTube community and writing comments on programming-related videos. It’s actually a pretty good place to share thoughts with other developers and ask questions.

3. Breaking that mental block about not being job-ready

I remember myself repeatedly asking the question “when am I job-ready". I consider myself mostly being self-taught even though I have a college degree, and self-taught developers who try to get into the industry always have this question in mind.

There was a range of technologies that people kept talking about, and I convinced myself that I had to master each one of them before I could get a job. I eventually came to the realization that my definition of being job-ready was wrong. It takes years for someone to truly master a technology. Developers who already work professionally are learning new things about their technology stacks every day. Being job-ready is about knowing enough about the particular technologies that you can start producing valuable software.

For example, my current job required knowledge about C# and ASP.NET, and when I got the assignment to work in a .NET project, I hadn’t even written one line of C# code since my proficiency was in JavaScript and some PHP. But I quickly learned the concepts of C# and could start writing C# code in a matter of weeks. In a sense, both my work and school complemented each other, since I was learning technologies at work which I later had courses in at college, and vice versa — I could apply knowledge from school at my workplace. I got good grades in my C# course in college where some of my classmates barely passed it, and that had a lot to do with the fact that I was already working with C#.

I asked a programmer on YouTube the question “how to know when one is job-ready" and he simply responded by saying that once you’re somewhat comfortable with building things with your technology of choice, you are probably ready. He also said that the sooner I get employed and start working professionally, the sooner I will grow my knowledge base and experience in software development. The things you learn at a workplace aren’t close to what you learn in school for example. The day-to-day challenges at work make you mature and grow a lot quicker than someone who just does the school assignments.

4. Sending out job applications and preparing for interviews

Once I realized that the only way to grow professionally is to actually get a job, I started preparing my resume. Even though I didn’t have any work experience to add to the resume, I could still show what technologies I know and my education for example. I focused on emphasizing my deep passion for software development and programming. I also went on FreeCodeCamp.org and solved some algorithmic challenges with JavaScript.

I sent out my resume to a bunch of companies. As you would expect, not many would even reply. But I had to accept the fact that it’s just a part of the process. Here is also what can set you apart from other juniors who might give up when they see a lack of response. I firmly believed in my value as a programmer and that sooner or later someone will eventually recognize that value.

I did get some phone calls from recruiters, but they were usually reluctant considering my lack of experience and didn’t follow up.

I resisted the thoughts about me being too inexperienced and instead kept grinding and sending out job applications regularly while consistently improving my programming skills.

Then, during one week I was suddenly invited to two interviews at two different companies. I cleared the entire interview process with both companies and got two job offers. I declined one of them because the company wasn’t that “techy", and I preferred an environment with skilled developers around me to learn from. So I finally signed up for the company that I currently work at.

The number of insights and benefits I’ve had during my time as a professional developer cannot be compared with anything that I have learned in school. I’m thankful that I stepped out of my comfort zone at an early stage and took steps in my career which helped me gain valuable experience. By doing so, I was way ahead of other peers who were still trying to get a job after college.

So, if you’re a new programmer who is eagerly wanting to know when you are job-ready, chances are that you might already be at this point right now. Don’t hesitate to apply for jobs — the worst scenario is that people will reject you and let you know what areas you might be lacking in, and that will be a huge experience in itself.