DEV Community

Ben Halpern
Ben Halpern

Posted on

What are your tips for getting your first programming job?

Oldest comments (32)

Collapse
 
k2t0f12d profile image
Bryan Baldwin

Read code, write code.
Contribute to high profile, free software projects.
Fix bugs.
Find a problem and design a program that fixes it.

Collapse
 
mikengarrett profile image
Mike 🤘

Focus on learning what it takes to contribute to a team or community of people from different backgrounds. Being a good developer means being able to translate ideas into functionality and being to communicate the challenges with that process to someone with no technical knowledge.

Collapse
 
oneearedmusic profile image
Erika Wiedemann

Follow up on your applications! I know a lot of people are hesitant because they don't want to be a bother, want to give due process, etc... but communication is key.

I don't suggest repeatedly sending an email 2-3 days later, but if you haven't heard anything back after a week and you're genuinely interested, let them know you're still looking forward to their response in a quick 2-3 sentence message.

One place I applied for completely lost my information. I followed up, sent a new copy of my CV, and received an interview.

Collapse
 
ben profile image
Ben Halpern

Yeah, I totally agree. The candidate who follows up is going to get more attention and there is no downside even if they end up going with someone else.

Collapse
 
graffic profile image
Javier Gonel

Human errors happen and your tip is good to double check on the recruiting team.

But beware of places where they "loose candidates". Why are they loosing them? Is that an example of how the company will deal with you as an employee? Is that how they value fellow engineers?

Collapse
 
kwelch profile image
Kyle Welch

You have to be willing to adapt. I remember my first position was a JavaScript position at a point where I was not even sure I knew JavaScript. I was able to land the job by having the willingness to learn and the determination to become better. The position quickly changed to fit my skills and accommodate my strengths will still allowing my to grow. Many years later these are things I still look with new opportunities; the change to grow as a developer and provide value by leveraging my strengths.

Collapse
 
antonfrattaroli profile image
Anton Frattaroli

Interview: You're in it for the long run. You're super excited to learn and code how they want you to do it. You're a self-starter. You want to be involved in the culture and be friendly with everyone. Make sure you have answers to questions like "Describe a conflict and how you resolved it", and "What would you do if you couldn't meet a deadline?"

Once you have the job, you'll likely be completely lost for a while until you have a grasp of their codebase. Model your new code on existing code. Learn to progress despite shallow understanding. Work on something else if you're stuck - don't stagnate.

Collapse
 
henrebotha profile image
Henré Botha

Just have something to show! I don't have a relevant degree so I have had to convince potential employers in other ways that I have the skill set, and not having substantial code of my own to show them has been a real difficulty (in places this cost me opportunities).

Better yet, have experience. Internships teach you a lot.

Collapse
 
mathur_anurag profile image
Anurag Mathur 
  1. Relocate to the town/city/area of maximum opportunity.
  2. Do not restrict yourself to a particular domain, try to be a generalist initially. Specialise later, with sufficient experience.
  3. Always write a forwarding letter with your resume, which explains your intentions clearly.
  4. Always follow-up after applying. Weekly follow-up is ideal.
  5. During the period when you are searching for a job, keep practicing your programming, problem solving and communication skills. Most interviews are won with a combination of these three.
  6. Aim at the complete spectrum of opportunities. Do not restrict yourself to a set of "hot/in-demand" companies. Landing a job in first go in such companies for inexperienced candidates is tough.
Collapse
 
jrecas profile image
JReca

There's no "too big" or "will not care" place. There are far more companies willing to accept a willing inexperienced programmer than one thinks.

Collapse
 
ben profile image
Ben Halpern

Yep, even if the job description doesn't call for junior, if you come off as committed, hard working and easy to get along with, you'll be strongly considered.

Collapse
 
polyov_dev profile image
Evan Derby

Make projects! As long as you can show that you've got skill, and you can show that it relates to what the company is looking for, then you might just be of value. The projects don't have to have legitimate value or purpose, they just have to help you develop your skills.

For my first programming job, I hadn't gone to college or gotten any certificates yet: I just had a whole bunch of projects that showed my (future) employer that I knew what I was doing. When they brought me in for an interview, they asked me to explain one of my projects. The same thing kept happening for the other jobs that I got, despite my having some work experience on my resume.

Collapse
 
ben profile image
Ben Halpern

Absolutely. Projects have the bonus of being the best way to learn.

Collapse
 
craigcottingham profile image
Craig S. Cottingham

Meet ups and user groups. I've gotten more positions in the past 25 years through people I knew than applications I sent in.

