My background: I have a bachelors in math, then I taught for a few years, didn't like it, and decided to go into software development (i took a few classes in college, and continued teaching myself for the past few years, and I really enjoy it.) I have met several people who weren't that smart who were in software development and didn't have degrees in CS. So, I thought 'hey if they can do this, i surely can.' I tried to do the same - quit my job, got java certified (no problem w/ that). And after 8 months of looking for a job, I got absolutely nowhere. I enrolled in a masters degree in CS with the hopes that would increase my chances. SO that's where I am now. My question is: How can I set myself up for a job in the future. My experience has been that all employers care about is experience, which I have none, of course. I'm still in school, but how can I gain experience? I've been contacting companies and applying for internships but that isn't going anywhere. I've been trying to get part time work, but that isn't going anywhere. All I ever hear is "oh you shouldn't have any trouble finding a job in that field" but, um, I'm still broke and unemployed. Anyone out there who can give me advice? Thanks, -T
Dani AI
For : the gap here is not degree or certification, it is verifiable, production-like experience that employers can evaluate quickly. A masters will help long term, but short-term progress comes from creating and documenting end-to-end work that demonstrates design choices, testing, and delivery — not just isolated exercises.
Recommended short-term plan (next 3 months): complete two focused projects that mirror common job tasks (REST service + persistence, or a small web app with auth and business logic). Each project should show version history, automated tests, basic CI, and a deployed demo or clear run instructions. Contribute small, reviewable patches to an open-source repo or build a tiny app for a local nonprofit or campus group to get real requirements and deadlines. Highlight transferable skills from teaching (mentoring, communication, specification writing) as concrete responsibilities.
Include a tight, visible project entry in the resume and online profile with a one-line impact statement and links to code + demo. Tailor applications to match keywords in job descriptions, target smaller companies and contract roles where juniors are hired more often, and use alumni, professors, and past colleagues for referrals. Prepare short, project-based stories for interviews (what problem, approach, measurable outcome) and practice common algorithm and design questions tied to those projects.
Minimal README template to use for every project:
Project Title
One-line summary
Demo (URL or how to run)
Tech stack
Quick setup (commands)
API/examples or screenshots
Tests (how to run)
Design notes and trade-offs
What I learned As noted, visibility matters — make visibility mean quality. Showing two end-to-end projects with tests, deployment, and documented trade-offs typically converts interviews faster than more certifications alone.
My advice would be to start by creating yourself a website (if you haven't already got one) and create yourself a portfolio section for your work.
Create a CV/Reseme and sell yourself with your skills, keep it short though, around 2 pages.
Gain more experience by doing freelance work. There are plenty of websites that you can sign up to for free. This will give you more work and the ability to keep your portfolio up-to-date and full of new work, and earn some money at the same time.
Research your area. Find out what type of business' need your skills, open the yellow pages and contact some of them, you have nothing to loose.
Look at websites in your area, look at the careers/jobs pages to see if they are looking for someone like you, with your skill set.
Here's a list of a couple of Freelance websites:
I'm sure there are loads more, but that's 2 of the big ones.
I Hope this information helps you a little.
We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.