Currently a CS undergraduate and dipping my feet into software engineering to test the water. Passionate about ML and AI. Aspiring to be a data scientist one day!
And sure! Be ready that some people might look a bit weird when they first get to know you. Reading my birth date is still a shocker to most people and makes them a bit suspicious.
DO:
If you have side projects, polish them up and use them as references to get your first client! Just to show you know your stuff.
Make use of social media. You can pin messages allowing people to DM you on Twitter for example. And LinkedIn might be laughed at a lot, but sometimes making connections there can lead to profitable results
After a job has finished politely ask your client for a testimonial. Putting those up in relevant spots can be super important. Social proof is strong force.
Specialize. Everyone can be the full-stack developer who knows everything from PHP to Enterprise Java in cursory knowledge. Instead find a niche you like and carve yourself a name there. My special expertise lies in highly-customized Wordpress websites making use of wp-json and React. Also specialized clients will always pay more than generic ones.
Make friends with other developers and entrepreneurs. I've gotten a bunch of jobs from being the "I know a guy"-person.
Own up to your mistakes. They will happen, no one's perfect. But if you apologize to your client and fix it quickly, they'll probably have no issue with that.
Offer advice where it seems appropriate. For example if you're extending an existing application and you have a way that is provably better than what's there, tell your client about it and offer to do it for a bit of extra cash. It might be okay as-is for them, but sometimes they might just take you up on your offer.
Establish long-term relationships. Of course you can finish a project and be done with it. But as a general rule I follow up with my clients 2-3 weeks after the project and ask if everything's going well. This has led to quite a few follow-up contracts for extra features they originally didn't know they wanted.
DON'T
Do not undersell yourself. Of course if you're a beginner people will be hesitant to pay 100$/hour (heck, I don't charge that much), but you also shouldn't charge too little. I would suggest that you take how much you need to live plus a percentage of your choice (say 20%) and divide that by the hours you want to work. That should be the absolute minimum.
Do not work more than agreed to. This can happen especially in fixed-amount projects. Work as much as agreed for the budget, but don't let your client add 1000 "one more little thing". If you gave them 16h and they're keeping you from finishing work with small things they want, tell them that doing such things might incur extra costs. This also helps with managing a workload.
Talk disparagingly about your clients in public. Ideally just don't do it at all. This should be common sense, but if you do so, future clients might feel like they're just a burden to you and that you are not into it.
Confirm anything by spoken word. If you agree to something, write them an email to follow up on that. Leaving a paper trail can be incredibly important in case of dispute and it also helps clarify if you both understood the same thing. Just write them a quick email like: "Hey! As discussed in our call I will proceed on points A, B and D."
Phew. This became much longer than I anticipated. I might just turn that into a full post. I hope it's useful to you. :)
Currently a CS undergraduate and dipping my feet into software engineering to test the water. Passionate about ML and AI. Aspiring to be a data scientist one day!
Wow awesome, around the same age as me 😁
Any advice for young people that want to get into freelance? The do's and don'ts and initial tips based on your experience?
Yay for the late nineties!
And sure! Be ready that some people might look a bit weird when they first get to know you. Reading my birth date is still a shocker to most people and makes them a bit suspicious.
DO:
DON'T
Phew. This became much longer than I anticipated. I might just turn that into a full post. I hope it's useful to you. :)
It is! More like most of your answer you've written is useful haha. Thank you 😁😁😁