What to know as a .NET back-end developer?

Recently I was asked if I knew what it takes to become a good back-end developer. This article is my attempt to answer this question. The information in this article is based om my personal experience as being a back-end developer over several years.

Although there are a lot of resources freely available on the Net I am a huge fan of Pluralsight.  Next to some freely available articles I will also refer to some Pluralsight movies regarding the specific topic. I highly recommend to try it out.

Please feel free to leave a comment and give me your opinion about the topic or this article.

General programming skills

A good knowledge of programming skills is the most important aspect for every software developer. Although there are some subtle differences between being a front-end or back-end developer, I think it is still good to be aware of the common design patterns and best practices like SOLID. Some useful articles are:

On Pluralsight:

Besides these articles the book “Clean Code: A Handbook of Agile Software Craftsmanship” by Robert C. Martin is a very good (I would say a must) read with a lot of useful tips and tricks.

Database techniques

As a back-end developer you often (if not always) have to deal with some sort of database. In my experience, it is very valuable to know about good database design (have a good practical understanding of the first three normal forms) and have a good understanding of SQL.

As a .NET developer, I would meanly focus upon SQL Server and T-SQL (the Microsoft dialect of SQL). Although definitely also keep an eye on NoSQL database variants like MongoDB, CouchBase or DocumentDB.

Another important aspect when working with databases are the Object-Relation Mapping (ORM) frameworks. These frameworks often make developing with databases a lot easier, helps in keeping a good architecture and saves the developer from writing a lot of SQL code. Because of this, these frameworks are often used in enterprise solutions. Two popular .NET frameworks are Entity Framework (by Microsoft) and NHibernate (an open-source port of the JAVA Hibernate project).

Here are some useful resources:

On Pluralsight:

Knowledge about Web Services

Web services are a very big aspect of the modern day back-end developer. Therefore it is very important to know how to use SOAP (Simple Object Access Protocol) and REST (REpresentational State Transfer) to build web services.

Especially in the enterprise world OData (Open Data protocol) and RDF (Resource Description Framework) are important concepts since they standardise the way web services are build and consumed.

Web services can be build with almost any programming language out there. In the .NET community a very popular (and recommended) way to create web services, is to use the ASP.NET Web API framework (or ASP.NET Core MVC on .NET Core).

Similar to the ORM frameworks mentioned in the previous chapter, there are also frameworks available to simplify the development of web services. One of the most popular is Swagger. Having a good knowledge about Swagger will boost your web service development skills.

Some of my favourite articles about Web services are:

On Pluralsight:

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.