Functional programming, a buzz word these days. Everyone is trying to learn it. A few functional programming languages are getting attraction and are getting used in the production too such as Scala, Haskell, Clojure and so on. And Even Java has already introduced a few concepts to support functional programming which are Lambdas, Functional Interfaces, Streams, etc. Now the question comes, why should a Java programmer needs to shift towards functional programming. Java has a very big community and using imperative programming from the last 2 decades. It needs a very solid reason to shift towards the functional programming paradigm. The functional programming paradigm focuses on some key concepts like immutability, higher-order functions and so on and it has a moderate learning curve, but if we can get benefit out of it, then there is no harm in learning functional. In this talk we will see, what are the benefits we get when we follow the functional programming paradigm in Java, how it makes the developer life easy. We will discuss the comparison between the imperative code vs functional code with some examples. We will discuss the transition from imperative coding to functional coding with some code examples. This talk will be good for the people who really want to switch to functional programming and want to know how to use that in Java.