Should you work for free to gain experience?
Published: 2022-02-28 23:17:36

Should you work at a dev shop for free on a temporary basis and after that period allow them to decide whether to offer an entry-level front-end role?

It seems sketch. Red flags should rise up on this type of opportunity. It could mean that it would be a toxic place if they are attempting to exploit someone's time without paying them. I have not yet heard of someone coming out of that type of situation with an offer, though I imagine someone has—not taking anything away from them for doing that.

Let me elaborate a few things I would suggest trying in this scenario. If offering free trial-period work is being discussed, then before writing a line of code, I would immediately transition the conversation to at least an acceptable hourly rate on a month-long trial.

See what they are willing to pay you hourly and what amount of hours they would allow you to work part-time 15 hours or up to full-time 40 hours. See if they pay you 10-25% lower than the average in your area for one month—at min $25-30/hr seems reasonable but do your research. If your skills are above the average beginner, then don't sell yourself short. Figure out what would be the lowest you would be willing to accept and have that in the back of mind during your conversations. Plus, hopefully, you won't be second-guessing whether they're going to fire you any minute—time boxes the relationship a little longer. 

After the month-long trial then they either extend a full-time offer at something around $30+/hour or don't. Be prepared to walk if the offer is not extended. This move will give you the assurance that you've been compensated for a month of your time and gained solid resume-building intern-level experience. If they don't have the budget to do that, then they are financially not able to hire you after a week and a half of free work, let alone a month.

If you do anything for free, then it should only be that you shadow a developer(s), but aren't actually doing work at the keyboard or installing anything in terms of a developer environment on a computer. You'd just purely be a fly on the wall with access to developer scrums, asking questions about the confusing technical bits in the codebase, learning their tech in the process of your talks, and just generally taking notes and talking shop with the developers about their tickets

I shadowed for two weeks at a local dev shop startup when I was starting as a career switcher. I was unemployed at the time, so I had the time to shadow while I was job searching. It was unpaid, and I spent up to 4 hours a day at the office just watching and asking questions and attending scrum/sprint ceremonies.

I had just left a dead-end job the week prior—gosh, I hated that job. The shadowing was a valuable change of pace, and I treasured that experience. For example, I had never experienced scrum or even knew what agile was. I also learned more about JavaScript because my mentor was telling me about mapping and working with arrays. Ultimately, It set me up for what I would be doing in my professional journey.

My mentor thought his referral meant they would hire me.

They didn’t. 

I was way too junior, I suppose and I was looking back—Had passion but was too green.

My mentor—a junior React developer at the time—was self-taught and now he works for a fortune 5 company as a senior software engineer. He's probably 4x'ed his salary and works with an amazing team.

I also shadowed the CTO and he went on to another larger established startup as CTO and now works as a software engineer manager at a large brand-name tech company. 

Another self-taught Junior developer is still there at the startup but has moved up the ranks.

My point is that you should never do actual development work for free. The exception to the rule would be your legit open-source passion project or a hack-a-thon weekend for non-profits and everyone is working on a free basis.

You should not in any scenario do dev work for a for-profit business without compensation in hopes of a job. Interns for college credit should be compensated, too. I've known plenty of engineering students over ten years ago who were co-oping and were compensated at $25 per hour.

If you are doing anything unpaid then it should be a shadowing experience—no coding or offering consultation of any sort. Use shadowing to be exposed to day-to-day dev life.