Depth vs Breadth for a newb

Hey all, I’ve been coding since March after the pandemic wiped out my job (playing guitar). I have been learning mostly JS, with HTML/CSS a given, and briefly investigated things like PHP, Node, and MySQL. I have not learned any frameworks, but have just spent my time making little projects, learning how to manipulate the DOM, practicing programming/algorithms, and sometimes doing tutorials.

Fast forward to my looking through job listings, and there’s a bit of a splash of cold water, not only because most places want quite a bit of experience, but there is usually a list of technologies that extends down the page. I’d say most of the jobs list at least ten separate technologies as being basically necessary, with others that are “bonus.”

I get a bit of a “the HR person just copied this stuff from some list” vibe from some of them, but still I wonder if I need to start diversifying and trying to cover these bases. I have been trying to get better at Vanilla.js and there is a lot lot lot to learn, but is it a better strategy to try to add a large number of technologies at a more superficial level?


The best advice I can give is to focus on the core concepts. Having a solid understanding of how JavaScript works and how to write a script that does a specific task will help you greatly when you go to look at a framework (where the syntax may be different, but the concepts are the same).

When it comes to frameworks/libraries like React, I definitely recommend being very comfortable with vanilla JavaScript first - otherwise you’ll find yourself overwhelmed with a lot to learn all at once.


I’ve noticed also many entry level web developer job listings require 5 years experience. I don’t care the industry that’s not entry level.

I’m “pre-applicant”, but at the point I need to apply. So, I’ve also been looking at job postings.

Maybe someone that has been hired can weigh in here with a better opinion than me about job postings. But what I see looking at them is there are some basic skills they want and list many others as bonus. You’ll probably need to demonstrate your skills in the basics they want so you’ll want to be strong there.

A Jack of all, master of none may not be what the company wants, despite what the postings suggests. So, you may be better off getting more knowledge of HTML, CSS, JAVASCRIPT, before trying to learn a little of everything. Plus you don’t know what technologies a future employer will use.

But, like I said maybe someone that has gone through the process has a better opinion.


Hey there,

this highly depends on the size of the company.

The bigger the company, the more you need specialists.

How companies evolve:

  • 1 person does all the stuff, fullstack
  • can’t do it all, needs help, hires a person for fullstack
  • now 2x fullstack
  • you want to make it look nicer, need help, hire a person for frontend
  • now 2x fullstack, 1x frontend
  • you want to make it faster, need help, hire a person for backend
  • now 2x fullstack, 1x frontend, 1x backend

So depending on your challenges, you hire new people, mostly for a specific problem.
In big companies you will find people with roles like Senior MongoDB Query Writer or ReactJS Component Framework Documentation Maintainer (small exaggeration).

1 Like

Thanks for the replies. I feel tugged in two directions. On one hand, I see that the specialists are the ones making $, and I’m a big believer in standing out from the crowd, not following it. This would seem to suggest that focusing on getting one skill to a X10 (or maybe just X2?) level would be a good strategy. On the other hand, I have not worked for a corporation for 20 years. I have been self-employed for 15 years, and I certainly like the idea of working from home and not having to deal with meetings, office politics, and open offices.

But… then I also don’t like the idea of competing for gigs online with PHP whizzes from India with masters degrees.

Eh… I think I’m more confused!

I think the major cons are:

  • you have to make a good decision what this ONE skill is, probably very difficult decision for a beginner
  • if you are a curious person, you maybe are not happy with this

We think about this big global market, where everyone has access to these folks, legal and bureaucratic-wise. But it’s probably not like this.

Sure, if you use platforms like upwork, then this is maybe the case.

So my best idea is to find your niche, e.g.:

  • if you are a native english speaker, your spoken & written english is probably better than 90% of a foreigner’s english
  • if you live in country X, you know the peoples’ daily life way better than a foreigner
  • if you live in country X, you know the peoples’ problems way better than a foreigner
  • if you live in country X, you know the peoples’ culture way better than a foreigner

I worked for various startups and every time we had problems with freelancers, it wasn’t due technical stuff, it was mostly cultural, communication, legal.

I think learning “people” is way harder than learning tech.

1 Like

Thanks for the kind and thoughtful words, @miku86. I will continue to evaluate my strategy with this in mind. I am a very “local” kind of person, and it would suit me to continue to emphasize the local market. Maybe I can do this while still freelancing.

I can show you a example from my own life.

I’m doing mentoring.
My highest paying mentee pays me 75€ (~$90) per week to talk to me for 1 hour.
This doesn’t feel like work, this is very enjoyable.

Am I the best developer in the world? No.
Is there a developer in a foreign country, who has my developer skills AND would do this for 10€? 100%!

But I have some advantages this person maybe hasn’t:

  • German as native language and fluent in English
  • European time zone
  • I’m a skilled communicator
  • I have proof of my work (70+ workshops, 100+ articles, 800+ answers on FCC, 12.000 followers on
  • I’m an empathic and caring person (!)

So as “western” people we probably can’t “win” against low paying countries cost-wise.
But there are many other possibilities how to get clients.

1 Like