DEV Community

Junior Developer Check List

Prosper Opara on June 21, 2020

Dear recruiters,

When hiring Junior talents what does your checklist look like?

Collapse
 
robdwaller profile image
Rob Waller

If you're hiring a 'Junior Developer' you're not looking for a list of technical skills / experience.

Instead you're looking for traits such as:

  • An interest in software development and technology.
  • A willingness to learn.
  • Attention to detail.
Collapse
 
brookesb91 profile image
Brookes

Can't echo this sentiment enough. You're looking to hire a person, not a computer.

Collapse
 
webdev_chen profile image
Uchena Miller

i agree

Collapse
 
enmanuelleacuna profile image
Enmanuelle Acuña Arguedas

Why attention to detail is like a computer?

Thread Thread
 
brookesb91 profile image
Brookes

It isn't. I was agreeing with you.

Collapse
 
codemouse92 profile image
Jason C. McDonald • Edited

...a lack of an ego.

Eight years experience hiring junior developers, and I'm still shocked at the egos I see sometimes.

Collapse
 
kodekage profile image
Prosper Opara

"Junior developer ego"

is that a pointer to overly being defensive? or being proud generally?

Thread Thread
 
codemouse92 profile image
Jason C. McDonald

It has many flavors, including:

  • "I know what I'm doing, let me work my magic."
  • "I'm the most talented developer you'll ever meet. Let me teach you a think or two."
  • "What could a(n) person ever teach me?"
  • "You'd be fools not to hire me."
  • "I'm already so proficient, you're just a way to get 'experience' to prove what I already know."

The two most absurd candidates in this way we've encountered were:

(a) A 19-yr-old who had built "half an app in C#" (and nothing else), but was determined to school everyone in the company at how we should be building software, and

(b) A candidate in his late 30s who showed up to the interview wearing dirty, torn clothes, and whom hadn't showered or brushed his teeth (I could smell him when he shook my hand), and proceeded to tell us what a brilliant coder he was...when his code was actually sub-par by even our forgiving standards. And then he tells us he had already taken another job, but "he could fit us in maybe".

Thread Thread
 
kodekage profile image
Prosper Opara

Wow! 😂

I guess a lot about being a junior developer is tied to the trait of BEING HUMBLE (especially since transitioning is dependent on how well Juniors act upon feedback. No one will want to give feedback to a proud folk)

Thread Thread
 
garethbrown82 profile image
Gareth Brown

I'd attribute this to the Dunning-Kruger effect (A term I've very recently learnt about).

a condition in which people without competence are extremely confident
linkedin.com/pulse/worse-syndrome-...

Senior devs should not instantly disregard junior devs input as they often are very keen to follow best practices and have great knowledge about up and coming technology. But like Jason suggested there can also be a lot of unfounded ego, or at least a lack of understanding of the bigger picture.

I'd agree with Prosper in the being "humble" is the most important trait for junior and also senior devs. There always someone else, regardless of experience, who knows way more than you about something!

Thread Thread
 
codemouse92 profile image
Jason C. McDonald • Edited

I agree.

