A recruiter from the company contacted me and asked the following questions:
- What is a standard Microsoft technology stack for a database driven web application with reporting?
- What are C# generics and why they are useful?
- What are Lambda expressions and what have they replaced?
- What is LINQ used for and how does this benefit the programmer?
- What are CURSOR in T-SQL and how can they be helpful?
- ADO and also Microsoft Reporting Services are used for DB driven web applications with reporting.
- Generics are similar to templates in C++. Generics allow to defer specifications of types until class/method is declared/instantiated.
- Lambda expressions replaced anonymous methods syntax that allow to declare code inline
- LINQ is Language Integrated Query – it transforms database development model into an object oriented one so the developer who know OOP does not have to go deep into SQL.
- CURSOR allows to loop through data – row by row.
1) You have 2 tables: Student and StudentTmp
a. StudentTmp contains exactly the same fields (StudentID, Name, DateCreated, DateUpdated) as Student
b. Write a stored procedure (SQL) that copies data from StudentTmp to Student, if the data is not already there (i.e. StudentID does not exist) and updates it otherwise
2) You have Coaches that coach Students that attend a School and Managers that manage coaches.
a. Each manager can manage many coaches
b. Each Student attends exactly one schools
c. Each coach can coach many students
d. Each student can be only coached by exactly one coach each semester.
Create a DB schema that implements it.
3) Design classes to for a chess game
4) Design a database schema for a basketball game
5) All the language crap (i.e. virtual, const, public, inheritance, OOP, sort, data structures)