My attempt to understand why people perceive Java as complex

My attempt to understand why people perceive Java as complex

I work as an Architect/TechLead/SeniorDeveloper depending on client engagement. And, Java is the primary programming language that I have used most of my career. In recent years I got an opportunity to work with Go, NodeJS and .Net Core technologies too. I find Java, especially with SpringBoot, a solid platform to build enterprise grade applications. Occasionally there comes a discussion of technology selection, and I noticed some people don’t prefer/like Java.

Continue reading »
Code simplicity by Abstraction vs Verbosity

Code simplicity by Abstraction vs Verbosity

Java is and has been the primary programming language I have used throughout my career. If I want to build something quick for a prototype or if I need to pick the tech stack with a tight deadline then Java is my first choice. Especially after Java 8 it becomes more and more feature rich and powerful. On top of it with frameworks like SpringBoot, Quarkus and Micronaut building enterprise grade applications becomes a breeze.

Continue reading »
How I dealt with burn out?

How I dealt with burn out?

A month ago I was constantly feeling stressed out, tired and not getting proper sleep. To put it simply I got burned out. The interesting thing is it is not because of my official work pressure. Currently, I am working with a cool client, we are delivering the features on time and the team is friendly…I have nothing to complain about my official work. So I thought (and tweeted) it might be because of the things I do in addition to my regular job.

Continue reading »
Kubernetes - Exposing Services to outside of Cluster using Ingress

Kubernetes - Exposing Services to outside of Cluster using Ingress

In the previous article Kubernetes - Blue/Green Deployments we have learned how to release a new version of application using Blue/Green Deployments strategy. 1. Getting Started with Kubernetes 2. Kubernetes - Releasing a new version of the application using Deployment Rolling Updates 3. Kubernetes - Blue/Green Deployments 4. Kubernetes - Exposing Services to outside of Cluster using Ingress In this article, we are going to learn how to use Ingress to expose HTTP and HTTPS routes from outside the cluster to services within the cluster.

Continue reading »
Kubernetes - Blue/Green Deployments

Kubernetes - Blue/Green Deployments

In the previous article Kubernetes - Releasing a new version of the application using Deployment Rolling Updates we have learned how to release a new version of application using Deployment Rolling Updates and how to use Readiness and Liveness probes to route traffic to only fully initialized containers. 1. Getting Started with Kubernetes 2. Kubernetes - Releasing a new version of the application using Deployment Rolling Updates 3. Kubernetes - Blue/Green Deployments 4.

Continue reading »
Kubernetes - Releasing a new version of the application using Deployment Rolling Updates

Kubernetes - Releasing a new version of the application using Deployment Rolling Updates

In the previous article Getting Started with Kubernetes we have learned how to deploy a SpringBoot application on Kubernetes(Minikube) using Deployment and Service primitives. We also looked at how to access our application using NodePort on Minikube IP address. 1. Getting Started with Kubernetes 2. Kubernetes - Releasing a new version of the application using Deployment Rolling Updates 3. Kubernetes - Blue/Green Deployments 4. Kubernetes - Exposing Services to outside of Cluster using Ingress In this article, we are going to learn:

Continue reading »
Getting Started with Kubernetes

Getting Started with Kubernetes

Docker and Kubernetes has revolutionized how we build and run the applications. In recent years containerization becomes new normal, and many organizations start using Kubernetes as Container Orchestration Platform. I was curious about Kubernetes and played with it a bit 3 years ago but I thought let’s wait and see is it going to be a real thing or just another over hyped technology. Now I see Kubernetes everywhere, especially where microservice architecture is used for their systems.

Continue reading »
Get Super Productive with Intellij File Templates

Get Super Productive with Intellij File Templates

Intellij IDEA is the most popular IDE for Java development and there are tons of features to explore and become more productive. We all know about Live Templates which can be used to expand a small expression to common code snippets. Recently I came to know about File Templates, and I realized I can put it to good use and be more productive. First let us discuss the problem I was trying to solve with File Templates.

Continue reading »
Few things I learned in the hard way in 15 years of my career

Few things I learned in the hard way in 15 years of my career

I started my career as a Java developer in 2006, and it is almost 15 years that I have been continuing as a software developer. Along the way, I have experienced some amazing things, and a lot of shitty things as well. As I am not a super smart person by birth, I ended up learning many things in the hard way. In this article, I would like to share some of my learnings.

Continue reading »
SpringBoot application deployment and monitoring series - Part 2 - Build Server Setup using Jenkins

SpringBoot application deployment and monitoring series - Part 2 - Build Server Setup using Jenkins

This is the 2nd part of our journey to learn SpringBoot application deployment and monitoring series. We are going to setup Jenkins build server and configure Pipelines for vote-service, bookmark-service and bookmarks-ui microservices. In this article we are going to learn: Implementing build pipeline using Jenkins Pipeline as Code Using Jenkins Shared Libraries Setting up pipelines using Job DSL You can find the GitHub repositories below: devops-setup https://github.com/sivaprasadreddy/devops-setup bookmark-service https://github.com/sivaprasadreddy/bookmark-service vote-service https://github.

Continue reading »