Java’s Mission: No More Excuses
Java isn't trying to be the flashiest language or lead every trend — it’s focused on one strategic goal: removing every valid excuse not to use it... Read Post
May 23, 2025
I'm a software developer passionate about building efficient, scalable, and reliable systems, with expertise in Java, Spring, system design, and architecture. On this blog, I share insights, tutorials, and experiences to foster continuous learning—welcome, and I hope you discover ideas and resources to support your tech journey! |
![]() |
Work Experience | Pictures |
Java isn't trying to be the flashiest language or lead every trend — it’s focused on one strategic goal: removing every valid excuse not to use it... Read Post
May 23, 2025
Virtual threads let you write code in a familiar, blocking style — without managing callbacks or chaining... Read Post
May 17, 2025
We’ll dive into reactive concurrency in Java with Project Reactor and explore how it transforms the way we handle asynchronous, concurrent tasks—especially in high-throughput systems... Read Post
May 4, 2025
Generics weren't added to Java just for nicer-looking syntax. They were introduced to solve real problems — but with very real trade-offs... Read Post
May 3, 2025
In my latest post, I walk through CompletableFuture, how it compares to JavaScript's Promise, and show a real-world example of handling file imports asynchronously... Read Post
April 26, 2025
Ever mixed up @Mock and @Spy in your unit tests? You're not alone. Here, I explain the difference with a memory trick you'll never forget... Read Post
April 12, 2025
We look at how Apache Tomcat, a popular Java HTTP server, uses thread pools internally to manage concurrent HTTP requests... Read Post
April 6, 2025
When building concurrent applications in Java, managing threads properly is crucial. Spawning raw threads by new Thread(...) works for simple cases, but it's inefficient and hard to scale... Read Post
April 1, 2025
Have you ever wondered how web servers generate log files so quickly, even though writing to files is known to be an expensive operation?... Read Post
February 22, 2025
While they may sound similar, they serve entirely different purposes... Read Post
February 16, 2025
Imagine you run a growing organization where employees need access to AWS services... Read Post
February 8, 2025
When setting up a web application with a Spring Boot backend and a React frontend, you can choose to deploy them directly or use Nginx as a reverse proxy... Read Post
January 25, 2025
How transactions, isolation levels, locking mechanisms ensures data consistency, reliability, and optimal performance in database operations... Read Post
January 19, 2025
When we think about database transactions, the focus is often on INSERT, UPDATE, or DELETE queries. But did you know that... Read Post
December 15, 2024
IntelliJ makes running applications effortless, but it often abstracts the underlying commands developers should understand... Read Post
December 6, 2024
The best developers recognize that visible subtasks are only part of the picture. There's another category... Read Post
November 30, 2024
When managing CI/CD pipelines with Atlassian Bamboo and deploying containerized workloads using AWS Elastic Container Service... Read Post
November 27, 2024
Spring’s component model is built on the principle of singletons for many of its core beans, ensuring efficiency and consistency across your application... Read Post
November 23, 2024
Collisions in a HashMap occur when multiple keys hash to the same bucket index... Read Post
November 19, 2024
In this post, we'll explore how to use Spring Security to control access both at the endpoint and method level using a sample project... Read Post
November 16, 2024