Unfortunately your prospects are very dim, at least for the near term. The demand for programmers has dropped substantially and even those with a year or two of experience and with technical degrees are having trouble finding work.
However, if you really like programming, don't give up. You can make it happen but it's going to take time and effort. If you have no responsibilities (no kids), you can make changes faster obviously.
There are several key challenges you have:
1) No degree
2) No experience
3) No contacts
First off, give yourself a 1 or 2 year time horizon. Passing the
SCJP by itself unfortunately won't open many doors, not without a CS/Math/Engineering degree. Most companies unfortunately won't even give you a chance for interview.
Java is a great development environment for learning and working, but it's not enough by itself to really learn true software development. You need more knowledge and more tools.
Here is what I would do:
Take 1 or 2 classes per semester at your local community college. The point here is to not to get an A.S. degree, but to take a few relevant courses. Good grades will be important because your transcript will serve at a form of certification, course by course.
You can usually take these courses:
Introduction to Java or C++/C programming
"Advanced" programming- a course designing data structures
Assembly language/Computer Organization
Take Logic 101, in the
philosophy department- very important
A course in Unix programming
Just these 5 courses will teach you a lot.
Make a personal webpage where you show Java programs you've written. Build up a large portfolio of small apps which demonstrate your understanding of core concepts.
Next, try to join a Java users group. Or any other similar organization which is about programming.
This is important because some type of personal contact is going to be your main and perhaps only way of entering the field, without a degree.
To be really good at programming or software development, it must be something which you genuinely live and breathe. If you become a real expert in Java such that you can teach it to other people (like at a local Java users groups), you WILL be of value to be hired professionally. The ability to explain complicated subjects to other people on the fly is the hallmark of understanding. If you can't explain something to another person, you don't understand it.
Being in a city which has an active tech scene is highly desirable. Factoring in moving if necessary.
Above all else, be honest with yourself. If you really like programming, then go for it. I emphasize this point because half the people who graduate with Bachelor's in CS (after 4-5 years of HELL) actually hate programming, and end up sucking too due to lack of motivation. Many young people are entering CS programs at universities due to the "gold rush"- which is already over. Yet many of those who graduate with money as their main motivation will not be in the field within 5 years. It's interesting that during the first "gold rush" over computers in the early-mid 1980s made the number of people who graduated with CS degree surge to 41,000 a year. By 1995, that dropped down to just 25,000 per year. Now that the second gold rush is over, we can expect CS enrollment to fall through the floor again. The lesson: do what you love first, not what gets you money. As a side note, with only this few people graduating with CS degrees each year, you can see there must be lots of people without such degrees in the field
Finally, give yourself time. Again, expect it will take a while and a lot effort to break in. Some people think that their age (insert age X) is "too late" to make changes. Don't believe this- 28 is very young still. I know people who didn't get into programming until their late 30s and are great at it.