EVOLUTION OF A SOFTWARE AS A SERVICE ARCHITECTURE EDWARD STASHLUK CTO

Size: px
Start display at page:

Download "EVOLUTION OF A SOFTWARE AS A SERVICE ARCHITECTURE EDWARD STASHLUK CTO"

Transcription

1 EVOLUTION OF A SOFTWARE AS A SERVICE ARCHITECTURE EDWARD STASHLUK CTO May 17 20,

2 AGENDA: CONTEXT ARCHITECTURE EVOLUTION BIG DATA/ANALYTICS SECURITY SCALABILITY/PERFORMANCE PROCESS

3 Newgistics End to End Solutions 3

4 Growth 1999 Incorporated and began building our technology infrastructure 2001 Newgistics SmartLabel born, and relationship with USPS established 2002 Launched consumer parcel returns solution nationally 2003 Worked with USPS to develop Parcel Returns program 2007 Acquired Logistics Management, Inc., which became Newgistics Freight Services Acquired Cornerstone Shipping Services & launched delivery solution Named to Inc. Magazine s 5000 Won corporate Business Achievement Award from USPS list of fastest- growing private Opened first Smart Center in Fisher, IN U.S companies 2012 Acquired AtLast Fulfillment, Inc Acquired Tacit Knowledge, Introduced End- to- End E- Commerce solution Announced E- Commerce solution powered by hybris; Formed strategic partnership with Manhattan Associates 2015 Tacit named hybris 2014 Partner of the Year for EMEA 4

5 Over 500+ Global Customers 5

6 AGENDA: CONTEXT ARCHITECTURE EVOLUTION BIG DATA/ANALYTICS SECURITY SCALABILITY/PERFORMANCE PROCESS

7 Architecture Evolution 7

8 Why Not Monolithic? Monolithic codebases may start out modular, but in-process boundaries break down. Code becomes intertwined and difficult to understand and risky to change. Deployments to the monolith are higher risk and impactful to users. 8

9 Software Fortresses An enterprise architecture consisting of a series of self- contained, mutually suspicious, marginally cooperating software fortresses interacting with each other through carefully crafted and meticulously managed treaty relationships. 9

10 Microservices Software architectural style in which complex applications are composed of small, independent processes communicating with each using language agnostic APIs. These services are small, highly decoupled and focus on doing a small task. This facilitates a modular approach to system building 10

11 Where Did the Idea Come From Microservice architecture borrows from established design principals and applies them to a modern service oriented application Modular design David L. Parnas 1972 Single Responsibility Principal Robert C Martin 2002 Domain Driven Design (DDD) Eric Evans

12 Some Services Services Return Merchandise Authorization (RMA) Warranty/Recall Custom Parcel Business Rules Undeliverable/Refused Custom Reports Client Dashboard Returns Analytics Advanced Exchange Store Returns Branded Multi-CarrierTracking Multi-brand Support Label/Tracking Web Services Pickup Web Services SkuSurfer Specialized Replenishment Attribute Level Encryption Notifications Advanced Billing Logic Hazardous Material Recommendation Engine Customers 12

13 Microservice Advantages SPEED TIME TO MARKET Allows each domain context to choose the best tools for the job Make change less expensive More frequent releases Less downtime and improved resilience through isolation of failure Scaling of individual services REDUCE $$$ CHANGE 13

14 Technology Funnel Splunk Mahout Chef Git Team City Scala Percona Ant Docker Ansible Hive Flink Cassandra Cucumber FEED THE MACHINE! Inventory C#.Net SQL Server Oracle jquery Jira Selenium Python Linux Mulesoft Cognos HornetQ 14

15 Microservice Drawbacks You can create dependency hell if integration is not well managed Cross service distributed transactions Highly decentralized data Introduces new challenges for deployment and management tooling required. 15

16 DevOps 16

17 Evolution of Environments Presentation Presentation Business Logic Data Presentation Business Logic Data OS Business Logic Data OS OS Discrete Servers VMs Containers 17

18 AGENDA: CONTEXT ARCHITECTURE EVOLUTION BIG DATA/ANALYTICS SECURITY SCALABILITY/PERFORMANCE PROCESS

19 Customer Experience Powered by Analytics 19

20 4 V s Still Relevant 20

21 Big Data/Analytics Mobile Data Discovery Cross Service Dashboards Client Customized Reports Geographic Intelligence Exports (Excel, CSV, PDF) Data Quality BI Platform Metadata Management Ecommerce Data Operational Data Data Warehouse Low Latency Data Financial Data Social Spread Sheets Access DBs, etc. Analysis Services Cubes CRM TMS Web Services 21

22 Visualizations 22

23 AGENDA: CONTEXT ARCHITECTURE EVOLUTION BIG DATA/ANALYTICS SECURITY SCALABILITY/PERFORMANCE PROCESS

24 Security 24

25 AGENDA: CONTEXT ARCHITECTURE EVOLUTION BIG DATA/ANALYTICS SECURITY SCALABILITY/PERFORMANCE PROCESS

26 Scalability/Performance 26

27 Load/Stress Testing Load Stress 27

28 AGENDA: CONTEXT ARCHITECTURE EVOLUTION BIG DATA/ANALYTICS SECURITY SCALABILITY/PERFORMANCE PROCESS

29 Agile Transition The Agile Manifesto: We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more. 29

30 Questions? Edward Stashluk Chief Technology Officer Newgistics and Senior Vice President