What You Should Know As a .NET Specialist

Guide to what developers of different levels should know to work with .NET — from trainee to senior.
Ivan Barchuk
Stories
June 12, 2024

Ivan Barchuk, .NET Engineering Lead and CoE Coordinator at Intellias, shares his insights on what hard and soft skills every .NET developer needs.

What is .NET and why you need it

.NET Framework was released in 2002 and is still being maintained and updated by Microsoft. This framework allows you to write in various programming languages, the most convenient of which is C#. Currently, C# is one of the five most popular programming languages. While .NET was initially limited to the Windows platform, the appearance of .NET Core made it cross-platform, gaining even more popularity.

What you can write in C#/.NET: 

  • Web applications: websites, online stores 
  • Services: e.g. ticket reservation system or a weather forecast service you can sell to other sites 
  • Mobile apps (Xamarin) 
  • PC games and VR (Unity3D) 
  • IOT

 

For a long time, C#/.NET has been the go-to choice for large companies and government institutions. This influenced the .NET development of both the language and the existing libraries. Libraries are usually heavy and complete, boasting many convenient and ready-made solutions for tasks they were created for. 

.NET is a fairly structured platform with clear usage rules. However, for young .NET engineers, it was a problem requiring them to have not only partial but complete knowledge. To start using .NET, it was needed to understand not only the language itself but also how to work with databases, the web component (layout and how HTTP/ or www works), and Cloud Tools, usually Azure.

Trainee: Hard and soft skills

Imagine what kind of teacher you, as a trainee, would like to find for yourself. Perfect, right? But in real life, you will likely get a mentor to help you with your studies. And the emphasis is on helping. They won’t read a book or write some code for you unless you ask them or a colleague. 

What you need to become a trainee:

  • Basic English: almost all documentation and technical lessons are in English
  • Use the main tools of Visual Studio Code and Visual Studio  
  • Understand mathematical algorithms 
  • Understand what a data structure is 
  • School level mathematics 
  • Abstract thinking: e.g., imagining how business processes take place and the verification stages they go through 
  • Writing a simple program using .NET development tools 
  • Desire to ask and learn. The worst question is the one that was not asked 

 

What you should pay attention to:

Junior: Hard and soft skills

Junior .NET developer is fully involved in the work process and has direct work responsibility. Usually, someone in the team continues to lead and support juniors. It is essential because various technical processes will appear in addition to work tasks, such as filling out Jira tickets and communicating with other developers.

What you need to become a junior:

  • Know the C# programming language and all basic .NET commands 
  • Confidently use control tools of GIT versions 
  • Understand SCRUM principles 
  • Know how to use Jira or other similar tools

 

The primary junior’s soft skills are communication and interaction with the team and other participants in the development process — QA, project managers, and developers from other teams. Junior has to demand clear criteria for the given tasks. Only then can they gain relevant experience and the project a business benefit. As a junior developer, you also face the fact that simply writing code is not enough. Your code’s length, complexity, and flexibility are important so your colleagues can use it and expand it in the future.

What you should pay attention to:

  • “Clean Architecture” by Robert C. Martin 
  • “CLR via C#” by Jeffrey Richter 
  • SQL databases 
  • ADO.NET/Entity Framework 
  • HTML/CSS 
  • ASP.NET Core 
  • SOLID principles 

Middle: Hard and soft skills

Middle is an independent developer who can easily understand and follow the existing project’s rules and architecture. They no longer need constant support from colleagues. The main difference between a middle developer and a junior is that a middle specialist not only understands a line of code but also the entire project in general. They see precisely what, why, and for whom the team is doing. They begin to understand and feel the purpose of the project. A specialist of this level can already be given tasks without specific technical restrictions. They will see tasks in the context of the project. 

What you need to become a middle:

  • Know how to combine the code under its specific structure 
  • Use additional development tools (SQL Server Management Studio, ReSharper) 
  • Be able to create and maintain unit tests 
  • Listen, perceive new technical ideas, and offer your own 
  • Collaborate closely with colleagues in the team and beyond (with clients, business analysts, and marketers)

 

What you should pay attention to:

Senior: Hard and soft skills

A senior .NET dev is a person who is deeply involved in the development of the entire project. Based on the needs of the business or client, such a specialist can translate the idea into the language of flowcharts first and then into the programming language. This person makes technical and organizational decisions based on their experience and the world’s acquisition of this topic. In addition, usually, the responsibility of one or more junior colleagues is on the senior’s shoulders. 

Senior .NET development demands from you to:

  • Use specific development tools 
  • Propose and advocate technical solutions for a specific task 
  • Onboard new specialists, both at the entry and at the senior levels. Hence, be able to teach and inspire. And the most and foremost — to continue developing and learning yourself 
  • Work with the most common libraries and understand their intricacies: Newtonsoft, AutoMapper, Polly, Swashbuckle, Dapper, Entity Framework, NHibernate, etc.

 

What a senior .NET engineer should pay attention to:

Principal: Infinity to explore

Principal is a developer who knows C#/.NET perfectly and has extensive experience using it. They gladly participate in the technical development of individual employees and the company. These are the people who move the C#/.NET platform forward and develop it. And get the highest .NET developer salary, of course.

Never miss a story!

Subscribe to our newsletter to receive updates.

    Thank you for signing up!

    The best vacancies, are waiting for you!

    We picked vacancies that suit your skills!

    Good news!
    Link copied
    Good news!
    You did it.
    Bad news!
    Something went wrong. Please try again.