Why do companies expect so many languages from a junior?

Just curious if anyone else has the same problem I am facing. I am currently a full stack developer (Python, HTML, CSS, etc).

I was looking at other jobs in the area for Front End Development (not sure I like full stack) and they want so many languages!! I know HTML, CSS(SCSS), Javascript(JQuery), SQL, but lots of jobs want these and PHP, C#, multiple different frameworks for each of those and more.

Does anyone else think they employers expect too many languages from juniors?


Partially I agree- some companies are just overboard with their expectations. On the other hand some of them require only a general familiarity with given languages- it’s easier to teach an employee stuff that he encountered before :wink:

1 Like

I think companies take a throw everything and see what sticks approach. At least I hope that’s the case as someone looking for entry/junior level roles, I think it’s a bad approach though because many qualified people wont even bother applying.


If you are looking for a front-end development position you will potentially need to know a JavaScript framework beyond jQuery, ie. React, Angular, Backbone.
jQuery is actually considered a ‘library’ not a framework too I believe, to be specific about it.
But yeah I have seen a lot of ‘javascript’ or ‘front-end’ developer type job postings are really jobs for a full stack developer.

1 Like

As a hiring manager I can absolutely assure you that those kinds of job requirements are a total “Christmas wish list” of things our perfect candidate would have as a skill set. The reality is that likely only a few of those things will actually be needed, and some skills transfer over.

For a post like that, I’d say HTML, CSS and JS are requirements, and that any one of PHP, Python, C# would be necessary, because the software fundamentals you learn in any of those languages will transfer just fine to whichever language they actually use at the job.

I recently chimed in on a Twitter thread about this: https://twitter.com/iandouglas736/status/896990971027529729


I have worked in Oracle development for over 10 years, and you get used to seeing ambitious job adverts. As a rule you only need the core skills, like Ian says it is a quite a wish list.

When you feel confident enough to work full time, just send your CV around and forget about the details.


to have a bargaining power on salary maybe?
and to reduce the over-confidents of a junior dev?


Job postings are typically done by someone in HR, not by the actual department they’re hiring for. My experience is, the HR department has very little idea of what is done in an IT or programming department. They may have a list of skills that the programming department is capable of or is looking for.

“Yeah, we do CSS, HTML, Python, C++, .NET, and Java.”

HR Translation: “Entry level developer. Must have CSS, HTML, Python, C++, .NET, and Java.”

I once read an article about how some HR departments sort of guess what’s needed in the role. Like they know the team is looking for someone who’s pretty good with Swyft, so they ask for someone with six years Swyft experience, but it’s only been around since 2013.

A lot of the time, they simply don’t know what’s needed in a job, they just have an idea of what to look for.


One YouTuber I subscribe to said that it’s basically everything they’d want in a developer and they’ll pick out the developer who is most attractive to them skills wise. No developer is likely to have all skills but one might be really good at web dev while another might be good at swift or java and app development. They often have hiring targets and hiring periods (like 31 days or so) in which their department is able to hire or they lose the slot until their turn comes around again. They’ll pick the people who fit their needs most. Hope this helps :slight_smile:


Thanks Ian! That makes sense and after looking through your twitter conversation I agree with you that if the job posting was required skills, nice-to-have optional skills, and bonus point skills it would make me much more likely to apply to the roles!

It definitely puts my mind at rest that this is more than likely a “wishlist” of skills rather than a YOU MUST HAVE set of skills

1 Like

I’ve definitely noticed this when I went for an interview. The job role specified a lot of languages but then when I asked about what languages they wanted/used half of the ones on the job advert were not talked about.

Yeap i’ve definitely noticed that most roles ask for Javascript, JQuery and then some other framework like React/Angular but those are normally in the “nice to have” skills section. The trouble I have with that is they seem to fall in and out of favour depending on the location/region you want to work and so it’s hard to know which one to learn

Normally they are listing every technology that is used, either that a specific recently-departed employee they need to replace used, or just generally what the company/a team in the company uses/has used at some recent point.

Generally lots of the stuff in the laundry list is “nice to have” even if it specifies that these skills are needed (though this is not a hard an fast rule). If a candidate covers all the bases, that’s great, but if not, a judgement call would be made on whether they seem to be able to learn the tech the company uses. Core skills get you the job, and knowledge of one language translates to other languages. It gets progressively easier to learn new languages once you know your first. Stuff like frameworks are easy enough to learn once you understand the underlying language & concepts (an experienced JS dev should pick up something like React and be productive in it in a few days, for example).

HTML/CSS/JS are necessary FE skills, but a company is always going to have some back end that these need to build off, and just being familiar one often gives a massive boost to hiring chances - in practise: PHP is common for agencies, C#/Java for enterprise, Ruby/Python for smaller software shops, Node/Go for teams within companies building APIs, Swift/ObjectiveC for IOS app shops, Java for Android app shops, C/C++ for game dev. Knowing SQL is always useful.

Also, heh, there is also the common situation where the recruitment person used by the company is just picking buzzwords off a list (one of the ones we used at my last job kept adding “Java” and “PHP” as necessary skills on every listing at one point, despite the fact the position was always for either a Ruby on Rails or JS dev and this was specified in the specs we sent to her - this strategy worked though, because we got people in who were experienced in PHP, and who made the jump to Ruby on Rails no problem).


Can you clarify the difference between a library and a framework please? Just for my own info…

1 Like

A library you can use whatever tiny part helps you. A framework you must commit your entire project to.


I’m going to quote my own post here:


Thanks Ariel that post was really good to read

I know before this role I have now I was really put off applying. Luckily my employer is willing to let me learn whilst working but it seems others want so much more straight away

This topic reminds me of this somewhat-popular YouTube video which answers a different question but also includes the topic of how most job postings get created: https://www.youtube.com/watch?v=6G3kQyqMFpQ

Plus, it’s a great video anyway that I urge everyone to watch for the reality check that it provides.

1 Like

Well … youtube is great but you really ought to ask what are the chances some guy freely dishing deep insight into American corporate HR and software development hiring processes has actually had anything to do with a real job req in an American software company

It may be comforting to think you did not get a call back or an offer due to outrageous expectations or ulterior motives of a recruiter - in reality though businesses actually do need to make money, have actual plans and products for which actual people have to hired - it’s not just head games and dice rolls