Have you failed a job interview?
Send us your job interview questions and get correct answers.

Learning Path for Junior .NET/C# Backend Developer

Becoming .NET/C# Back-End Developer is not easy. There are tons of materials on-line, but where to start? What is the correct sequence to learn? We have designed this Learning Path to help you grow quickly. But the Learning Path is not enough. So we are also creating resources that will help you on your learning way:

  • Tests with Questions and Answers
    Our tests will guide you through each topic step by step. If you manage to answer the questions yourself, you can proceed further. If not, you should continue studying the topic.
  • Cheatsheets Our Cheatsheets will help you to verify that you remember everything you need. Use them every day to find out what you forgot and use them while you work on something. Try to use all of the things mentioned in Cheatsheets. This way you will build solid foundations for learning more.
Visual Studio and Console Application Setup
GoalDetailsRelated Resources
  • To understand what is Visual Studio and what is Console Application and when and why to use them.
  • To be able to create new Console application.
  • To be able to run the applicaion.
  • To be able to open an existing solution with Console application.
  • To be able to change Startup project.
IDE, Solution (.sln), C# Project (.csproj), Solution Explorer, Recent Projects and Solutions, Console Window, Program entry-point, Set Startup project, F5


  • Create a new solution with one console application project in it, make the program to write 'Hello World' to the console window, run the program.
  • Open an existing solution, add a new console application project to it, make the program to write 'Hello World' to the console window, set the startup project to newly created project and run it.
  • Close the Visual Studio. Open it again and open the solution you previously created without using Recent feature.
@* *@
Basic terminology
GoalDetailsRelated Resources
  • To be able to read the .cs file from top to bottom and roughly understand what is happening where.
  • To know the basic C# keywords
Namespace, class, object, method, 'new' keyword, 'using' keyword, variable declaration and 'var' keywod, variable assignment, property, method, property assignment, property reading, method call, return value, 'return' keyword, data type, attribute,


  • Read the code and tell me what is each part doing and why it's there.

Important Questions

  • What is on the left hand side from the property name?
  • What is on the left hand side from the method name?
@* *@
Classes and Objects
GoalDetailsRelated Resources
  • To understand what is a difference between class and object.
  • To be able to create new class.
  • To be able to create an instance of an object.
  • To be able to tell what can the class consist of - to know different kinds of class members.
Class, Method, Property, Constructor, 'new' keyword, Field, Getter, Setter, 'return' keyword, 'void' keyword, parameter, Data Type


@* *@
Debugging Skills
GoalDetailsRelated Resources
  • To understand what Debugging is and why to use it.
  • To be able to Debug Console Application.
  • To be able to Debug Test Project (xUnit).
Run (F5), Step-Over (F10), Step-Into (F11), Breakpoint (F9), Quick Inspection, Watch, Stack, Debug/Trace Output


  • Debug an application and show state-by-statement how the code is executed. Comment what is happening.
@* *@
GoalDetailsRelated Resources
  • To understand basics about automation testing - why it's useful, why to do it, how to do it.
  • To understand what is Testing Framework.
  • To be able to run tests and evaluate what tests passed and what tests failed in Visual Studio.
  • To understand what is Test Runner.
  • To be able to find, open, close Test Explorer.
  • To be able to find a test in the code by its name.
  • To be able to find and interpret test execution results.
  • To be able to create a new empty test.
  • To be able to name the test properly.
  • To understand what is Assert and how to verify the expected result.
  • To understand a difference between running a test and debugging a test.
  • To be able to debug a test and go through its execution step by step.
Test Runner, Test Explorer, Tests, Test Attributes, Test Classes, Debug Test vs Run Test, Run from Menu, Run from Test Explorer, Run by Right Click, Ctrl+T, Assert - Equals, True, False, Stack Trace, Advanced: Trait, Page Object Pattern


  • Run all tests. Run selected tests
  • Debug a selected test, execute its commands step by step and comment on what is happening.
  • Evaluate a failed test.
@* *@


Oh, the operator is not available. Leave us your comments. We will answer all your questions as soon as possible.


Describe a time when you were able to improve upon the design that was originally suggested.
“What kind of tech projects do you work on in your spare time?”
I meant answer for this question.
Could you add this question?
Getting closer, posts can now be added, edited, deleted.
The new version with channels had just been released. We will soon move all chats from Slack here.