UST | Senior .NET Developer | Remote | Jan 14, 2025 [Reject]
Status:
Experienced professional with 3.8 years of backend development experience, previously worked with .NET, Golang, and Java. Currently exploring new opportunities after resigning from my current organisation.
Position:
Senior .NET Developer
Location:
Remote
Date:
January 14, 2025
Interview Process and Format
Round 1: Technical Phone Screen (1 Hour)
-
Behavioral Questions:
- The interviewer started by asking about my professional background, projects, and responsibilities in previous roles.
- Questions on my reasons for transitioning and expectations for the new role were also discussed.
-
Technical Questions:
-
OOP Concepts:
I was given a program to predict its output, which tested understanding of inheritance and polymorphism.using System; namespace OOPTest { class Parent { public virtual void Display() { Console.WriteLine("Parent class method."); } } class Child : Parent { public override void Display() { Console.WriteLine("Child class method."); } } class Program { static void Main(string[] args) { Parent obj1 = new Parent(); Parent obj2 = new Child(); Child obj3 = new Child(); obj1.Display(); obj2.Display(); obj3.Display(); } } }My Response: I correctly explained the output:
Parent class method. Child class method. Child class method. -
Microservices Deployment in .NET Core:
Microservices in .NET Core are containerized using Docker, deployed to cloud platforms (e.g., AWS, Azure, Kubernetes), and orchestrated using CI/CD pipelines for scalability and maintenance. -
SOLID Design Principles:
I explained the five principles of object-oriented design:- Single Responsibility Principle
- Open/Closed Principle
- Liskov Substitution Principle
- Interface Segregation Principle
- Dependency Inversion Principle
-
Extension Methods in C#:
Extension methods allow adding new methods to existing types without modifying them. Thethiskeyword is used in the first parameter to define them. -
Abstract vs. Virtual Methods:
Abstract methods have no implementation and must be overridden in derived classes, while virtual methods can have an implementation but can also be overridden. -
Middlewares in .NET Core:
Middlewares are components in the HTTP request pipeline that process requests and responses (e.g., authentication, logging). -
Difference Between
app.Useandapp.Run:
app.Useallows chaining multiple middlewares, whileapp.Rundefines a terminal middleware and ends the pipeline. -
Conditional Middleware Execution:
Middleware can be executed conditionally usingapp.UseWhen. -
Entity Framework Questions:
- First vs. FirstOrDefault:
Firstthrows an exception if no element is found, whileFirstOrDefaultreturnsnullor the default value. - INNER JOIN vs. OUTER JOIN:
INNER JOINreturns only matching rows, whileOUTER JOINincludes unmatched rows withNULLvalues. - LEFT JOIN vs. OUTER JOIN:
LEFT JOINis a type ofOUTER JOINthat returns all rows from the left table and matching rows from the right, withNULLfor non-matching rows.
- First vs. FirstOrDefault:
-
Dependency Injection in .NET Core:
Dependency Injection is built-in, with services registered asTransient,Scoped, orSingletonand injected via constructors.
-
-
Feedback:
The interviewer mentioned that while I demonstrated strong fundamentals and practical knowledge, I needed to deepen my understanding of advanced design patterns and microservices architecture to meet senior-level expectations.
Result:
Rejected after the first round.
My Thoughts:
The interview was engaging and thorough, focusing on both theoretical and practical aspects. Although the rejection was disappointing, the feedback was constructive and highlighted areas for improvement, particularly around design patterns and scalability practices for microservices.


