People without CS degrees tend to lack the vocabulary necessary to communicate efficiently with their peers about CS topics in situations where they are required to work on a team. Big "O" notation, names of algorithms, breadth of algorithmic knowledge, etc..
If you are not going to be working on a team (and it's the rare company who does not believe they will become larger in the future), then a portfolio of previous work is generally acceptable.
Because companies believe they will grow, you are most suited to being a consultant, or, alternately, working for a consulting firm.
I've frequently considered creating a "vocabulary test", along the lines of those multiple choice test games passed around on Facebook; the problem with doing that, however, is people would "learn to the test"; and while it would be a form of education for them, as a result they would successfully get their foot inside the door of place where they would ultimately not be successful. This would not be a service to either them, or the places which hire them. To be effective, it would have to end up growing to the point that it might as well be a certification exam. And still, people would learn to the test, instead of having any depth of knowledge necessary to communicate with those who do.