💸 How to Make Money From Coding: A Beginner-Friendly Practical Guide

Muhammad Syakirurohman
Frontend Engineer
Published on
💸 How to Make Money From Coding: A Beginner-Friendly Practical Guide

Hey there 👋

My name is Syakir, a Senior Front-end Engineer @ Sellercraft. I have been professionally coding since 2014, making money by working in full-time/remote jobs, freelance, and creating content.

In this article, i want to show you how to do it. Whether you’re a college student looking for a side hustle, a career-changer seeking new opportunities, or just someone who loves to code and wants to get paid for it, this guide is for you.

We’ll explore everything from choosing your path, and coding weapons (aka your tech stack) to building a portfolio that makes hiring managers drool. All you need is passion, persistence, and this handy guide (if I say so myself 😉).

Choose your Path to Make Money From Coding

There are multiple ways to earn money from coding. If you don’t have much experience yet, it’s best to stick to 1 path first to earn faster.

Here are some ways to make money for coding, choose one that is most convenient for you. You can always pivot later.

1. Freelancing

Freelancing is often the quickest way to start earning, but it comes with its own set of challenges.

On the plus side, you have the flexibility to choose your projects and work hours. You can also gain diverse experience quickly.

However, income can be unstable, and you’ll need to manage your taxes and benefits. Finding clients and building a reputation can be tough at first.

While it’s relatively easy to start, succeeding as a freelancer requires strong self-discipline, communication skills, and the ability to manage your time and finances effectively.

Where to find freelancing jobs:

  • Your own website / social media / dev.to account
  • Upwork

    : Great for beginners, wide variety of projects
  • Freelancer

    : Good for short-term, project-based work
  • Fiverr

    : Ideal for offering specific services
  • PeoplePerHour

    : Offers hourly and fixed-price projects
  • Toptal

    : For experienced developers, higher-paying jobs

2. Land a Full-time Job

Securing a full-time coding job offers stability, benefits, and often higher overall compensation. You’ll also have the opportunity to work on larger projects and learn from experienced colleagues.

However, it typically requires more formal education or extensive self-study, and you’ll have less flexibility in terms of work hours and project choice.

Landing your first job can be challenging, requiring a strong portfolio, interview skills, and often the ability to pass technical assessments.

Job boards to explore:

  • LinkedIn Jobs

    : Wide variety of tech jobs, good networking opportunities
  • Indeed

    : Aggregates job listings from various sources
  • Glassdoor

    : Provides job listings along with company reviews and salary information
  • Stack Overflow Jobs

    : Specifically for developer positions

3. Remote Jobs

Remote work offers the flexibility to work from anywhere, potentially for companies around the world. It can provide a great work-life balance and eliminate commute time.

While finding remote jobs is easier than ever, succeeding in a remote role requires discipline, excellent communication skills, and the ability to manage your time effectively.

You may also face challenges with time zone differences and feeling isolated from colleagues.

Remote job boards to check:

  • We Work Remotely

    : One of the largest remote job boards
  • Remote.co

    : Offers a curated list of remote jobs
  • FlexJobs

    : Features vetted remote and flexible job listings
  • Remotive

    : Tech-focused remote job board
  • JustRemote

    : Offers a wide range of remote positions
  • Remote OK

    : Job board for mostly remote tech jobs

4. Participate in Challenges / Hackathons

Participating in coding challenges and hackathons can be exciting and potentially lucrative.

The pros include the opportunity to win prize money, network with other developers, and add impressive projects to your portfolio.

On the downside, the competition can be fierce, and there’s no guaranteed payout for your time and effort.

While anyone can participate, winning requires a combination of coding skills, creativity, and often the ability to work well in a team under time pressure.

Platforms to check out:

  • Devpost

    : Hosts various coding challenges and hackathons
  • Dev.to

    : Host coding challenges / mini hackatons
  • Kaggle

    : For data science and machine learning competitions
  • HackerRank

    : Offers coding challenges and competitions
  • CodeForces

    : Hosts regular programming contests
  • TopCoder

    : Features algorithm and development competitions

