Hacker News new | ask | show | jobs
by Nysa 3228 days ago
I'am assuming you are 'just' developing solutions. Your customers are only interested in a product - not tech side.

So, your goal should be: "How I can develop (and maintain) this product in the most efficient way?".

Step 1 : Get stable grounds

Pick a language that can solve most of common challenges that you will tackle. Make yourself proficient in it. You need to minimize time spent on thinking "how I can do it in X language?". (You've got Java/C# skillset so most of your web skills should be around here).

Step 2 : Optimize

You've got another web project? That's great! You just need to pick up template with all boilerplate (like: logging, monitoring, deployment, auth etc.) from last project and fill missing features.

Step 3: Extend

Now, you can finish most of your projects in seconds. It's time to find new clients. Search for new domain - like: mobile, embedded or machine learning. This time you can decide if your existing toolset is enough for new problems or rather, adding new one will be more beneficial to you. Like: You can do a lot of ML stuff in C# but Python is the place where all important stuff happens.

PS:

IaaS vs PaaS

Here is question for you:

Do you like to do more admin stuff for low cost hosting?

Or do you like to focus on coding and spent a bit more money and let cloud do most of admin work for you?

It's a your time vs money optimization.

Personally, for small (scale) project I'am running with IaaS - but I already have knowledge how to do it. For big ones - it's better to stick with PaaS - even very skilled DevOps can't single-handedly deal with big scale.

For you I would advise using PaaS since you don't have experience with neither PaaS nor IaaS. PaaS is a lot easier to learn and you can always migrate your code to IaaS as a Step 2 :)

Good luck and have fun.