I'm finding it hard to find a job in the software world. I have experience in

  • C
  • C++
  • PHP
  • MySQL, NoSQL
  • Node.js
  • Javascript
  • Front
  • Back
  • Application
  • BSP
  • Embedded

And on. There's not much I haven't touched. Video streaming, audio streaming, networking, servers, clients, TCP, UDP, jQuery, Bootstrap, .NET, Database managers, C++ wrappers, I can go on and on.. I usually work on embedded devices that have webservers (think of your router) and I literally have to program the entire thing, from hardware to the web UI.

Yet, I cannot find a place that wants a "programmer", they all want a "React" developer, or a "7+ years node js 'such and such package' developer", or a "ruby on rails 1000 years experience", etc.

Is it that there are enough people who have very specific skill sets and are fulfilling these positions? It seems that the more languages and applications and layers I've developed on, the worst chance I have. I am a generalist programmer, I can program anything from hardware support to the button you click on, but "I don't have enough experience" in that particular tiny subset of programming. Is it because these stupid hiring agencies are blocking the paths? If I was a veteran brick layer that's built 10 homes and 10 skyscrapers (out of bricks..?) would I lose out to someone whose built 12 homes and 0 skyscrapers because the company only builds homes? This seems to be a new phenomenon within the last 10 yrs.

  • I guess, what am I supposed to do about the situation? How does a generalist programmer find a job? Do I need to hone in on one VERY specific subset of software development? Should I stop being full stack and just master React? Or something? I don't know. – tanks_____tanks Aug 12 '20 at 15:56
  • Where did you get all this experience from? A job? – guest Aug 12 '20 at 16:11
  • 1
    When you have seen job ads that ask for more years of experience than that the technology exists, then you know how serious to take those requirements. – Bart van Ingen Schenau Aug 12 '20 at 16:42
  • @guest Yes, literally one job (8 yrs in) I had to learn absolutely everything as we are a tiny company. – tanks_____tanks Aug 12 '20 at 17:07
  • @tanks_____tanks HR fills out the job orders per guidelines, which is why so many of them don't make sense RE: Tech jobs. in 2006, you'd find requirements for 5+ years with .net, which hadn't been released until 2002, making the requirement LITERALLY IMPOSSIBLE. – Old_Lamplighter Aug 12 '20 at 17:10

Look for fullstack jobs, as you actually did full stack. Those are jobs that value breadth over depth. Also the value people learning enough of a technology in a short time to get it going.

Otherwise, mentiond you have a broad horizon, but adapt to the job you want. E.g: if you apply for a backend job, give that more space on your cv and stress all the things you did in backend. Same principle applies for other jobs.

Bigger teams often lead to more specialized roles, so a narrower skillset. but because people focus on that, they can develop more depth (not all do though).

Companies want people that are able to be productive in the shortest amount possible. Some frameworks have quite a learning curve, and companies prefer when another company has payed for the time you need to learn that.

Also, when they require lots of years, it could be they want a senior who is able to teach newer people the ropes of the framework.

That being said, the old 50% 70% 90% rule applies: If you have 50% of what they want, you have a chance at applying. If you have 70%, you have good chances. If you have 90% you will likely be hired on the spot. Of course, exceptions exist.

Not the answer you're looking for? Browse other questions tagged .