Why do companies expect so many languages from a junior?

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:

5 Likes

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).

5 Likes

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.

3 Likes

I’m going to quote my own post here:

4 Likes

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

But with React.js and such, isn’t jQuery doomed to disappear? I learned React.js and it render jquery uselles in a way…

In terms of learning strategy, if one is limited by time and ressources (which we all are), it is very difficult to learn a multitude of lIT languages and technologies within a limited timespan. On the other hand, learning very well only one or two languages makes you a more competent candidate, to the detriment of your knowledge of other languages.
On the current IT Developer job market, is it better to be “medium level” in many IT languages, or to be very good in only one or 2 (like Javascript and Python)? Do recruiters look for all good rounded candidates, or candidates with experience, portfolio and who can show they master the most important algorithmic concepts?
It’s very important to know where one is heading, and always in mind that the clocks ticks by…

1 Like

As someone who has been on both sides of this coin I can tell you to not be discouraged by job postings. A lot of times as hiring managers we put very general, high level, and wish list items as our “requirements”. I believe the reality is that we want you to be hungry to learn, eager to contribute, and excited to be joining our team. The languages, stacks, and other technical skills are important, but they are not the most important thing.

When it comes to languages in a job posting I would go with your gut if you know one of the three languages listed and you understand the rest of the terms in the posting, apply and see what happens. What’s the worst thing that could happen? You get asked a question about something you don’t know. So you reply, “I’m not sure but I would be really excited to learn about that”.

2 Likes

That’s a similar situation to what I did for the job I am in right now, didn’t know Python but said I really wanted to learn it and contribute and they really liked that attitude. I just find it it very off putting for junior roles when they ask for 7/8 languages when they know that really isn’t feasible for most people with that level of experience, unless as you say they are a wishlist of skills

Thanks Ian for sharing your perspective!

1 Like

Because it’s cheaper to hire 1 developer that knows a full stack then it is to hire 3 developers that know one language.

The problem is not with them requiring 7-8 languages, the problem is with job title in itself: junior full stack web developer. I believe there is no such thing as a “junior” “full stack developer”.
For a full stack developer you need to be proficient in front-end web development and, at the same time you need to be proficient in back-end.
Front-end mainly consists of these things:
Javascript, preferably ES6 standard, plus tools to convert it into older versions and support older browsers. Add modern framewords like Angular/React (sometimes their combinations) into the mix, it will most likely be desired (sometimes it can be something else.
HTML and CSS, preferably with knowledge of CSS pre-processors, they seem to help organize things
There may be more requirements but lets skip them for simplicity

To be qualified as a back-end web developer, you’ll need to be proficient with:
Database engines, like SQL and noSQL (sometimes a mix of the two)
Back-end programming language, sometimes you’ll be fine with Node.js proficiency, plus some tools and libraries that help complete your tasks, but most of the time you’ll need either PHP or Java or C# or Python. Quite often you’ll need more than one. Add libraries or frameworks for the language of choice.
Server-client architecture knowledge. If you’re working as a back-end, you’ll need to know how the network works at some point.

To mix it all up:
You really need to know how to work with several independent programming languages and various frameworks, libraries etc to work as a full-stack web developer. Question is: can you really expect a junior web developer to be proficient at all of this at the same time?
My answer would be a strong “No”. You shouldn’t expect a junior to be proficient in everything at the same time. This will mean that this person is either not a junior at all (don’t expect them to work for junior’s salary), or they don’t have all the listed skills at required level at the same time.

My advice: stay away from companies that offer a junior full stack web developer position. They most likely do not have well organized processes and have no idea what they want from their junior web developer. You can’t expect a junior to be efficient at multiple roles at the same time, you can expect them to grow into front-end or back-end web developer in 3-6 months and be efficient at simple tasks, but full stack requires years of experience to be efficient.

Just my personal opinion :slight_smile:
Personally I was looking for a full-stack web developer simply because I thought I was good enough. After working for 8 months I realize how far I was from a full stack web developer (working as a back-end dev now). I was to look for a new job now, I wouldn’t try to be a full stack dev. It is more efficient to concentrate at one role and do it well, and then, when you’re an expert, you can either learn the other side, or learn a new language, but it should be one thing at a time (my personal opinion).

3 Likes

Thanks for your comment Yuri.

I agree with you that there probably should not be Junior Full Stack roles, it probably requires too much for someone with the level of experience they are expecting of a Junior and of course what they are willing to pay. Yes from my personal experience I agree that in 3-6 months you can’t really be proficient in front and back end programming, I definitely lean more to Front End than Back End.

I personally think that all these job roles should be looked over by the relevant programming/software departments as lots of people have suggested they are just a “wish list” of skills, in that case they should say : “Required Skills, Preferred Skills, Bonus Skills”.

1 Like