5. Sell Digital Products

Creating and selling digital products like website templates, WordPress themes, plugins, or courses can provide passive income over time. Once created, these products can be sold repeatedly with minimal additional effort.

However, it requires upfront time investment, and success depends on creating products that meet market demands and effectively marketing them.

Creating high-quality digital products requires strong skills in your chosen area, as well as marketing know-how to promote your products.

Where to sell digital products:

  • Your own website / social media audiences
  • ThemeForest

    : For WordPress themes and website templates
  • CodeCanyon

    : For scripts, plugins, and code
  • Gumroad

    : Ideal for selling any type of digital product
  • Teachable

    : For creating and selling online courses
  • Creative Market

    : For design assets and themes

6. Build a SaaS Startup

Building a Software as a Service (SaaS) startup can be highly rewarding, both financially and professionally.

The pros include the potential for significant earnings if your product takes off, the satisfaction of creating something from scratch, and the opportunity to solve real-world problems.

On the downsides, it’s risky and time-consuming, requiring a significant upfront investment of time and potentially money.

You’ll also need to wear many hats, handling not just coding but also business operations, marketing, and customer support.

Platforms and resources to help:

  • AWS Startup Programs

    : Offers resources and support for cloud-based startups
  • Y Combinator

    : Provides funding and mentorship for early-stage startups
  • Product Hunt

    : Great for launching and getting initial users
  • Indie Hackers

    : Community of independent SaaS founders sharing experiences
  • BetaList

    : Platform for launching and discovering new startups

7. Technical Writing

Technical writing for coding and software development can be a lucrative career path that leverages your coding knowledge. As a technical writer, you’ll create documentation, tutorials, and guides for software products, APIs, and programming languages.

The pros include the ability to work remotely, potentially high pay rates, and the opportunity to deepen your understanding of various technologies.

While you need a solid understanding of coding concepts, the main challenge lies in effectively communicating technical information to different audiences, from beginners to experienced developers.

Where to find technical writing jobs:


Pick your stack and be good at it

Coding

Now, that you know many ways to make money from coding, it’s time to choose your stack. It’s the set of technologies you’ll specialize in.

You might be tempted to learn everything under the sun, but trust me, it’s better to be good at a few things than mediocre at many.

The red ocean stacks (Web development)

These are the popular technologies that are in high demand. They’re called “red ocean” because the water is filled with other fish (aka competition).

But that also means a lot of opportunities there. The good news is, that while the competition is tight, most developers are mediocre devs. That’s why you need to stand out by building killer portfolios. We will talk about this soon.

If you want to do freelancing, build your own SaaS, or sell digital products while also having opportunities to land on full-time/remote jobs, you might want to pick web development stacks.

  • WordPress Development: The most in-demand jobs for freelancers, based on the available jobs on the freelancer platform like Upwork, Freelancer.
  • Shopify Development: The 2nd most in-demand jobs for freelancers, also based on the available jobs on the freelancer platforms.
  • React / Next.js: High-demand jobs for both freelancing and full-time/remote jobs.
  • Laravel: The most popular stack for full-stack development in PHP
  • Vue / Nuxt.js: Alternative to React / Next.js. High demand in Asia

Other high-demand jobs

If you’re not into web development, there are also some jobs that are currently in high demand. Data Analyst, AI Engineer, and Machine learning Engineer are some tech jobs that are currently in high demand but relatively fewer competitors.

But you might not find many freelance jobs for these roles. Most of them are for full-time or remote jobs.

Where to Learn

Technically, you can learn the stack you choose freely on the internet. You can check out roadmap.sh for a guide as you learn your new skill.

Realistically, you most likely will need a mentor and a well-structured resource for easier learning. Learning new skills can be tough. So you might want to focus on what matters, rather than searching for scattered resources on the internet.

That’s why, I would recommend you to enroll in a paid course, based on your financial ability. Here are some courses you might want to enroll (*affiliate links):

Coursera courses have different prices based on the region. The Coursera Lite plan which offers video only range from $9 - $12 per month.

