I am about to graduate, and I am already working as a web developer in our library IT department.

When I look at job postings I am absolutely overwhelmed by the sheer variety of technologies out there.

Some companies care about math + algorithms + data structures. Some care about experiences in technology stack XYZ. SQL, css, html, frameworks, javascript, design patterns etc.. etc... etc...

At some point I realized I just need to start at mastering a foundation to become employable at a better place and go from there. But the skill-set to get me in the doors varies and I just don't have time to learn everything.

How do you deal with this issue? What is the essential stack to become employable? Say in php or ror arena.

Perhaps a smarter move would be to move to a technology stack with less variety like .net?


4 Answers 4


The thing with job postings is that the requirements getting posted are often more extensive than the skill-set that is sufficient to get you the job, either because HR lists every buzzword they come up with, includes nice-to-have skills as required or wants to scare off incompetent candidates. People overestimate their abilities in cv's or outright lie about them, the same goes for job postings. If you feel you meet, say, 3/4 of the listed requirements, you can very well take your chances. If the HR is competent, they will seriously consider your application.

Also, getting an internship is by far the easiest way to get yourself in the door. You might want to look around for one.

Also, keep in mind that the climate on the job market isn't the same around the globe and it will show. Judging from Daniel Pittman's answer the situation in the US is very different to the one in Central Europe (which could be of interest to you looking at your nickname).

  • 1
    It seldom hurts to apply anyway, but relatively few job postings are "artificially heightened", and from long experience being part of that hiring process - those skills are almost always things that are directly looked for. The idea that they are made up - to scare off candidates - isn't super-helpful. :( Mar 25, 2012 at 17:04
  • Let's say that you're right: HR is making up a list of anything they can think of. You'll probably say: "Hey, I meet 70 % of the requirements, let me give it a shot". Who do you end up sending your CV to ? Exactly: to the HR department. Mar 25, 2012 at 17:37
  • 2
    It doesn't mean HR is incompetent. If you were to describe your dream employer, your "list of requirements" would probably be completely unrealistic, too. Why should it be any different the other way round?
    – nikie
    Mar 25, 2012 at 17:44
  • @Daniel: I admit that wasn't a good choice of words on my part, edited the post to include remarks from comments.
    – scrwtp
    Mar 25, 2012 at 19:11

One of the hard parts of working in the software development industry is that, generally speaking, you can expect to face some portion of this problem for the rest of your career. The industry is changing fast enough that if you sit still you find yourself more and more left behind. (Consider where, eg, Windows 3.1 programming skills would help you out in todays job market, for example.)

As a new graduate, many employers are realistic, and understand that you don't have a long history of industry skills to draw on. Certainly, over the last ten years of hiring at a range of companies, and in talking to peers who are part of the hiring process elsewhere, this is true both in the US, and in Australia, and Europe.

The standard things you can bring to the table as a new graduate are:

  • enthusiasm for the company, the industry, the problem space, and the job itself.
  • a passion for learning, and proof that you are able to learn on the fly.
  • proof that you have actually mastered the basic skills of the course you took.

Those are more or less the "pass/fail" level: there are enough graduates who are enthusiastic about the job, and who have a demonstrable passion for learning, that if you come across as "just after a job" you are less likely to sell yourself well.

Beyond that, the things that make a candidate most compelling when we hire at the intern or new graduate level are both reasonably easy and reasonable hard in their own ways:

We look for someone who demonstrated both passion and success outside the requirements of the course - good past internships, competition wins, industry membership, a blog that documents their learning and experiments, participation in the open source community, a visible and competent presence on the StackExchange family, and so on.

We also look for someone who can do the job - and nothing convinces like doing it. My current employer has an open source project, so contributing to that is a big help getting a job - since that exactly maps to a part of the job we care about.

For closed companies, demonstrating that you can write code, and well, is good though. We would absolutely favour candidates who had code available publicly that we could read through and understand their general competence.

The two main paths to that are to contribute to an existing open project, or to start your own - even if it isn't wildly successful - in visible places like GitHub, or other online code repositories, or in visible open source projects.

Finally, remember two depressing things:

One, most employers are going to look for your online presence. You should check that reflects what you do want them to know, like your technical skills, and that it doesn't reflect things you don't want to emphasise, like the story of the day you skipped an exam because your hangover was too big. (Which, sad but true, a tiny proportion of our rejected candidates get kicked out on.)

Two, your are going to graduate in a terrible job market for people without industry experience. Right now there are lots of people who have one, two, five, even ten years experience who can't find a job.

Especially in the US that means they are hungry for full time anything (with benefits) and are willing to consider anything - even internships - in order to be able to work.

So, right now you will get lots of rejections. Don't be mistaken - you could be amazing, and you would still get lots of rejections. The competition is incredible, so don't be discouraged. Keep plugging away with honesty, and work on improving your skills by learning bits and pieces of those things the job adverts list.


It's not overwhelming,

  • math, your a graduate, you can do maths
  • algorithms, comp-sci grads know algorithms
  • data structures, comp-sci grads know data structures

  • technology stack XYZ, learn one stack the rest are similar enough

  • SQL, it's the database, if you build any app you'll deal with the database
  • css, it's the visual part of web dev, if you build any web app you'll know CSS
  • html, it's the content of the website, you know this if you build websites
  • frameworks, you will use one if your building a web app
  • javascript, you will learn this if your building a web app
  • design patterns, you implement these if you code

If you have a comp-sci degree and you've build a web application then you meet all these criteria.

  • 3
    "if you build any app you'll deal with the database". No. Not by a large margin.
    – nikie
    Mar 25, 2012 at 17:41
  • @nikie The only app that doesnt deal with a database is a non-optimized proxy app
    – Raynos
    Mar 25, 2012 at 18:46
  • 3
    You seem to have a very narrow view of software development. Think embedded development, mobile development, games development, desktop applications, compilers, CAD software or numbercrunching, just to name a few. Software development is not just piecing together CURD web application.
    – nikie
    Mar 25, 2012 at 20:21
  • @nikie I was specifically talking about web development. Within web development databases are common.
    – Raynos
    Mar 25, 2012 at 20:23

I would suggest you to take up a certification track if you like to focus as a developer. This would be the best way to prove your skill set and make yourself more marketable in the industry.

Also when you talk about stuff like Algorithms, Data Structures and Math then you do need to appreciate here that some employers require Computer Science graduates and some require IT professionals. You have to appreciate the difference between Computer Science and Information Technology. Identify a career path for yourself. Please check this answer here:

test for graduate software developer role?

  • I find it hard to believe that adds any value over a CS degree.
    – Casey
    May 13, 2014 at 2:58

Not the answer you're looking for? Browse other questions tagged or ask your own question.