Learn aggressively. Present something at a meetup; in my experience they're always looking for presentations, even if it's just a 5-minute lightning talk. Show that you're eager and able to learn.

Collapse
 
mattbontrager profile image
Matt Bontrager

Breadth and depth.

Breadth: Have a broad base of knowledge across the spectrum of computer science. Understand that your primary function as a programmer within the context of a larger organization is to solve problems; sometimes very difficult problems, the solution of which may come from any number of different technologies.

Depth: Increase your value to the organization by being an expert in one particular discipline. After previously establishing that you have many different tools in your toolbox (breadth), show your prospective employer that, when it comes to your particular specialty, there is none better.

Admittedly, to develop a genuine expertise, true depth, takes time. Since this is your first programming job, you may not have that time. The way you overcome that challenge: you have to have a genuine passion for your technology of choice. Develop projects on your own to demonstrate your passion.

Collapse
 
aaroneiche profile image
Aaron Eiche

My first programming job was at a small company. The thing that really pushed my boss to hire me was that I took the concepts that we'd spoken about and implemented them in a simple example application. It was probably done the wrong way, but he told me later that that had really impressed him.

Having work that you can show these days is a must. Having work that is relevant to the position you're interested in is a leg-up.

Collapse
 
peazzoni1 profile image
Aaron Peazzoni
  1. Know the fundamentals of the stack you want to work with. JS, HTML, CSS etc. Also know some SQL. But don't worry about blowing them away with your knowledge.

  2. Have some projects on GitHub to reference. But keep in mind there's an 80% chance the interviewer won't even look at them. They're really just for you...but in a good way.

Try to make one project a volunteer job for a small business. It can honestly be anything as long as you write some code for it.

  1. The hardest part - find a recruiter or dev that's willing to go to bat for you for new jr dev jobs. The ideal situation is a team that wants someone who's motivated and willing to learn on the job. And that they can get at bargain. Those jobs are out there but often not advertised. But if you connect with the right recruiter or developer, they'll get you in the door to interview.

  2. For the interview, you really only have to answer 3 questions for them: 1) can you do the work? 2) will you do the work? 3) are you a good fit with the team culture?

I also wouldn't necessarily assume you'll get overly complex technical questions. Instead you might get simple questions that may be hard to answer. E.g. "What happens when type in a URL address and press return?", or "define what an object is in JS."

When you feel like you're ready for the first job, focus most of your energy on #3. And repeat this phrase once a day: "it's just a matter of time."
Because it is.

Collapse
 
graffic profile image
Javier Gonel

1) Focus
You can apply to every job where you can submit your resume. Or you can target them. Both require time.

You might think that sending (and keeping track of) 100 CVs is fast, but it will take the same time or more than filtering first and then targeting your resume and cover letter. Also I believe you will get better response rates and that will motivate you more.

2) Keep track
Yes, open your applied.txt and keep track of your moves.

2) Understand that you still don't know what you enjoy doing.
I've seen it many times with first timers. They apply, they get the job, and then they realise that they don't like that kind of job. Understand that a company will set a probation period so you both can check after some time if everything is ok.

3) Relax and smile
First time in a big building. First time talking to a person that could be your colleague. Remember to be yourself, even if it is a young yourself, still student yourself. They know it is your first job, don't try to hide it.

4) It is not all about code
You see that dev there? You might spend more time speaking with that person than to your friends. Did you enjoyed the interview with your interviewers? They will ask the same question to themselves.

5) Keep doing interviews.
Remember point 1? Add some extra companies just to warm up interviews.

Collapse
 
gurchiekt profile image
Thomas Gurchiek

Number 5) can be a daunting one. Though it is needed sometimes to get your mind in the right place to feel comfortable answering questions on the technical portions.

I would also say apply for positions that are slightly above your experience level. For instance, if you have 1-2 years of professional experience apply for the positions that are wanting 3-4. Sometimes employers will pick your brain a bit to see what you know. You would be surprised that some will make exceptions. Never hurts to let them know you are interested in advancing in your career.

Collapse
 
hamatti profile image
Juha-Matti Santala

People have given great advice on having hobby projects and following up on the applications so I won't go into them. My advice is to network and be active: attend hackathons and meetups, show that you are willing to learn and take on new challenges.

It can be intimidating first (I bailed out of my first hackathon after 3 hours of not doing anything) but you'll get there. Many teams are happy to take a junior into the team to teach, just be up front about it. Meetups are great ways to learn new things, meet new people and get your name/face into the minds of people.