I have more than 5.5 years of engineering experience, but I have never done client work or contributed to open source. My portfolio currently consists of three personal GitHub projects. I'm trying to understand how to get started with freelancing when I have no testimonials or previous freelance history.
How can I find clients, including international clients, when most of my professional connections are people I barely know? Should I build projects specifically for a freelance portfolio, and if so, what kinds are useful? Is carefully researching companies and sending cold emails a realistic strategy? Are paid proposals on large freelance marketplaces worth trying, or are there better alternatives? I've also tried creating service listings without getting traction and haven't had success with several invite-only freelance platforms.
4 Answers
Your existing side projects can be enough for a portfolio if you present them properly. Turn each one into a short case study: explain the problem, the decisions you made, the tradeoffs, and the result. A polished clone or another generic demo is less persuasive than showing that you can understand an unclear problem and deliver a practical solution. You can also identify a real business with an obvious website or workflow problem and create a small sample improvement, without pretending it was paid client work.
Large freelance marketplaces can be difficult for an experienced engineer because the low and mid-range work is crowded and often price-driven. Paid bids may be worthwhile only after you have a very specific niche and a strong proposal process, but I wouldn’t make them the main strategy. Direct outreach to agencies, startups, nonprofits, and businesses with a clearly identifiable problem is usually a better use of time. Expect plenty of rejection, and focus on finding clients who need ongoing help rather than chasing isolated small jobs.
Freelancing is mostly sales at the beginning, not just development. Tell former coworkers, managers, friends, and acquaintances that you’re taking on contract work. Also contact small development, design, marketing, and PR agencies about helping with overflow work. Agencies often need reliable developers without publicly advertising it, and a group of 20–30 good agency relationships can be more useful than hundreds of marketplace proposals. Reliability, communication, and turnaround time may matter more to them than showing off advanced code.
That approach also avoids competing directly with the lowest bidder. Once an agency trusts you, repeat work is much easier to get than constantly finding new one-off clients.
For international clients, spend time in professional technology and founder communities where people already discuss problems they need solved. Be helpful first, answer questions, and build trust instead of immediately pitching services. Former colleagues who have moved to other companies are also valuable contacts; a personal message about your availability usually works better than a generic public post. You only need a few satisfied clients before referrals start making the process easier.

I’d avoid building random showcase apps just to fill space. A focused example that demonstrates a useful business outcome is much stronger than a long list of technologies.