Development of large scale, integrated, robust and stable systems. Rich user friendly interface, Data visualization, Human Computer interaction, Achieving testability and designing for scalability from upfront applying best practices for architecting application to make it loosely coupled and maintainable. Application lifecycle management, software project management, IT risk management, analyzing, reengineering and optimization of business processes, data mining, data management. Future applications of cloud and Cognitive Computing.