Freelancing and remote work for developers in Iran: a practical field guide
Rates are not the lever. Public evidence, payment rails that survive Iranian residency, tight scopes, and scam avoidance are — a practical field guide to sustainable remote income.
- Home-
- Categories-
- Programming Careers-
Freelancing and remote work for developers in Iran: a practical field guide
Freelancing and remote work for developers in Iran: a practical field guide
I have hired Iranian developers, worked alongside them as a contractor, and mentored juniors in Tehran and Shiraz. This is what separates the ones who build durable international income from the ones stuck bidding for the same three-line feature.
Position on outcomes, not on hours
The biggest shift in my own career was from selling hours to selling results. A developer who says "I build dashboards, twenty-five dollars an hour" competes with the entire global supply of developers at the bottom of the market. The same developer who says "I rebuilt your analytics pipeline and reporting dropped from two days to twenty minutes" competes with almost nobody.
Pick one or two problems you can measurably improve: load time, conversion, churn, deploy frequency, infrastructure cost, pipeline latency. Write about them with numbers attached. Evidence beats a rate card every time.
Build a portfolio that works while you sleep
Three things, in order of weight.
Deployed projects people can click. A working product beats a screenshot of one. If you cannot deploy for a client, deploy for yourself and let strangers use it.
A technical blog. I have received inbound offers specifically because of posts I wrote years earlier. Write about problems you solved, including the trade-offs and the mistakes. A blog is proof of how you think.
A clean, active GitHub. Readable history, sensible issues, small focused pull requests, an honest README. Buyers do not test your skills in a call. They check whether you look like someone who would embarrass them, and public work does that screening for free.
Landing the first foreign client
Nobody discovers a brand-new freelancer, so go where the work is described, and go narrow.
Cold outreach works when it is specific: I read your pricing page, here is the one thing that looks wrong, here is what I would change, here is comparable work. Follow up twice, then stop.
Communities beat cold mail. Technical forums, maintainers who need help, indie hacker circles, and small agencies who subcontract overflow. Agencies in particular, because a reliable subcontractor gets repeat work.
Domestic platforms such as ParsiFox are fine for the first invoice, which is always the hardest.
Money: the part most advice skips
Let me be blunt. For an Iranian contractor, getting paid is harder than doing the work, and you should solve this before you sign anything.
Establish what is legally available where you live. Escrow providers, international processors, and banking relationships that accept Iranian residents are real options, but availability, fees, and compliance requirements shift. Read the current terms, and if the sums justify it, get professional advice on your tax position.
Cryptocurrency has become the default settlement path many Iranian freelancers use, precisely because it avoids banking friction. It also brings volatility, irreversible-transfer risk, counterparty risk, and regulatory ambiguity. I use it. I do not romanticize it. Convert earnings into something stable to hold, and never accept "trust me, the transfer is on its way."
Two habits have saved me money more than once: always use escrow or milestones, and never start without a written scope and a deposit.
Contracts, scope, and timezones
A short written agreement protects both sides. It needs a defined deliverable, a number of revision rounds, payment terms and currency, IP ownership and when it transfers, a kill fee, and a dispute path. One page is enough.
Scope creep is not client evil, it is undefined work. When a request falls outside the agreed deliverable, I quote it separately with its own timeline. That habit roughly doubled my effective rate without raising my price.
Iran is UTC+3:30, far more workable than people assume. You overlap comfortably with European morning hours, the Gulf, India, and South-East Asia. US East Coast is reachable in early evening Iranian time. US West Coast means midnight, which is why I stopped taking those clients years ago. Choose niches where your hours are an advantage: overnight deployments, asynchronous review, follow-the-sun work.
Avoiding scams and reading the domestic market
The scam red flags are consistent: a vague project, an implausibly generous budget, refusal of any video call, a demand to pay money upfront to "unlock the platform," or an offer to pay you to receive and forward funds. That last one is money laundering. Verify identity first, break work into small milestones, keep every instruction in writing, and never send funds to an address dictated over a voice call.
Iranian freelance work pays a fraction of international rates. It is also low-friction and produces references you can use immediately. The problem is that many domestic projects are priced by feature count with no maintenance budget behind them, which is how you support one codebase for years.
For juniors I advise taking two or three domestic projects to build a portfolio, then steering toward clients who value what you do rather than winning the cheapest bid. The learning curve is identical, the compounding is not.
What actually compounds
Rates plateau early unless you move toward higher-leverage work: architecture, performance, data, security, or part ownership of a product. Every year, either your scope gets wider or your number gets smaller.
The developers doing well did not work the most hours. They made one thing public, wrote about it honestly, and let that compound while they started the next thing.
Key takeaways
- Sell outcomes with numbers attached. An hourly rate puts you at the bottom of the global supply of developers.
- Build three proof assets in order: a deployed project people can click, a technical blog, and a clean GitHub.
- Quote anything outside the agreed deliverable separately. That habit roughly doubled my effective rate without a price rise.
- Never start without a written scope and a deposit, and solve the payment route before you sign anything.
- Write technical English well. For foreign teams documentation is part of the job, not an interruption.
FAQ
Q: What to fix first when starting to freelance from Iran? A: Position on outcomes rather than hours, then build a portfolio that works while you sleep: a deployed project, a technical blog, a clean GitHub.
Q: Is cryptocurrency a safe way to get paid? A: It has become the default settlement path many Iranian freelancers use because it avoids banking friction, and I use it without romanticizing it. It also carries volatility, counterparty risk and regulatory ambiguity, so convert earnings into something stable.
160
2200
you might also like...
The staged path from a slow WordPress site to a fast Next.js one, keeping Persian content, Persian URLs and search traffic intact.
The App Router and React Server Components are not just new APIs; they change where your code runs. Here is how they cut bundle size, simplified data fetching, and made my pages measurably faster.


