I recently talked to a company that has an open position which requires a lot of different technologies that I would like to use in my day job. The problem I am facing is that the company requests that the applicant have "at least a two year degree". While I have a four year degree in the required field, I feel as though accepting a job with lower requirements is a bad choice when I could find a job where the company is requiring a four year degree. If the company is only requiring a two year degree they are likely to have a lower budget for paying the applicant should they be offering him/her a position. Is it okay in this situation to ask the hiring manager about compensation before potentially wasting everyone's time on an interview?
If you are applying for a job in which a salary range is not listed, and you cannot reasonably determine what you think the salary range might be for that job, then it is completely reasonable to send a message to the HR rep or other contact person to politely inquire if they have a range and what it might be. Just like that, short and simple.
However, it's also completely reasonable that they wouldn't tell you, and that could be for several reasons: they might have a range that is so broad as to be meaningless, they might be hiring for multiple positions and don't want to delineate all of that, they just might not want to tell you so as to have upper hand in negotiations, or any other number of reasons. Their answer (or lack thereof) should be one other factor in your application decision.
I've found, though, both in my own job searching process as well as hiring process, that it's typically not more than the first conversation until you know for sure if something is in your range (or their range) or not. To that end, I'd think about whether "wasting" half an hour or an hour of your time or theirs is really meaningful; you don't know (and they don't know) if your candidacy is going to be so much better than anyone else's, such that they would bend their range just for you.
For example, I recently had a position open and I did not list a salary range. Now, I have a salary range in mind, and if someone went through the standard sort of determination of what salary to ask for based on everything in the position (it was for a mid-level developer, but a junior developer would be ok too) they'd have come to a conclusion that was pretty accurate. I didn't ask for salary requirements in the cover letter. I picked the short list of people to call (phone screen 6-8 people before a longer interview session for 3-4 people), and my next to last question was "What is your target salary range." People can answer this question. One guy answered with a ridiculous range for his experience level, but that wasn't even what disqualified him . Others replied with something in the range I already had in mind.
No one actually asked me up front. If they did, I would have told them, and only one person's time would have been "wasted" (well, two, if you count me, but I don't, because hiring managers are going to have duds on their short list for all sorts of reasons). But I would also have told them "this is the range, but I have flexibility for the right candidate" -- which is absolutely true. Oh, the other thing about this position, which is germane to your backstory, I think I said "Bachelor's degree in any field" as a minimum, but would have looked at people with skills and Associate's degrees, or skills and no degree, if they had been a working professional for some time.
The moral of the story is that there are a lot of reasons why salary range isn't stated, and it's totally fine to ask, although you might not get a answer that is useful to you and ultimately you have to decide if the potential job is worth a half hour or hour of your time. As a hiring manager, what I consider time-wasters are people with 15 years experience applying for junior positions, not people with 4 year degrees applying when I set the minimum at 2 year degrees.
Don't confuse minimum requirements with desired qualifications.
It's completely rational to make the cut-off point less restrictive so that you have a larger pool of candidates to chose from if you have a lot of time and energy to spend on it.
The company will still want to hire the smartest/most qualified candidate, and it might be you!
Also, it may be the case that the talent pool for a given technology/skillset is dried up in your area, and the company in question is at a point where it is even willing to hire less qualified people and train them. This doesn't mean that the position is inferior, and if you are really qualified for it, they will be all the more happy to have you onboard.
In my experience the requirements of a job are a weak indicator of salary or quality of the job. They correlate a little bit. At times you have a giant list of required knowledge and the job is mediocre, and other times you have "Looking to hire an XYZ developer. Needs to know XYZ.' that is interesting and pays a lot.
I would not suggest using the rigidity of requirements as a filter when looking for jobs, unless you are really so highly in demand that the initial phone call to inquire more about the position is not worthwhile.
Is it okay in this situation to ask the hiring manager about compensation before potentially wasting everyone's time on an interview?
The answer: Yes.
Short and simple. I did interviews for a bunch of years, and there is nothing more wasteful than going through all the motions of multiple interviews to find out a candidate was way out of a price range. Save the time and get the initially salary range up front.
All these people that believe talking about salary is so taboo (not on this forum necessarily but in general), are exercising hypocrisy. Why do most all of us work? To get paid, and this is an ever important part of the interview questions. Don't waste time with niceties and dance around the topic to end up wasting everyone's time. It is completely fine and OK to discuss salary; it's part of the job.