Expect to Defend Everything that's on Your Resume
- If you don't really know how to use it, don't list it.
- If you say you master something or are advanced at something, you really better be.
Basically, expect any potential BS to be brought into the spotlight.
Expect to be Asked Beyond What's on Your Resume
Your resume describes what you already know. That's great, what the guy wants is also to know how you approach uncharted territories.
The "execs" (except maybe in small-sized companies) won't care much for your technical prowess. They'll care about:
- attitude,
- communicate,
- smarts,
- adaptability,
- ability to relate the technical to the business.
Be Humble, but Challenging
Obviously the guy in front of you might know a lot more than you do. So don't start a pissing contest (because even if you win it, well, you'll lose...). Be humble, accept defeat, and see interviews as a learning experience.

But also challenge what you're being told. For one thing, so statements of the interviewer could be tricks (but don't overthink it!), or they could be genuine errors. It's OK to point them out, as long as you can back up your assertions.
Knowing What to Expect Doesn't Mean You Can Prepare
Some of the above you can handle (cleaning up your resume and tendencious entries in it), others you can't really prepare much for it. It comes with experience. The point is for them to assess it. Bluffing your way through is not beneficial to them, and probably isn't beneficial for you either on the long run.
Just be earnest.
That being said, reading The Oatmeal's top 10 interview questions and The Oatmeal's 6 types of interviewees, while not necessarily instructive, will allow you to go to your interview half-chuckling.
About Work-Life Balance
Programmers (and others) need to burn this into their brain:
anything is fair game!!
There's no harm in asking. If you don't ask, things may not be discussed, and you'll have a harder time taking your decision. You taking the right decision matters to them just as much as it matters to you. In fact, I usually discuss salary and perks as early as possible. Maybe not the specifics, but it just makes sense to figure out things quickly. It doesn't mean you care only about money, it means it's the elephant in the room and you address it early. You're upfront about it, that's all.
If they don't know, they'll tell you they don't know and refer you to someone else. Or you can ask to talk to someone about it now (which might allow you to see if they want to show you the door or are really interested in you). Or they'll tell you it's discussed later on. Which is often the case with multi-stage interviews for bigger companies, but still always ask: what's the point of another 3 interviews if in the end you will turn down the offer because it's not appealing enough for you? Sure, that's good training and all, but don't waste your time (and theirs).
Also, the same applies to you: you are not forced to answer everything they ask. You can very well say that you are uncomfortable answering something.
Another thing I have seen recommanded a few times here (and have done myself twice) is to ask them for references from current and past employees. That's unusual, but really shouldn't be: they want yours to check you're not making stuff up (though you still could), and so do you. Doesn't guarantee that you'll get honest answer, but it's more likely to be less formal than in an interview room with your future manager or HR person. Careful though, it could be a secretly disgruntled employee who will overly trash them... that's why references, both for them and for you, are unreliable. But they can be used to weigh in.
And obviously when I say that everything is fair game, I obviously mean within the boundaries of the framework of laws that apply to your location.
(The picture is courtesy of Scott Adams and Dilbert.com).