How to Become a Software Developer Without a CS Degree: My 10-Month Journey to an $80K Remote Job
Today I signed an offer for my dream job. Fully remote, dream company, and double the salary I was originally hoping for. Ten months ago I couldn't code. I lurked this sub constantly during my journey, so here's my honest breakdown. No fluff, just what actually moved the needle.
Quick background: I'm graduating in May with a Psychology degree (yes, psych, zero CS). Started coding on the side, fell in love, ditched my grad school plans entirely.
The Learning Part (9 months)
Started with CS50. It's brutal. It's also the best foundation you can get for free. Do it.
Then I stopped watching tutorials and built my own thing. This is my number one piece of advice: tutorial projects don't teach you to code, they teach you to copy. Instead, come up with an app YOU would actually use. List the features. Rank them from "essential" to "no idea how I'd build this." Then start at the top and figure it out as you go.
You will feel completely lost. That's the point. Real projects force you to make your own architecture decisions, debug your own weird errors, and learn how to research, which, surprise, is half of a developer's actual job. Google, Stack Overflow, docs, YouTube videos of similar builds. Every "wasted" rabbit hole teaches you something you'll use later.
Pick ONE stack and marry it. I went with MERN. Same language on the front and back, tons of resources. Language hopping feels productive. It isn't. Course, then a unique project, then repeat.
Build for other people whenever you can. Even free. Boom, now you're a freelance developer and you've learned to work with someone else's vision. Both go on the resume. Bonus: freelancing remotely also proves you can deliver without anyone looking over your shoulder, which remote employers care about a LOT.
The Job Search (1 month)
Resume: Clean and scannable beats flashy. (template here) I kept my unrelated work experience (proves I'm employable, just worded it in a techy way) and listed my 2 best projects. Pro tip: I made two versions, one for Python/JS flexible roles and one for MERN specific roles. Tailoring is free. (here)
Portfolio site with GitHub links to every project. Can't design? Steal a template. Nobody cares. For remote roles your portfolio and GitHub basically ARE your first interview, so make them count.
LinkedIn, fully completed. Set alerts filtered to remote positions and apply daily. AngelList was great for remote startup jobs too.
Volume game: This is the best part of going remote. I wasn't limited to my city, I applied to remote roles across all of North America. Anything matching my skills or under 5 YOE, minimum 5 applications a day, all tracked in a spreadsheet. Red for rejections, yellow for "let's talk." Watching the yellows stack up keeps you sane.
Interviews (all on Zoom, obviously)
- Have your story ready. "Tell me about yourself" is coming. Self taught devs have the most interesting answer in the room, so write it down and own it.
- Send a thank you email after EVERY interview. An HR person told me I was the ONLY candidate who did, and she personally flagged it to the hiring manager. Two minutes of effort.
- I did zero Leetcode. Just common JS/React/web dev questions plus reading Eloquent JavaScript to keep the language fresh.
- Nerves: treat every interview as practice. Wrong answer? You'll nail it next time. And you can't always know the answer, but you can always be the friendliest face on that Zoom call.
NEGOTIATE. Seriously.
When my first offer came in, I had final rounds at two other companies that same week, so I had leverage and I used it. At company number one I bumped my ask from $50K to $55K and they said it seemed doable. Then I emailed the other two companies about the offer on the table. My top choice company moved fast: the CEO asked to meet me early to speed up their process, and after my final tech interview their VP of engineering asked my number. They pay New York salaries, so I said $65 to 70K.
Their offer came in at $80K. Fully remote. I turned down company one and accepted on the spot.
And here's the thing about remote: the company is based in New York, but I don't live anywhere near New York. Remote work lets you earn big city money without paying big city rent. When you're picking where to apply, use that.
My goal when I started job hunting? $40K. I ended up with exactly double that. Shoot your shot. It is SO easy to undervalue yourself as a self taught dev with no CS background.
One last thing: I'm a Black woman, and it can be hard to feel like you belong in rooms where nobody looks like you. If that's you too, my DMs are open. You belong here.
TL;DR: CS50, then real projects (not tutorials), one stack, apply to remote jobs in volume and track everything, thank you emails, negotiate like you mean it. 10 months, $80K remote, no CS degree.