Skip to main content

Face to Face Interview for 5+ years experienced .Net Developers

Interviewer: Hi Loganathan, Good morning. How are you?

Me: Great, How are you?

Interviewer: I'm good. Can brief about yourself?

Me: Well, I started my career with .Net framework 2.0 then worked on 3.5 and 4.0 frameworks as well. So, I can work on any frameworks. I've no chance to develop a desktop application. From the begining I'm working as a pure Web developer. Initially started with ASP.Net web applications development and moved to Silverlight applications. I've well experience in C#, SQL Server 2005/2008 and WCF. I used Microsoft Enterprise Library Application blocks and LINQ in my applications. I worked in both Waterfall model and Agile model environments. Currently working as a Senior Developer. My roles and responsibilities are developing controls in Silverlight, writing WCF methods and consuming them in our applications, writing new stored procedures or modifying, doing unit testing and code review.

Interviewer: Great, Can you explain about your current project?

Me: (I explained my projects and my activities)

Interviewer: So, you are working on both ASP.Net and Silverlight. Isn't it?

Me: Yes, of course.

Interviewer: OK fine, We'll start with ASP.Net. When'll the Application_End event fire?

Me: Hmmm, It'll fire when we change the web.config or the bin directory. bin directory in the sense making changes in dlls.

Interviewer: What are the differences between user control and custom control?

Me: User controls in ASP.Net have .ascx entension and they are application specific. We can't create dlls for user controls but in case of custom controls we can create dlls and we can use the custom controls in different applications by installing the custom controls in GAC.

Interviewer: What do you mean by GAC?

Me: GAC is nothing but the directory where we are installing our global .Net libraries. You can see the directory named GAC under Windows directory in earlier versions of Windows machines but in Windows 7 machines the directory location has been changed somewhere like this
C:\Windows\Microsoft.NET\assembly\GAC_MSIL
C:\Windows\Microsoft.NET\assembly\GAC_32
The dlls installing by us will be stored under GAC_MSIL directory.

Interviewer: What are the new features in ASP.Net 4.0?

Me: Yeah, I know some of the new features like Setting meta tags, Controling Viewstate, Compressing Session data, Permanently redirecting pages and Output cache extensibility.

Interviewer: Did you use any of the new features in your project?

Me: No

Interviewer: What are HttpHandlers and HttpModules?

Me: HttpHandlers are extension based processors and HttpModules are event based processors.    

Interviewer: Suppose you need to save a data table from asp.net project to Database table. In 2008, How'll you do this?    

Me: In SQL Server 2008 we've table data type and Merge statements. This'll help us to achieve this scenario.    

Interviewer: What are the new features of SQL Server 2008 R2 used by you in your projects?    

Me: We used date, time and table types. Specifically merge statements. Some SSRS features.    

Interviewer: What are the points you should follow when you creating new database table?    

Me: Constraints, Relational tables, Column types and length of the types. Mainly normalized structure.    

Interviewer: How will you use the new Session state management feature? Can you write the coding?    

Me: Making some changes in web.config file we can.    

Interviewer: Do you have experience in LINQ?    

Me: Yes, I've.    

Interviewer: What’s IEnumerable?    

Me: Exposes the enumerator, which supports a simple iteration over a non-generic collection. IEnumerable must be implemented to support the foreach semantics.    

Interviewer: IEnumerable interface implicitly implemented in List or Collection?    

Me: List    

Interviewer:  You’ve two classes A and B. A is parent and B is derived from A. Then, which are wrong in the following combinations.
A obj=new A();
A obj=new B();
B obj=new A();
B obj=new B();


Me: B obj=new A() is wrong.

Interviewer: If A is abstract class then what’ll happen?

Me: A obj=new A() and B obj=new A() are wrong.

Interviewer: You are creating a user control (.ascx file) in one of your web application. Can you access this user control in another web application? In which way you achieve this?

Me: No, We can't access it from another web application.

Interviewer: Why do you use WCF instead of Web services?


Me: WCF is very much flexible compare to Web services. We can use different bindings. WCF supporting 20 binding types.

Interviewer:  Are you using Enterprise Library in your projects? What's the purpose?

Me: I was using these things in my previous projects. Not now. They are simplifying our data access module or security module or exception handling module funtionalities.

Interviewer: What are the differences between ObservableCollection and List?

Me: Observable collections are implicitly implementing the INotifyCollectionChanged interface but in case of List we should explicitly implement.

Interviewer: What's use of INotifyPropertyChanged?

Me: It's an interface to implement in entities to get whether the properties are getting changed or not.

Interviewer:  What are the difference between abstract class and interface? When'll you prepare abstract class? When'll you prepare interface? Why?

Me: (Explained the differences and features of both the things. I took 5 mins to explain the things regarding abstract and interface)

Interviewer: OK OK, enough. I think I'm done. Do you want to know anything?

Me: For which technology are you looking candidate, ASP.Net or Silverlight?

Interviewer: We are looking for both. Anything else?

Me: When should I join here?

Interviewer: We'll intimate you soon. Nice talking to you. Thanks.

Me: Thanks, Bye.

Comments

Post a Comment

Popular posts from this blog

What's Virtual DOM?

There’s no big difference between the regular DOM and the virtual DOM. It’s better to think of the virtual DOM as React’s local and simplified copy of the HTML DOM. It allows React to do its computations within this abstract world and skip the real DOM operations, often slow and browser-specific. Real DOM operations are really really expensive. The Virtual DOM is an abstraction of the HTML DOM. It is lightweight and detached from the browser-specific implementation details.  One thing you should remember that the DOM itself was already an abstraction. So, Virtual DOM is an abstraction of an abstraction. :)

ASP.NET Dynamic Compilation

In ASP.NET Web Applications, When we request a page it must parse and compile the code of Web Application into one or more assemblies. When the code is compiled, it's translated into a language independent and CPU independent code, that's MSIL code. When we create an ASP.NET page, actually creating the source code for a .NET class. We are creating a new instance of the System.Web.UI.Page class.The entire contents of an ASP.NET page, including all script and HTML content, are compiled into a .NET class. When request an ASP.NET page, ASP.NET Framework checks for a .NET class that corresponds to that page. If a corresponding class does not exist, the Framework automatically compiles the page into a new class and stores the compiled class (the assembly) in the Temporary ASP.NET Files folder. The Temporary ASP.NET files folder located at : \WINDOWS\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files The next time anyone requests the same page in the future, the page is not co...