Changing the world, one hacker at a time

What makes a good junior developer? As a startup founder and a community participant in Malaysia, I've seen many junior developers from all different backgrounds and from all different ages.

Some are self-taught. Some have a CS degree. Some are just hobbyists coders whilst working at a full time day job. Literally everyone sees coding differently and has different skill sets. Yet all good junior coders have some common traits in common. Here are some of the key tests that most companies use to filter out the good from the just the average.

You have good programming logic

Test 1: FizzBuzz

This is literally the most common test you can see on google that interviewers apparently use to filter out candidates. Here's the test

"Write a program that prints the numbers from 1 to 100. But for multiples of three print “Fizz” instead of the number and for the multiples of five print “Buzz”. For numbers which are multiples of both three and five print “FizzBuzz”."

Test 2: Write a factorial function

A function that asks the user to enter a positive number. In return the program will output the factorial of this number.
EG:
factorial(5) returns 120
factorial(10) returns 362880

Test 3: Write a recursive factorial

A factorial function that calls itself without using any iterative loops. You can't use for or while. Here's a recursive template to start if you are lost.

foo() {
    return foo()
}

Test 4: Write a tail recursive factorial

If you can understand or have done tail recursive, I salute you. Whilst it's not difficult, it clearly shows that you have been exploring the world of coding beyond the normal scope of what a junior dev would have done. Companies will be lining up to hire you. :)

Extra challenge: Write a fibonacci and a recursive fibonacci :)

You are super outstanding. Congrats. you are set for life.

You have sound knowlege of computer science

Interviewers always like to test their appliants on the phone first before calling them in for an interview. Here are some of the questions they would ask someone to filter out the amateurs vs the serious candidates. These are basic questions that every developer should understand.

Test 1: What is asynchronous and synchronous execution cute
Test 2: What is Big O nice
Test 3: What is http vs https not bad
Test 4: What is the OSI Model very interesting
Test 5: What is concurrency vs parallelism ur gettin hot
Test 6: Explain CORS ur smokin
Test 7: Explain how authentication works with jwt and cookies ur hired

So there you have it. Pheww, that was quite a mouthful. Of course this is no way conclusive or comprehensive. I can go on for hours. Nevertheless, these are some basic tests that you should be able to do yourself before going to a job interview or picking up that phone interview call.

You dont know these? Don't worry. You still may get a job as demand for developers is sky rocketing. Just may not be at the company of your choice.

I tried the tests but I can't do them   :(

Join The Hacker Collective by filling out the form here  and we will ensure you can do these tests and much more     :)