Also, for a split second, I thought "Dunning-Kruger" was also the name of the company in The Office (it's actually Dunder Mifflin). 😂

Collapse
 
avalander profile image
Avalander

I wish I could like this more than once.

Collapse
 
klasss4web profile image
OCHADE EMMANUEL

Hello Rob;
I am a junior front end developer, I would like to connect to your network to learn and grow

Collapse
 
rebaiahmed profile image
Ahmed Rebai
  • Git and Git and Git (essential tool for any junior developer)
  • Design patterns
  • Front-end framework (Angular, Vue or Reactjs )
  • Java or Nodejs
  • SQL and some knowledge about NoSQL
  • Participating in Hackathons, challenges
  • StackOverflow profile
Collapse
 
webdev_chen profile image
Uchena Miller

for a junior I dont think all of the above is necessary. Knowledge and the basic practicals are indeed a necessity.
Lets be real here. you dont NEED a stack overflow profile as a junior.

Collapse
 
codemouse92 profile image
Jason C. McDonald • Edited

No. Absolutely, no. I have eight years experience hiring and training junior developers, as I mentioned elsewhere, and I have never needed them to know any of this (or the equivalents from our stack)! And yes, before long, they were proficient.

All I ask of them in the technical skills is:

  • Working proficiency in some programming language. Any programming language. It really doesn't matter which one.
  • Familiarity with essential programming concepts: variables, functions, loops, etc.
  • Familiarity with at least one paradigm: OOP, functional, generic, etc.

The rest can be picked up on the job. You should be expecting that with a junior.

And yes, most of the juniors I've hired have had little to no experience with the languages we use at MousePaw Media, but that has not been much of an obstacle at all. They're intelligent! Their first assignment is usually to code review a more experienced developer's Differential (think Pull Request), referencing the language documentation and asking questions to understand what all is happening. The first month is a little rough for them, but before long, they're quite proficient.

Collapse
 
kodekage profile image
Prosper Opara

This really looks reasonable!

Collapse
 
stalha97 profile image
stalha97 • Edited

I am looking for internship positions and I am facing this issue right now. All of the organizations are expecting me to already know every language and framework, I am baffled.

Thread Thread
 
codemouse92 profile image
Jason C. McDonald

If you're still looking come August 15, check out MousePaw Media's internship program. (That's when hiring for the next cohort opens.)

Collapse
 
srleyva profile image
Stephen Leyva (He/Him)

Yah this seems like a lot. What’s the depth of knowledge that you require for these subjects? I mean SQL and NoSQL alone. Data modeling doesn’t seem to be a junior level skill.

Collapse
 
nedcg profile image
Eduardo Caceres
  • Enough understanding of data structures and algorithms
  • Willingness to learn and to be coached
  • Attention to details
Collapse
 
codemouse92 profile image
Jason C. McDonald

Best list I've seen yet!

Collapse
 
jrogers8835 profile image
jrogers8835
  • A general hunger to learn
  • Lack of ego as mentioned by others
  • Ability to take a problem as a client would describe it and then translate that to problems that can be coded
  • some degree of comfort with any programming language (not html or css)
  • ability to communicate especially code design ideas, problems you're stuck on, and why you did what you did.

A lot boils down to not necessarily having the right answer but communicating how you get to SOME answer and being willing to have constructive conversations about your design and code.

Collapse
 
mccabiles profile image
Miguel

Ability to take a problem as a client would describe it and then translate that to problems that can be coded

This! Also, the inverse of this which is the ability to explain technical concepts to non-technical clients, like informing stakeholders why feature x would take x amount of time.

Collapse
 
jrogers8835 profile image
jrogers8835

Fair call out, I typically see this as senior or above expectation but that could depend on the team and the company.

Collapse
 
kodekage profile image
Prosper Opara

In what ways can a Junior show Ego?

Collapse
 
jrogers8835 profile image
jrogers8835
  • If I asked a lateral thinking question (how many ping pong balls can fit on a school bus), complaining that it's a waste of time or pointless question.
  • refusal to listen to help (though I acknowledge this is easily misconstrued during interviews with not wanting to look ignorant) I think there was one or 2 other examples I had in mind when I posted but they aren't coming to me. I've interviewed a few people who thought their school, internship, or 1 other brief job made them way better than they were. They ended up being close minded, hard to work with in a team, and poor at communicating their ideas.
Collapse
 
ashikpaul42 profile image
AshikPaul42
I would expect them to
  • Know HTML, CSS, JS
  • Know Github
  • Have one or more side projects
  • Speak about their future goals
Collapse
 
webdev_chen profile image
Uchena Miller

now this is acceptable..

Collapse
 
jeriel profile image
Jeriel Ng

Do you mean HTML, CSS, and JS as a requirement for a web dev role or just any software role in general?

Collapse
 
ashikpaul42 profile image
AshikPaul42

I feel it is a must for all software roles. It speaks a lot about the basics of programming.

Thread Thread
 
codemouse92 profile image
Jason C. McDonald

Blinks

Yeah, sorry, no.

As a point of reference: I'm considered an expert in the Python language, extremely proficient with C++, and skilled with algorithms, efficiency, memory management, and data structures. I've written libraries, applications, and games. I've trained a dozen young developers and counting, helping them launch successful careers. I'm a technical author and a speaker. Based on interactions, I am at least as proficient a developer as your average Javascript programmer, and more-so when we're talking about someone with less than about five or six years experience. And I am not proficient in Javascript.

(This isn't to inflate my image, but rather to point to the fact I'm no greenhorn.)

I've made a careful technically-driven decision never to waste my time on Javascript. My work with HTML and CSS, while there, is fairly sparse. I do almost nothing in web development.

Don't inflate your favorite languages to be "essentials". No language is an essential to the whole of the industry, especially not one as highly abstracted as Javascript.

Thread Thread
 
kodekage profile image
Prosper Opara

This is soo Apt!

Thanks

Collapse
 
codemouse92 profile image
Jason C. McDonald • Edited

Zero. They can read, and any good organization should have a workflow document somewhere. Heaven knows, there are only about a hundred possible "standard" workflows possible with Git.

Thread Thread
 
kodekage profile image
Prosper Opara

Is being comfortable with the general GitHub workflow a good start and then adjusting to meet organization workflow?

guides.github.com/introduction/flow/

Thread Thread
 
codemouse92 profile image
Jason C. McDonald

Honestly? Being comfortable with any VCS workflow is a good start.

Collapse
 
snyderling profile image
David Snyder

as a junior developer, it pisses me off to see all "junior developer" or "intership" job postings that require 3+ years of experience

Collapse
 
kodekage profile image
Prosper Opara • Edited

I'm not sure if there is a standard but from searching I think the maximum is 1 year?

But then I think different companies always have an interpretation for what experience really is...

Collapse
 
mattpocockuk profile image
Matt Pocock

Enough to commit, push, pull, and merge.

Thread Thread
 
rebaiahmed profile image
Ahmed Rebai

it depends on your position and the project that you will be affected, a junior is a grade to make a difference in the salary, you should have passionate about coding, having the habits to ask in StackOverflow, GitHub issues

Thread Thread
 
kodekage profile image
Prosper Opara

I guess good Git skills are eventually needed for team collaboration. As most companies depend heavily on the tool

Collapse
 
djpetifo profile image
Durhode Petifort

Basic mastery of your tech stack (If the job is for embedded systems, maybe don't walk in and say you only know HTML lol)

Basic GIT

Basic algorithms (if you can do fizzbuzz you're gold)

Enthusiasm

A willingness to learn.

It might take 3 months of training to get someone from a hobbyist to professional junior level but they'll also probably spend much more time with the company to learn. If I had a company I would want someone who has attachment to the company, not someone who shows up for a check.

Collapse
 
djpetifo profile image
Durhode Petifort

If you're not willing to invest in people I don't see how you can ever expect them to invest in your vision.

Collapse
 
rebaiahmed profile image
Ahmed Rebai

It's a priority , because you can be a guru in any technology but as a junior developer, while joining a company you will work with the team , if you didn't' matter how to write a good commit message, create a new branch for each task how to make a rebase a pull, git checkout, you need them as skills into the programming war

Collapse
 
rebaiahmed profile image
Ahmed Rebai

I recommend this article towardsdatascience.com/soft-skills... about soft skills for developer

Collapse
 
mileswatson profile image
Miles Watson • Edited

Thanks for that! I'm working on marketing myself as a junior dev, and those are the sort of things I had forgotten to emphasise.

Collapse
 
rebaiahmed profile image
Ahmed Rebai

As much you learn, us is good for you, there is basic commands you should learn and master

Collapse
 
iamgreatemeka profile image
Great Emeka

Wonderful lists so far, awesome comments everywhere...I just came to read and I'm pleased i did...Thanks all!

Collapse
 
odunlemi profile image
Abiodun Longe

I went through the comments and learned a lot, these tips will help when I'm hunting for a junior role as I'm currently interning. Thank you.

Collapse
 
raselvai profile image
Md. Rasel Hossain

I need a job as a front end developer. There are many founders here, you can hire me Emergency