The Coursera Plus monthly plan ranges from $40 - $80 and the annual plan ranges from $399 - $542. You get a recognized certificate upon the course completion

You will also instructed by expert teams like Meta (Facebook) Staff and IBM team.

It’s the best course platform if you want to learn a new skill without a college degree but still recognized by recruiters for full-time or remote jobs.

Build an Outstanding portfolio

Portfolio

Your portfolio is your coding resume. It’s where you show off what you can do, not just talk about it.

You can start building your portfolio as you learn your new stack. But your own portfolio website will be the 1st portfolio.

Create your own portfolio website

A personal portfolio site is your digital business card. Here’s how to make one that pops:

  1. Choose your tech: Astro is a great choice for beginners. It’s fast, flexible, and lets you use whatever framework you’re comfortable with.

  2. Pick a template: Start with a pre-made template to save time. Astro has some collections for portfolio themes

  3. Customize it: Make it yours. Change colors, fonts, and layout to reflect your personality.

  4. Showcase your best work: Include 3-5 of your best projects. For each one, explain:

  • What the project does
  • Technologies used
  • Challenges you overcame
  • Links to live site and code (if possible)

You can skip this if you don’t have any projects yet.

  1. Push it to Github: You can share your codes to receive feedback and easy to set up for deployment.

  2. Host it: From the github repo, you can set up a deployment pipeline to Cloudflare Pages, Vercel, or Netlify. They offer free hosting for static sites and are easy to set up.

  3. Set a custom domain (Optional): Cloudflare pages, Vercel, and Netlify are support custom domains, in case you want to make your new website your-name.com

Keep building and showcasing

Now your portfolio website is set up. It’s time for you to work on the next project. The best project is the one that reflects real-world projects.

If you enroll in a course, you will probably have a lot of study cases or project assignments.

But if you learning on your own, you start with building a landing page, a simple CRUD app, a Todo list, etc. As you learn more, build projects like simple eCommerce or company profiles with CMS.

If you need inspiration, you can check out the React example projects and Vue example projects. Don’t forget to document how you build your project, and share it to Dev.to and X (Twitter).

Set a target for how many projects you can build in a month. It depends on your capacity. 2 - 3 simple projects in a month should be enough. But the more, the better.

Just make sure you always share them :smile:

Build your online presence

While you are learning and building your portfolio, you can also start building your audiences, by sharing what you learn and what you’re working on.

Writing on Dev.to

Dev.to is a community of developers sharing knowledge.

You can start with “Today I Learned” posts. Share a new concept or trick you’ve picked up. You can also post about mistakes you’ve made and how you fixed them.

Engage with others, comment on other posts, and answer questions. The more you engage, the more visibility you get.

Aim for at least 1 or 2 posts in a week. The more often you post, the faster you get more followers. FYI, every time you publish a post, your Dev.to profile will be recommended on the onboarding page.

In my experience, you will get around 200 - 300 new followers every time you post a regular article. If your post got trending, it can be more.

The more followers you get, the easier for your post to get trending. You will also gain more visibility for every project you want to showcase.

I got some clients from Dev.to just because I regularly write here, even though I never explicitly promoted my freelance service.

Just make sure you always share what you’re working on.

Build Twitter Audience

Other than Dev.to you can also be active on Twitter (X). There are tech community there where you can engage and share your projects. Follow some influencers there, and engage with them regularly.

You can also make a thread version for every post you publish on Dev.to

Time to Earn Money

Time to make money

Whether you want to do freelancing, sell products/services, or get hired, your audience will be your number one prospect.

If you want to get hired, create a professional CV mentioning all the projects you have done.

In every Dev.to post, you can also say that you’re currently looking for a job, or offering your products/services in the introduction part.

There is nothing wrong with it. Just make sure what you share in the post is high-quality content.

Repeat this strategy, and I’m sure you will make money from coding eventually.

You might need to grind at first, but it will be worth it.

Good luck!


If you’re an experienced developer and have advice to share, please don’t hesitate to share it in the comment below. It will be helpful for new developers :smile: