
This morning a colleague of mine asked me for a list of questions to prepare for a .Net technical interview.
I thought it would be useful to share this list with everyone.
A) Developer
 
1) OO
- Explain principles of Object Orientation? 
- Can you use abstract classes in place of Inheritance ? What are the differences between these two concepts? 
- Explain polymorphism and write an example in code (C#). 
2) Patterns
- What are Patterns? 
- List some patterns you’ve already used. 
- Explicit one pattern by writing a small example. 
- Explain following patterns: Repository, Factory, Root Aggregate. 
3) UML
- What are the most useful UML diagrams? (list & explain at least 5) . 
4) Net & C#
- What is .Net? (Managed Code - CLR - Runtime) ? 
- Explain concepts as JIT, CLR, GAC, GC? 
- Explain series of processing steps an ASP.NET page goes through (= page lifecycle of ASP.NET) ? 
- Explain following c# keywords: Static, ReadOnly, Const? 
- What is: a Webservice,WCF, WPF, Silverlight and how do these technologies/concepts relate to each other? 
5) DB
- Write simple query that joins 2 tables via a 1-to-N relation that contains a filter and a group by clause. 
- Explain what is a Transaction. 
- What are the properties of a transaction (-> ACID) 
- Explain concepts as Primary Key & Clustered Index and how these concepts relates? 
- Is a GUID a good Clustered index, explain why? 
 
B) Architect
- List and explains the Enterprise Integration patterns, provide advantage/inconvenient for each of them? ->(Primary integration patterns: Database, WebServices, Messaging) 
- What are non functional requirements, provide some examples (e.g. Accessibility, Availability, Security…)? 
- Explain concept Authentication/Authorization how does these concept relates? 
- What is Asynchronous Messaging - what type of infra do you need to set it up? 
- Explain – what is an ESB? 
- What is SOA & list and explain SOA Tenets? 
 
C) Senior Developer / Team Lead
- What is IOC - What is the Goal - which frameworks do you know? 
- Explain what are Unit tests and Integration tests, what differentiate these two types of tests? 
- Provide a small list of programming practices that you would enforce/setup in your dev team? 
- What is Waterfall/Prince2/RUP/Agile/XP/Scrum - how does these concepts relates ? 
- What is DDD? 
 
 
 
Some other useful/funny resources: