For asp.net and web development in general:
- What's the difference between session state and view state?
- What are some situations where you need or don't need them?
- Describe a postback and how you deal with them?
- How do you feel about using label or literal controls versus generating markup dynamically in the code-behind?
For .net: - Describe a try block? As in try { throw new Exception("blah"); } catch ( Exception ex ) { ; }
- What are the similarities between try and using blocks?
- Why is this important in database access?
- When is inheritance appropriate? How does this apply to web applications?
- How do you use the debugger?
- Describe "type safety?"
- What's the difference between a value type and a reference type?
- Describe garbage collection briefly. What's the Dispose() method? This one is less relevant on the web, until you start hitting the file system, event log, or building a high scale app. For an entry-level position, "I don't know" is an acceptable answer.
Most of these are pretty open ended, and what's most important is probably how the applicant's answers mesh with your company's development philosophy.
If this is going to be the only developer, you might want to ask a few more "What's 2 + 3?" type questions to make sure the person knows their stuff, but whether their approach makes sense in the different situations above can weed out the people who are clearly unqualified.
|