Services in the software architecture that provide durability and persistence could be termed as stateful services. Databases, caches, messaging platforms and object storage are all examples of stateful services. Of these, I have personally managed the Kafka messaging platform at Flipkart for company scale that acted as the backbone of all the back-office operations in the order management and delivery leg. Otherwise too, there are instances where we manage cache and database clusters powering are stateless services (APIs in general). Stateful services need extra care while being upgraded since they store and manage state and any loss of the same…


The most commonly used deployment paradigm with stateless services is the ‘Recreate’ strategy. The idea is simple, since the software housed by every single node in a horizontally scalable stateless service (powering an API or ETL/AWS Lambda/Azure Functions) is capable of serving every single call or invocation independently and idempotently (every single call with same input parameters will yield the same result) and has no user/request specific persistence to the locally attached disk, As discussed in previous part, the primary benefit this provides is we recreate a new node with the latest version of the software and destroy the existing…


Software deployment is an often neglected aspect of the overall software development process. We don’t think much about it or plan enough regarding the same when we start building a shiny new app or service. With the advent of the internet, software is all around us these days in various forms. Users of the apps and services rely on the continuous availability of their favorite social, productivity and utility platforms and applications. Software bugs and newer features, requirements and enhancements is another aspect of software that the internet and software companies need to address thus requiring to continuously upgrade the…


In the era of the Spring Boot apps, its much easier to bootstrap/scaffold a Java WebApp, but a few years earlier I created a GitHub project in both Java and Scala that brought together a plethora of Java/Scala and JavaScript technologies in a reusable fashion to help a fresh to Java/Scala developer create a WebApp/API app in no time.

The frameworks garnered my most stars, watches and forks on GitHub. In total they summed up to 377 stars, 276 forks, 97 watches.

They are still getting visitors to the date as per GitHub insights. Here’s me sharing the same to rekindle the interest. They are pretty outdated in current times when it comes to tech stack but are still relevant if new to…

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store