Effective Debugging

Debugging is an art. It’s detective work and it’s not easy. Software Engineering, with myriad data flows and multiple people working on the same project, makes debugging complex and challenging.

Monoliths vs Microservices

This article was originally written for nurture.farm's official blog - sprout. The original article can be found here. Microservice-based architectures have evolved from monolithic architectures as the expectation from a software system increased in terms of speed of deployment, separation of concerns, and scalability. The software systems that cater to millions of requests per minute... Continue Reading →

Introduction to Circuit Breaker In Software Engineering

What is common among mighty water dam, humble electric fuse, and i-dunno-what hysterix and hysterix-go? Take a moment to think of an answer. Yes. All of them are some sort of check that stops bad things from happening by deploying some safeguarding measure whenever a threshold is crossed. What exactly is circuit breaking? While researching... Continue Reading →

The curious case of rounding

Scenario 1 Let’s assume, we have a farmer named Chirag. Chirag booked a spraying service for one acre. Our spraying rate per acre is 10000 cents and we are offering a discount of 10.66 percent. So, he gets the following bill. Spraying CostDiscountTotalFinal after Rounding off10000 cents10.66%8934 cents89 $ He pays the bill before spraying, it's prepaid.... Continue Reading →

Is your API idempotent?

You would frequently find senior engineers asking this question in your code review. But what exactly is idempotency? Idempotency is basically operations that when done once or multiple times, gives you the same result.  Have you used this two-way switch? If yes, do you think this is idempotent? (Last I heard, senior engineers were not... Continue Reading →

Timeouts are important. 

But what are timeouts? Timeouts are a set of configurations that a developer provides when one service calls another service.  Broadly, there are two types of timeouts. Connection Timeout  Say, service A is calling service B. Service B has a total of 10 connections and assumes all of them are used. Now, if service A... Continue Reading →

Introduction to Software Engineering

This course is designed for someone who has a basic to no understanding of coding. The course intends to provide flavours of little bit of everything. There are also links to leetcode problems that you should solve. Leetcode problems are selected in a way to provide you familiarity with different data structures and algorithms. Week... Continue Reading →

Create a free website or blog at WordPress.com.

Up ↑