Programming, REST, Software engineering

SOAP, REST, gRPC and GraphQL – various ways of API design

API stands for Application Programming Interface which defines the way how it is possible to communicate with the system. In this article, I put focus on web technologies and their implementation in .NET. Across many years, new design of APIs appeared in reply to new challenges, especially performance and implementation’s efficiency. Very first modern approach …

AWS, Certificate, Cloud

AWS Solutions Architect Associate exam preparation

As I started work with AWS and I will spend with it some more time, I decided to take the exam AWS Solutions Architect Associate. A prerequisite for this exam is 1 year of experience with AWS. Full list of requirements can be found here. An exam itself is composed of 65 questions with single …

Social

Alternative hobbies for software developers

Typically software developers are coding after the job. If you’re not a software developer, you may be surprised, but we’re really doing this! But… we also do a bunch of other fancy things including home automation, travels, photography, riding bikes and motorcycles, shooting etc. The most crazy hobbies of my mates who works in IT: …

Programming, Quality, Tests, Unit tests

Unit tests: code coverage – line coverage vs branch coverage

Quite often we can meet with a statement that code coverage should be x% where usually x = 80. But what is exact meaning? Is it line coverage or branch coverage or something else? Typicaly developers are using line coverage as most of software supports it however much more meaningful is branch coverage. Let’s take …

Soft skills

Software developer daily work and values

What is the most important in daily work of software engineer? Resolving on time or with proper quality? Resolving client problem fast over good engineering? Obedience to the boss? What’s about own wellbeing? In my opinion the basic duty of software engineering and main purpose of my job is to solve the problems of customers. …

.NET, .NET Core, ASP.NET, C#, CSharp, MVC, Programming, REST, WebAPI

HTTP Verbs in API design

HTTP Verbs are basic methods in web world. They are evolving between HTTP protocol versions but also new RFCs are published. Also they were extensions like WebDAV (with 7 methods). A full registry is maintained by IANA (here) however most of people will reply with 9 basic verbs (interesting discussion about this on stackoverflow). Why …

.NET, C#, CSharp

gRPC in .NET Core

As WCF is going to end of life with .NET 5.0 (more here), gRPC is going to replace it (as recommended alternative). So what’s that? It is bi-directional, HTTP/2 based protocol. It can be used to communicate server-server o client-server including scenarios like load-balancing, health checks, microservices communication. gRPC stands for Google RPC (Remote Procedure …

Azure, Certificate, Cloud

Azure Exams – AZ-303/AZ-304

After successufully passing AZ-204 few months ago, I’ve decided to try AZ-400. I started from Microsoft’s e-learnings which are pretty nice. However when I started with Whizlabs’es exams – I said “no way”. It’s too ops comparing to my job. Therefore, looking around about other valuable exams, I picked AZ-303/AZ-304 as the way to get …