Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Expectaions in IT industry

43 views

Published on

This is a guest lecture done at SLIIT Matara branch for the second year BSc IT students

Published in: Software
  • Be the first to comment

  • Be the first to like this

Expectaions in IT industry

  1. 1. Expectations of the IT  Industry
  2. 2. 2 About me ● Name: Crishantha Nanayakkara ● Designation: Vice President – Technology, Auxenta ● Blog: www.crishantha.com  ● LinkedIn: https://www.linkedin.com/in/crishantha/  ● Twitter: @crishantha
  3. 3. 3
  4. 4. 4 Top 10 Strategic Trends in 2018 Source: Top 10 Strategic Technology Trends for 2018, Gartner
  5. 5. 5 15 Top Paying IT Certifications Source: 15 Top Paying IT Certifications In 2018, Forbes
  6. 6. ● The Enterprise Architecture (EA) ● The Enterprise Design Patterns and Development Frameworks ● Enterprise System Evolution (Monolithic   SOA   → → Microservices) ● Cloud Native Applications (Containerization) ● Serverless Computing ● Data Intensive Applications (Big Data) ● Machine Learning / Artificial Intelligence ● Decentralized Applications (Blockchain) Agenda
  7. 7. Enterprise Architecture
  8. 8. 8 Enterprise Architecture
  9. 9. Enterprise Architecture is the complete expression of the  Enterprise. It is a description of the goals of an organization, how these goals are  realized by business processes, and how these business processes can  be better served through technology. Source: TOGAF 9.2 Phase 0 – Preliminary Phase A – Architecture Vision Phase B – Business Architecture Phase C – Information Systems Architecture Phase D – Technology Architecture Phase E – Opportunities and Solutions Phase F – Migration Planning Phase G – Implementation Governance Phase H – Architecture Change Management 
  10. 10. Enterprise Design Patterns
  11. 11. 11 Object Oriented Design
  12. 12. 12 Enterprise Design Patterns
  13. 13. 13 Why Frameworks?
  14. 14. 14 Source: Stackoverflow Annual survey 2018 Popular Programming Languages
  15. 15. 15 Source: Stackoverflow Annual survey 2018 Popular Frameworks, Libraries
  16. 16. 16 Source: TIOBE Index, 2018 Popular Programming Languages
  17. 17. 17 Popular Programming Languages
  18. 18. Enterprise System Evolution
  19. 19.           Pre­SOAPre­SOA           (Monolithic)(Monolithic)           Pre­SOAPre­SOA           (Monolithic)(Monolithic)               SOA SOA              (Monolithic)(Monolithic)               SOA SOA              (Monolithic)(Monolithic)     MicroservicesMicroservices    MicroservicesMicroservices (1990s) (2000s) (2010s) Enterprise System Evolution Cloud Enabled On Premise
  20. 20. Reference: Microservices: The resurgence of SOA principles and an alternative to the monolith (PWC) Enterprise System Evolution
  21. 21. 1.0 Pre­SOA  (Monolithic)
  22. 22. Monolithic application has single code base with multiple modules.  Modules are divided as either for business features or technical  features. It has single build system which build entire application  and/or dependency. It also has single executable or deployable binary Single code base with multiple modules On-premise or VM based cloud deployment
  23. 23. 2.0 SOA Monolithic
  24. 24. The Enterprise Enterprise Application Silos Enterprise Application Enterprise Application Enterprise Application Enterprise ApplicationEnterprise Application Enterprise Application
  25. 25. MiddlewareMiddleware Enterprise Application Enterprise Application Enterprise Application Enterprise Application Enterprise Application Enterprise Application Enterprise Application
  26. 26. 28 SOA (Service Oriented Architecture) Source: Open Source SOA
  27. 27. Enterprise Service BusEnterprise Service Bus Cloud Infrastructure 48 Ministries 60 Departments 8 Provincial Councils 271 DS Offices Application Application Services Application Services 32 Provincial Ministries 16 Provincial Departments Application Services Message BrokerBPS Service Registry An Example ­ SOA Smart Pipe
  28. 28. 31 Enterprise Security
  29. 29. 3.0 Microservices
  30. 30. Is Microservices SOA? Source: https://www.youtube.com/watch?v=wgdBVIX9ifA
  31. 31. ● Cloud Native Applications – Microservices – Containers – DevOps ● Data Intensive Applications  – Big Data – Data Lakes / Data Warehousing – Machine Learning / Deep Learning Microservices
  32. 32. 3.1 Cloud Native Applications
  33. 33. IaaS Cloud Market Share
  34. 34. ● Cloud Native Applications – Microservices – Containers – DevOps – CI/CD ● The Cloud Native Computing Foundation (CNCF) Source: https://pivotal.io/cloud-native Cloud Native Applications
  35. 35. “It is an approach that builds software applications as  microservices and runs them on a containerized and  dynamically orchestrated platform to utilize the  advantages of the cloud computing model.” Cloud Native Applications
  36. 36. 40 Source: https://github.com/cncf/landscape/blob/master/landscape/CloudNativeLandscape_v0.9.2.jpg
  37. 37. Microservices 1. Domain Driven Design (DDD) ­ Stateless 2. Single Responsibility Principle (SRP) 3. Having a separate data store 4. Published Service Contracts (Swagger /RAML) 5. Container based Deployment (independent, lightweight) 6. Lightweight Communications (REST/HTTP, Websockets) 7, Dumb Pipes, Smart Endpoints 8. Horizontal Scaling (Y­Scale)
  38. 38. MSA (Micro­Services Architecture) Reference: Getting Started with Microservices – By Arun Gupta
  39. 39. Service Mesh Source: http://philcalcado.com/2017/08/03/pattern_service_mesh.html
  40. 40. Netflix started Microservices implementation with the Cloud Migration
  41. 41. Integrating Microservices with  Legacy / Monolithic Systems
  42. 42. Containers (Docker) 1. They are fast, lightweight, consistent  2. Solves the deployment problems by deploying your application  with all dependencies into a single container
  43. 43. ● Container Orchestration will help to  – Monitor your system – Trigger the startup and shutting down the containers – Balance the load between the active application  instances – Handle authentication between instances ● Current available Orchestration Solutions: – Kubernettes, Docker Swarm, Apache Mesos, AWS ECS Container Orchestration
  44. 44. Kubernetes ● The most popular open source community  based framework at the moment ● Kubernetes extends the Docker functionalities  by having following features: – Managing Docker containers across the cluster – Co­location of Docker containers – Service Discovery – Replication Control
  45. 45. Microservices Deployment
  46. 46. Serverless Design ● Moving away from servers and infrastructure concerns and  allowing developers to primarily focus on the code is the  ultimate goal of being serverless. 
  47. 47. 3.2 Data Intensive (Big Data)  Applications
  48. 48. ● Big Data – Variety (Text, Audio, Video, etc) – Volume (Tera and Peta bytes) – Velocity (Data Frequency, Not under your control) Big Data
  49. 49. ● What lead to Big Data? – Cloud Adoption, Social Media, Mobile Usage, Sensor  Data What lead to Big Data?
  50. 50. ● What is a Big Data Application? – Data must be in Tera or Peta bytes – More than one source / form – Huge processing loads – Real time stream processing – Process and Persist in scalable and flexible data stores – APIs for query purposes – Provide advanced analytics  Big Data Applications / Solutions
  51. 51. ● What are Big Data Technologies? – Numerous companies. Numerous products – Mainly open source – Cloud focused – Mostly immature (It is a good thing!) Big Data Technologies
  52. 52. 56 Big Data Open Source Stack
  53. 53. The Big Data Evolution (The Open Source Stack) Batch Processing Stream Processing Artificial Intelligence
  54. 54. The Big Data Evolution (The AWS Cloud Stack) Batch Processing Stream Processing Artificial Intelligence
  55. 55. The Big Data Pipeline
  56. 56. The AWS Big Data Pipeline
  57. 57. 61 Data Intensive Design
  58. 58. 62 Decentralized Applications (DApps)
  59. 59. Thank YouThank You

×