You don't mention where you are. Moving to where better opportunities exist is often beneficial – not necessarily to a tech mecca, but perhaps still a city with a larger mix of tech, non-tech, and service firms.
If your career goal is software development, you can and should get relevant experience and a paycheck together. Only take an unrelated job (like the restaurants you mentioned) if that's the only way to stay fiscally/mentally healthy.
While you may be enough of a self-teacher and hustler to do a lot of remote/solo work to get by, at your career stage you really need to be working with a larger group of more-experienced people. (College-like programs are one way to achieve that, but interesting/competent/functional workplaces are, too.)
Your first, second, and third priority should be to be near and working-with people you can learn from. Research all such workplaces near you, and be willing to take any starting position someplace they're doing the kind of work you want to do. Any role can grow quickly once you're in the door.
Your age is less important than the fact you're "entry level" to the full-time workforce. Your lack of credentials can be largely offset by any prior work that shows promise, a good attitude, and acredible interest in filling any skills-gaps over time (with both on-job and off-job projects and education).
It's expected you'll learn on the job, you just want to send the signals that: (1) it won't be too long of a ramp-up before you're a net benefit to the employer; and (2) if a firm is patient with you, you're interested enough in their projects/business they'll have a chance of retaining you, when you're more-experienced.
If your career goal is software development, you can and should get relevant experience and a paycheck together. Only take an unrelated job (like the restaurants you mentioned) if that's the only way to stay fiscally/mentally healthy.
While you may be enough of a self-teacher and hustler to do a lot of remote/solo work to get by, at your career stage you really need to be working with a larger group of more-experienced people. (College-like programs are one way to achieve that, but interesting/competent/functional workplaces are, too.)
Your first, second, and third priority should be to be near and working-with people you can learn from. Research all such workplaces near you, and be willing to take any starting position someplace they're doing the kind of work you want to do. Any role can grow quickly once you're in the door.
Your age is less important than the fact you're "entry level" to the full-time workforce. Your lack of credentials can be largely offset by any prior work that shows promise, a good attitude, and acredible interest in filling any skills-gaps over time (with both on-job and off-job projects and education).
It's expected you'll learn on the job, you just want to send the signals that: (1) it won't be too long of a ramp-up before you're a net benefit to the employer; and (2) if a firm is patient with you, you're interested enough in their projects/business they'll have a chance of retaining you, when you're more-experienced.