I have more than 5.5 years of engineering experience, but I have never done client work, contributed to open source, or collected freelance reviews. My portfolio currently consists of three personal GitHub projects. I'm trying to figure out the most practical way to get started, particularly with international clients.
How can I find potential clients when most of my professional connections are people I have added online rather than people I know personally? Should I build portfolio projects specifically for freelancing, and if so, what kinds of projects are most convincing? Is analyzing a company's product, identifying problems, and sending a tailored cold pitch actually worth the time?
I've also considered large freelance marketplaces, but they seem saturated and often require paid proposal credits. My initial attempts on one marketplace produced no traction, and several curated platforms haven't worked out either. Are these marketplaces worth investing in, or are there better ways to find consistent freelance work?
5 Answers
Your existing side projects can absolutely be your portfolio. Don’t present them as lists of technologies or generic demos. Turn each one into a short case study: what problem you were solving, how you approached it, what tradeoffs you made, and what outcome the project produced. If you want another example, choose a real business or nonprofit with an obvious website or workflow problem and create a focused improvement rather than another generic tutorial app.
Don’t assume a cold email has to involve a massive investigation of someone’s entire product. Pick a narrow, visible problem, explain why it matters, and suggest a small first step. You’ll still receive plenty of rejections, but you only need a few successes to create momentum. Former teammates and managers who have moved to other companies are usually better prospects than random online connections because they already have some evidence that you’re dependable.
You can also start with a small project for a friend, former coworker, nonprofit, or family business, as long as the scope and expectations are clear. The goal isn’t to work for free indefinitely; it’s to get a real outcome, testimonial, and case study. Be careful not to promise unlimited support, and use the first few projects to establish a niche and a repeatable offer rather than accepting every random task.
General freelance marketplaces are often a poor fit for an experienced engineer because they encourage buyers to compare the cheapest bids. I wouldn’t spend heavily on proposal credits before proving that a specific service converts. Look for clients through professional groups, founder and developer communities, local organizations, nonprofits, and partnerships with design, marketing, or public-relations agencies. These channels may take longer to develop, but trust and repeat work matter more than winning an anonymous bidding contest.
Freelancing is mostly sales at the beginning, not just engineering. Tell former colleagues, managers, friends, and acquaintances that you’re available for contract work, and contact small agencies that may need reliable overflow help. Agencies often care more about responsiveness, availability, and meeting deadlines than seeing an impressive public codebase. A handful of dependable agency relationships can be much more valuable than constantly chasing one-off jobs.

A practical example would be rebuilding a confusing landing page, automating a repetitive form process, or improving a slow workflow. Show the before-and-after reasoning instead of trying to build a huge product for free.