Unpaid work disguised as code challenges

I saw a Reddit post that made me angry.

A company sent a candidate a “take-home assignment” that was basically building a complete real estate system with admin panel, authentication, database, React frontend, TypeScript backend… all in one week.

This wasn’t a technical test. It was free work in disguise.

And this isn’t an isolated case.

A friend of mine has received three similar “assignments” in recent months. All following the same pattern: projects that would normally take weeks or months of development, requested as a “simple test” with impossible deadlines.

The numbers don’t lie

Let’s do basic math on the assignment I saw:

  • Complete real estate property system
  • React frontend with Vite + TailwindCSS + shadcn/ui
  • Backend with TypeScript, Fastify, TypeORM, PostgreSQL
  • Complete admin panel with CRUD
  • File and image uploads
  • Filter and search system
  • Dynamic theming
  • Tests for both frontend and backend

Real estimated time: 150-200 hours of development Time given: 7 days Payment: $0

If you charge $50/hour (conservative rate for a full-stack), we’re talking about $7,500-10,000 of free work for a “job opportunity.”

The repeating pattern

My friend told me about his experiences, and honestly they’re all variations of the same nightmare.

The first one was a complete e-commerce platform with shopping cart, payment processing, inventory management, and a full admin dashboard. They gave him five days. Five days for what would realistically be a three-month project for a small team.

The second assignment was even more ridiculous. An analytics dashboard with multiple API integrations, complex data visualizations, user role management, and real-time notifications. Four days for that one.

The third was a project management system that basically replicated half of what Jira does, complete with roles, permissions, notifications, and detailed reporting features. Six days.

In every single case, he did what any reasonable person would do. He sent incomplete versions with detailed explanations about why the scope was impossible given the timeframe.

The response? Complete radio silence. Not even a “thanks but no thanks” email.

The new scam: AI Companies

What really bothered me about the Reddit post were the obvious fraud signals.

The “company” behind this assignment had all the hallmarks of a complete AI-generated operation. Their LinkedIn profile looked like it was copy-pasted from a template, every single email they sent had that distinctive robotic tone that screams ChatGPT, and they claimed to be building some revolutionary “AI startup in real estate.”

Which is basically tech bro bingo at this point.

The work they were requesting matched exactly what they’d need to launch their supposed platform. This wasn’t a test to see if you could code. This was them trying to get their entire MVP built for free by rotating through desperate job seekers.

They probably aren’t even a real company. Just someone who figured out they could use AI tools to create fake corporate identities and harvest free labor from developers who are struggling to find work.

How to identify disguised free work

Immediate red flags:

Disproportionate scope If they ask for more than 8-12 hours of work, it’s suspicious. If they ask for more than 20, it’s definitely abusive.

Overly detailed specifications Technical tests evaluate skills. Real projects have detailed specs because they need specific functionality.

Impossible deadlines + “complete” work “Complete this system in 3 days” is code for “send us whatever you can do for free and we’ll finish it.”

Completely automated communication If all emails sound AI-generated and you never talk to real humans, run.

They request code ownership “Code submitted becomes company property” is literally asking you for free work with extra steps.

The reality of timeframes

That real estate system from the Reddit post requires:

  • Initial setup: 4-6 hours
  • Complete backend API: 25-35 hours
  • Frontend with all features: 30-40 hours
  • Admin panel: 15-20 hours
  • Testing and debugging: 10-15 hours
  • Documentation and deployment: 5-8 hours

Real total: 165-240 hours

What they expect in 7 days: 168 available hours, but you need to sleep, eat, and possibly work at your current job.

Realistic available hours: 20-30 hours maximum

It’s mathematically impossible to complete it well. And that’s exactly the point.

Why this scam works

Look, I get it. When you’re job hunting, especially in this market, you start second-guessing everything.

You see an assignment that would take months to build properly, and your brain starts doing these mental gymnastics. “Maybe they just want to see my approach to the problem.” “Perhaps they don’t expect it to be perfect.” “If I can just impress them with what I can deliver in the time I have…”

Legitimate companies don’t operate this way. They understand that your time is valuable, and they design their interview process accordingly.

Scam operations are counting on your desperation. They know that if they cast a wide enough net with these impossible assignments, some people will attempt them, and they’ll get free work out of the deal regardless of whether they ever hire anyone.

What to do instead

For serious companies: Do technical tests of 2-4 hours maximum. Focus on problem-solving, not delivery of complete products.

For developers:

  • If scope exceeds 8 hours, negotiate payment or reject
  • Ask to speak with current developers on the team
  • Ask specifically what they evaluate and how
  • If they can’t explain the process clearly, it’s a red flag

For the industry: Let’s normalize rejecting free work. The more people say no, the less profitable this practice becomes.

The real cost

It’s not just the wasted time. It’s normalizing that our work is worth nothing. It’s training companies to expect free labor. It’s creating a precedent where exploiting developers becomes standard practice.

Every time someone completes one of these “assignments,” they make it harder for the rest of us to be respected as professionals.

Your time has value. Your work has value. Don’t give them away.