The intent of this presentation is to explain what is asynchronous programming, how is it relevant in building concurrent services & distributed systems. Some intuition is provided about Asynchronous programming using Scala - mostly Futures, some common misconceptions and pitfalls to avoid while programming async. Most of the instruction is using coding examples.