top | item 9502518

Ask HN: Why hire junior developers?

10 points| kiloreux | 11 years ago | reply

As a junior developer and new graduate actively looking for a job a question came to my mind , why would companies hire junior developers , instead of senior and more advanced developers , of course there is the long term investment and the lower salary that junior gets compare to seniors , but is there any other reasons , that companies hiring junior developers get ?

18 comments

order
[+] bowlich|11 years ago|reply
On top of what everyone else has said:

If you are looking at smaller companies, there is definitely a tiered system in terms of the complexity and challenges that a company can offer it's development staff. One company's "junior" developer might have the experience to be a "senior" developer at a firm with much simpler problems.

Some people have the stamina that they can just keep solving the same problems over and over again without getting burnt out. I think most people though, will have a tendency to seek out novel or more challenging problems as they grow. Someone working on problems they find too easy will lead quickier to burn out, likewise someone working perpetually on problems that are way above their head can lead to the same.

I have changed firms three times in my career, and each time I sought out a company that was doing something more difficult than the last. With each company, I've come in on the lower-end of the team's skill curve and worked my way up to the upper-end of the skill curve. Then, I got bored, burnt out and moved on to something more difficult.

[+] ryan21030|11 years ago|reply
I'm a junior developer and here is my opinion:

I started working when I was 18 and I believe I was hired because whilst I still had a really good knowledge of my area (I hope), I was still very cheap to hire £18k per year. This was good for the company I joined as it's a small startup.

I believe that the junior developers my company have hired have all been super eager to impress their bosses and learn new things while still having a huge passion and interest in coding. Whilst we have all been given some time to adjust to our project, we all quickly adjusted and were able to give be benefits very early on. I can't speak for senior developers but these are the main advantages of junior developers.

With regards to relative inexperience of junior developers, I myself have only been coding for a few years now but I have a genuine passion for coding and go home and throw myself into it every night so I believe that I pick myself up there, someone else I work with has been coding since he was 10!! Whilst not having a lot of experience in a professional environment before joining my current company, in the last year or so, I have managed to learn a number of important tools for the job like: mastering linux, built a great knowledge of PHP, built a good knowledge of C, built a great knowledge of JavaScript, built a great knowledge of server administration and last but not least, improved my productivity by at least 10% by mastering vim. It doesn't take long for junior devs to learn this stuff so they're useful to companies.

TLDR; Everyone has something to offer even junior developers.

[+] hanumantmk|11 years ago|reply
Your business can be in something technical, difficult and not currently in vogue. If you hire people who can already do the work, you're looking at a narrow band of very skilled, very expensive senior engineers. You'll hire every one of those you can get your hands on, but that'll still leave a gap that gets wider every year as that older generation ages out. Hiring in the 3-7 year range can be a bit dicey too, because the mindset you pick up building mobile apps isn't quite what you need to write a database, operating system or compiler. But nobody needs those anymore, right?

So you hire out of school, build up a huge intern program and you pay the cost to train and teach. I'm not saying it's the norm, but it's why you do it when you're not just trying to save some money or compress wages further up the food chain.

[+] WalterSear|11 years ago|reply
* Not all work needs highly experienced workers. Even the smartest coder in the room is typing one character at a time.

* Everyone is more motivated and effective when they are being challenged and occupied by their work.

* Mentorship and knowledge-sharing benefits both the receiver and the teacher.

* Over the medium term, junior engineers are less likely to leave.

[+] brunolazzaro|11 years ago|reply
I think it boils down to this 3 things:

1. Salary. Your pay will be less than the one of a Senior Developer.

2. Role and tasks. You will, as a junior developer, be taking on tasks better suited for your relatively "non ripe" skills. This doesn't mean that you'll get the short end of the stick. It means that you'll be assinged tasks that fit your current skillset.

3. Experience. While you might be a top-notch developer, you don't have "real-life" experience. Most of the times senior developers have years if not decades of experience on their backs. And with time comes wisdom.

These three things combined are a compelling reason to hire Junior devs for small tasks and projects.

[+] billconan|11 years ago|reply
1. cheap

2. not every task is creative, in fact most of them are boring. senior developer gets bored. if you assign a senior engineer to do auto testing, he/she will leave.

3. junior developers work harder. interns work even harder. that's a fact.

[+] khaki54|11 years ago|reply
There are many reasons, but I will give you an example that hasn't been explained yet.

For some work, there is a set hourly rate the company can charge. For instance, they may bid a contract $50/h for each developer. In this case, I can pay a mid-level developer 65k/yr with 35k/yr in benefits and overhead, and break even with $0 profit.

If I hire a more junior developer and pay him 50k and train him on the job, I then make 15k in profit and he gets a year of experience.

[+] yeukhon|11 years ago|reply
Curiosity. I am a junior developer/devops. In general I find junior level developers are more curious about how things work. Often people find my ideas interesting, worth thinking, or right on the spot. There are some very talented junior-level developers who wind up being very successful members of a team in a short period of time.
[+] pkaye|11 years ago|reply
Two reasons come in my mind: 1. Some junior developers are just really good and learn fast compared to an average developer. 2. A junior developer has the energy and drive being new to the field. They are willing to do many things for the sake of learning which the senior developer is already jaded by.
[+] freedevbootcamp|11 years ago|reply
Junior developers are hired because somebody has to do the shit work that nobody else wants to do.
[+] k__|11 years ago|reply
They can form them to their needs.
[+] abc_lisper|11 years ago|reply
Eh. Any good and competent senior engineer will do the same.
[+] giaour|11 years ago|reply
There simply aren't enough senior developers to go around.

In the long-term, this means we need to make more senior developers. In the short-term, we need someone to write some code. Hiring junior developers is the best way to achieve both of those goals.

[+] tmn|11 years ago|reply
Supply and demand. There is a lot of demand. There may not be (there almost certainly isn't) enough senior devs to go around. By nature people need to hire junior devs.
[+] mpnordland|11 years ago|reply
For those of you who hire junior developers, how many of you hire them remotely? Do you consider them capable of that? What would you need to see to convince you?
[+] anon3_|11 years ago|reply
No one gets gratification from bringing in a new generation?