HACKER Q&A
📣 kugelblitz

Best long-term and marketable web stack for freelance contract devs?


I feel like I don't get enough time to deep-dive into one specific programming language / framework, since as a freelance I feel I need to learn 4 or 6 or 10 languages / frameworks and need to keep up-to-date on all of them.

I want to invest the next years learning a few carefully selected languages / frameworks in more depth, without worrying too much about breaking changes in the underlying software, so that (optionally) I can easily pick up other languages / frameworks on-demand, since I understand the underlying concepts better.

Do you have any go-to web dev languages / tools / frameworks that you feel will be a good investment of your time in the long-term?

Here's some stuff I like: Python / Flask, PostgreSQL, AWS (incl. ElasticBeanstalk) / Netlify, Mithril.js, npm / Makefile / Parcel.js. (Currently I use a lot of PHP / Laravel / Symfony, Vue / Angular in addition to the previously mentioned.) Still undecided on Docker, but I do use it quite regularly, but also still use Vagrant as well.

(Re: My background: Freelance web developer / software architect in Western Europe, mostly working with agencies and SMEs; I've been doing this for about 10 years, 6 of them full-time, but have been developing websites or doing IT admin work on the side for about 20 years.)


  👤 Nextgrid Accepted Answer ✓
In my opinion a very important skill to have as a freelancer is to have an understanding of the whole picture. Clients hire you to solve their problems. How you do that and which tools you use is mostly irrelevant.

I suggest a backend language (Python, Rails, etc), then Linux system administration & networking skills (play around with some bare metal servers & hardware, see if you can turn an old desktop into a router, etc - that's how I got started) and then potentially a native mobile language like Swift or Java or Kotlin. These few solid basics will last you for decades without having to "keep up with the Joneses" learning every day's new Javascript framework.

The main marketable thing is your portfolio/resume and client testimonials, if any. Approaching it from a language/stack perspective instead of a solution perspective is IMO wrong unless you want to limit yourself to being a "code monkey" for hire.


👤 mindcrime
I think @Nextgrid hit the nail on the head. If you're being brought in to use a customer specified stack/platform, you're just contract labor. That makes you a commodity, and you're likely to draw commodity compensation for same. Your goal should be to position your self as somebody who is qualified - no, uniquely qualified - to solve a problem for the customer. Get yourself in that position, and you'll be the one dictating the technical details of the solution, and you'll be able to charge more.