If you're referring to starting a consulting business on the side, there are a few things to consider.
You need to build expertise in a specific area. It could be in a tech-stack or a specific niche like building websites for dentists or mobile apps for schools, or being a Shopify expert, etc.
There is a lot of work out there and you need to work on strategizing how to find it. Before you start side-gigs, take some time to focus on building your technical and soft-skills. Running a consulting business is quite different than a full-time job. You will also need to focus on building a portfolio and drive traffic to it organically.
You will make mistakes in your first few gigs. That's okay. You want to make sure that you learn from those mistakes and that you do the right thing for your client and your business. However, keep in mind that you also need to strike a balance there. My first client didn't pay me and they still owe me $3,000 (and now they're a pretty big well-funded startup)! Then, I was quite lenient with my second client and ended up doing a lot of extra work due to the changing requirements and their constant request for a low-budget implementation which meant I had to cut corners. Initially, I didn't think it was a big deal as they were still paying me 28k for the project in three phases. However, I ended up doing almost three times the amount of work than what I anticipated and they kept taking advantage of that.
That brings me to billing hourly vs. project based. There's no clear formula here, but you need to evaluate on a project basis. Usually, I charge hourly for up to a few hours a day. Then, I have a daily rate that's a bit lower and I scale that to a weekly and monthly rate without additional discounts. In many cases I make exceptions. For instance, when I'm teaching someone I will reduce my rate so I can help them.
There's a lot to manage when you are running a consulting business. You have to constantly look for work. You have to keep up-to-date with technology. You have to do the work and provide value to your clients. You need to follow up with them as needed. And most importantly, you need to bill them and often chase them down when they don't pay. The best way to deal with this is to sign some agreements ahead of time and get 20-25% upfront payment and use a CRM-like software to manage this.
Remember that your clients are paying you to deliver immediate value. Depending on your area of expertise, you could bill accordingly. I started billing clients at $60/hr years ago. Often clients are not respectful of your time when you don't bill them enough. It is sort of a reverse psychology. The most problematic clients have been those who have requested $60/hr or lower rates. Over the years, I have continued to increase my rate and I try to stick to a specific range. However, I've also charged upwards of $500/hr in exceptional circumstances.
Overall, you need to focus on building a process for yourself. You need to rely on tools/services to run your business. Services like a scheduling platform, invoicing software, time-tracking, email, etc. These things save a lot of time. I spend ~$250 a month on tools.
At the end of the day, you have to start somewhere. You can start out by building your resume/portfolio by doing ad-hoc work. Think of everything as a learning experience and a stepping stone towards something bigger. Think about the long-term and always keep looking for something better, otherwise, you get complacent. There's nothing wrong with being satisfied with a specific point in life, but it can take a while to get there.
The best thing about this is that you are working for yourself and you are responsible for all your decisions. Another thing to keep in mind is that with independent consulting, you may NOT have consistent work so you need to account for all that when you bill clients. You also have to purchase your own insurance if you're in the US and all of that adds up quickly. Don't forget about taxes and keeping money aside for paying that.
In the short-term, you can start building your personal brand (or business if you prefer that). Regardless, you should form an LLC. Then, start writing articles, teach people, create a youtube channel, go to local meetups, give local tech-talks, etc. Do whatever you can to get noticed. Get involved in open-source or building projects for local communities/groups. This will lead to more work. It takes time and you need to plan for the long haul. It is a competitive space, but if you're really good at what you do, you should be able to transition into doing this full-time.
Thanks so much for the in-depth response! I'll have to read over that a few times and take notes ;) I appreciate it!
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.