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 →

Implement a file system in Java given n-bytes

Problem Statement Given n - bytes, implement a file system that supports following actions: Create FileUpdate FileRead FileDelete File If you want a good start point for a small low level design problem, this post on designing a ride hailing service might be a good start. Demystifying Problem Statement When the problem says that n-bytes... Continue Reading →

GoLang Journey – Composite Types

You might want to read the previous post in the series. Composite types created by combining the basic types like int, float etcetra. Arrays An array is a fixed length sequence of zero or more elements of particular typeBecause of the fixed length constraints, Arrays are rarely used in Goif "..." appears in place of... Continue Reading →

GoLang Journey – Basic Data Types

You might want to browse the previous post on this series. Integers Go provides both signed and unsigned integer typeThere are four different size of signed integer type; 8, 16, 32, 64 bits, represented by int8, int16, int32 and int64Similarly there are four different size of unsigned integer types; 8, 16, 32, 64 bits, represented... Continue Reading →

GoLang Journey – Program Structure

Names The name of go functions, variables, constants, types and packages abide by following rules: Name begins with a letter or underscoreName can have any number of additional letters, digits as well as underscoresCase in name matters; list and List are two different namesGo has 25 reserved words like if, map, package, go etceteraIf name... Continue Reading →

Create a free website or blog at

Up ↑