in Microservices using DDD, Event Sourcing & CQRS Augusto Branquinho Mike Shigueru Matsumoto
|
|
- Augustus Carroll
- 6 years ago
- Views:
Transcription
1 in Microservices using DDD, Event Sourcing & CQRS Augusto Branquinho Mike Shigueru Matsumoto
2 1. Real Wave Modules Marketing Sales Care Technical stack Frontend Integration Backend Payments Insights Integration Information
3 2. Kotlin Designed by Jetbrains Kotlin in production: Google, Pivotal, Uber, Atlassian, Coursera, etc Statically typed Modern Drastically reduce the boilerplate Java, Android Javascript Native
4 2. Kotlin Data Class tostring equals hashcode copy properties - get/set
5 2. Kotlin Lambda Java Kotlin
6 2. Kotlin Higher Order Functions
7 2. Kotlin Extension method Reified & Inline
8 2. Kotlin Smart cast Pattern matching String template Reified Operator overloading Unit and Nothing High order function Infix Internal Properties Extension methods/properties Lazy initialization, Delegation Object (singleton) Deprecated Default value Tacit programming: let, also, apply, run, with Tailrec
9 3. Event Sourcing & CQRS Event Sourcing (ES) 100% reliable logging (aka: version control) all operations on the system are stream event-oriented: nothing happens before the event being committed it is possible to rebuild all the views since the beginning of time you can build new views using the same principle events are immutable
10 3. Event Sourcing & CQRS CQRS "It's a pattern" (Greg Young) uses a different model to update (Command) and another to read (Query) Command (accept/reject) Change state Events Query (views) Are free of side effects
11 3. Event Sourcing & CQRS Motivation ES, CQRS Clients: Bank, Telecom Audit Log (query the past) Insights Multiple views (Multi-Tenant) E.g.: Catalog manager Reliable logs Offers are immutable High requests rate (millions) Decoupled views
12 3. Event Sourcing & CQRS Real Wave Microservices Command Api Query Api accept/reject query response Catalog Catalog Manager Search Offers Catalog Join Use Pay Processor
13 3. Event Sourcing & CQRS Low write latency Catalog Search High read latency Catalog Manager Catalog Processor
14 3. Event Sourcing & CQRS Code
15 3. Event Sourcing & CQRS
16 3. Event Sourcing & CQRS DDD Command Bus
17 3. Event Sourcing & CQRS Command Bus Bounded Context
18 3. Event Sourcing & CQRS Command Bus First Command Nothing was replayed yet
19 3. Event Sourcing & CQRS DDD
20 3. Event Sourcing & CQRS
21 3. Event Sourcing & CQRS Happens in the past Just accept, no logic here
22 3. Event Sourcing & CQRS Command Bus Not here yet!!!
23 3. Event Sourcing & CQRS Command Bus Replay for all past events will start for this ID before this Command executes
24 3. Event Sourcing & CQRS 1 - Replay
25 3. Event Sourcing & CQRS 1 - Replay 2 - Accepts/Rejects
26 3. Event Sourcing & CQRS 1 - Replay 2 - Accepts/Rejects 3 - Accepted
27 3. Event Sourcing & CQRS Another team maybe? Catalog Processor
28 3. Event Sourcing & CQRS
29 3. Event Sourcing & CQRS
30 3. Event Sourcing & CQRS
31 3. Event Sourcing & CQRS Catalog Search
32 3. Event Sourcing & CQRS A B F Catalog Search C D E Catalog 1 Micro Services Catalog 2 Catalog 3 Catalog n
33 3. Event Sourcing & CQRS Conclusion
34 3. Event Sourcing & CQRS Conclusion Burn down
35 3. Event Sourcing & CQRS TODO snapshots sagas Replay recovery fix inconsistency Conclusion build a new view
36 4. Kotlin, DDD, ES & CQRS Motivation Kotlin Events (immutable) (Axon) Catalog v1 Data class (boilerplate) Event Stream lambda Modern Easy to learn
37 4. Kotlin, DDD, ES & CQRS Why should you try using Kotlin?
38 4. Kotlin, DDD, ES & CQRS Sealed Class Events (Event Store Database) Pattern Matching Smart Casts Final
39 4. Kotlin, DDD, ES & CQRS Events (Event Store Database)
40 4. Kotlin, DDD, ES & CQRS Events (Event Store Database)
41 4. Kotlin, DDD, ES & CQRS Value Objects - data class Typesafe Primitive Obsession Invalid Objects Immutability
42 4. Kotlin, DDD, ES & CQRS Anemic Domain Model - kotlin extensions Only Getters / Setters Services Layers are OVER ABUSED!!!
43 5. Kotlin 102 Tests
44 5. Kotlin 102 Coroutines asynchronous programming we put the complications into libraries experimental!= unsecurity
45 5. Kotlin 102 Coroutines What's the result?
46 5. Kotlin 102 Coroutines What's the result?
47 5. Kotlin 102 Coroutines are light weight!
48 5. Kotlin 102 Coroutines are light weight!
49 5. Kotlin 102 Coroutines - async/await
50 5. Kotlin 102 Kotlin is the path to Functional Programming. Functional Programming leads to Pure Functions, Pure Functions leads to Monad and Asynchronous Programming. Asynchronous Programming leads to Reactive Programming. Master Yoda - Return of the Jedi
51 5. Kotlin 102 Functional Programming Purity (no-side effect) Referential Transparency Purity vs I/O Exceptions propagation Thread limits
52 5. Kotlin 102 Monad/Either - zkotlin
53 5. Kotlin 102 Monad - Either -> Either -> Either FOLD HELL
54 5. Kotlin 102 Either foldcompose
55 5. Kotlin 102 Either foldcompose ping-pong effect E.g. Payments Retry
56 5. Kotlin 102 Either foldcompose ping-pong effect
57 5. Kotlin 102 Either foldcompose ping-pong effect
58 5. Kotlin 102 Either, Coroutines, Extensions, zkotlin all together
59 5. Kotlin 102 Wraps I/O problems with Either<L,R>
60 5. Kotlin 102 Wraps I/O problems with Either<L,R> Remote I/O
61 5. Kotlin 102 sync {} async {}
62 5. Kotlin 102 runblocking
63 5. Kotlin 102 zkotlin Couroutines/Ext. Methods
64 5. Kotlin 102 Conclusion Kotlin & Functional Programming Purity, Referential Transparency, Immutability Higher-order functions Sugar syntax (it, ƛ as last parameter) Less boilerplate a nicer syntax to compose Either pattern Coroutines is easy to use Ready for Spring Reactor Catalog Reindex Process before Coroutines: +/- 30 m, after < 4 m
65 6. Kotlin, Java & Legacy Everything is final on Kotlin Spock Mockito
66 6. Kotlin, Java & Legacy SpringBoot - allopen final
67 6. Kotlin, Java & Legacy JPA
68 6. Kotlin, Java & Legacy Spring Data QueryDSL - Plugins (modules) Default Interface Java 8 (Kotlin ) Lambdas return - Unit
69 Conclusion Mike Shigueru Matsumoto Augusto Branquinho
70 Zup We re a fast growing company (2011), but just starting. Kevin Efrusy Accel Ventures Romero Rodrigues Buscapé Company Martin Scobari General Atlantic Silvio Genesini Silvigen Consultoria 540+ Zuppers. BH MG UI / UX / R&D / DEV São José do Rio Preto SP DEV Uberlândia MG UI / UX / R&D / DEV / SUPPORT Joinville SC R&D Ribeirão Preto SP UI/UX/DESIGN Lisboa, Portugal SALES / CONSULTING / R&D São Paulo SP SALES / CONSULTING / PMO / REQUIREMENTS UI/UX
Refactoring to Functional. Hadi Hariri
Refactoring to Functional Hadi Hariri Functional Programming In computer science, functional programming is a programming paradigm, a style of building the structure and elements of computer programs,
More informationProgramming Kotlin. Familiarize yourself with all of Kotlin s features with this in-depth guide. Stephen Samuel Stefan Bocutiu BIRMINGHAM - MUMBAI
Programming Kotlin Familiarize yourself with all of Kotlin s features with this in-depth guide Stephen Samuel Stefan Bocutiu BIRMINGHAM - MUMBAI Programming Kotlin Copyright 2017 Packt Publishing First
More informationArchitecture using Functional Programming concepts < + >
Architecture using Functional Programming concepts < + > Jorge Castillo @JorgeCastilloPr 1 2 Kotlin and Functional Programming FP means concern separation (declarative computations vs runtime execution),
More informationIntroduction to Coroutines. Roman Elizarov elizarov at JetBrains
Introduction to Coroutines Roman Elizarov elizarov at JetBrains Asynchronous programming How do we write code that waits for something most of the time? A toy problem Kotlin 1 fun requesttoken(): Token
More informationFresh Async With Kotlin. Presented at QCon SF, 2017 /Roman JetBrains
Fresh Async With Kotlin Presented at QCon SF, 2017 /Roman Elizarov @ JetBrains Speaker: Roman Elizarov 16+ years experience Previously developed high-perf trading software @ Devexperts Teach concurrent
More informationDeath Stars & River Deltas. Toward a Functional Programming Analogy for Microservices
Death Stars & River Deltas Toward a Functional Programming Analogy for Microservices Hi, I m Bobby I m on the Technology Fellows team at I dislike accidental complexity bobby.calderwood@capitalone.com
More informationKotlin for the Pragmatic Functionalist
Kotlin for the Pragmatic Functionalist Paco Estevez Kotlin logo: 2015-present - JetBrains KotlinConf logo: 2017 - JetBrains Kategory logo: 2017 present - The Kategory maintainers ReasonML logo: 2015 present
More information2 years without Java or reload Android development with Kotlin.
2 years without Java or reload Android development with Kotlin KirillRozov@EPAM Who am I? Team Lead in EPAM More than 6 years in Android development Kotlin Evangelist Co-organizer GDG Minsk, Android Academy
More informationCross-Platform Data Models and API Using grpc
Cross-Platform Data Models and API Using grpc Sebastian Hagedorn, Felix Lamouroux Outline 1. Motivation & Goals 2. Choosing the Right Cross-Platform Technology 3. Introduction to Protocol Buffers and grpc
More informationManaging Data at Scale: Microservices and Events. Randy linkedin.com/in/randyshoup
Managing Data at Scale: Microservices and Events Randy Shoup @randyshoup linkedin.com/in/randyshoup Background VP Engineering at Stitch Fix o Combining Art and Science to revolutionize apparel retail Consulting
More informationMike Fechner Director
Mike Fechner Director 2 3 Consultingwerk Software Services Ltd. Independent IT consulting organization Focusing on OpenEdge and related technology Located in Cologne, Germany, subsidiaries in UK and Romania
More informationMike Fechner, Consultingwerk Ltd.
Mike Fechner, Consultingwerk Ltd. mike.fechner@consultingwerk.de http://www.consultingwerk.de/ 2 Consultingwerk Ltd. Independent IT consulting organization Focusing on OpenEdge and related technology Located
More informationWriting Reactive Application using Angular/RxJS, Spring WebFlux and Couchbase. Naresh Chintalcheru
Writing Reactive Application using Angular/RxJS, Spring WebFlux and Couchbase Naresh Chintalcheru Who is Naresh Technology professional for 18+ years Currently, Technical Architect at Cars.com Lecturer
More informationClean Architecture Patterns, Practices, and #DevSum17
Clean Architecture Patterns, Practices, and Principles @matthewrenze #DevSum17 About Me Independent consultant Education B.S. in Computer Science (ISU) B.A. in Philosophy (ISU) Community Public Speaker
More informationFull Stack Reactive Angular 2, RxJava/JS, Vert.x, Docker
Full Stack Reactive Angular 2, RxJava/JS, Vert.x, Docker 02.03.2017 About Myself DR. ALEXANDER FRIED Chief Technology Officer 2 OUR SOLUTIONS DIGITAL ASSET MANAGEMENT Organize & Share Any File, Any Format,
More informationFull Stack Developer with Java
Full Stack Developer with Java Full Stack Developer (Java) MVC, Databases and ORMs, API Backend Frontend Fundamentals - HTML, CSS, JS Unit Testing Advanced Full Stack Developer (Java) UML, Distributed
More informationJS Event Loop, Promises, Async Await etc. Slava Kim
JS Event Loop, Promises, Async Await etc Slava Kim Synchronous Happens consecutively, one after another Asynchronous Happens later at some point in time Parallelism vs Concurrency What are those????
More informationKotlin In Spreadshirt JavaLand,
Kotlin In Practice @philipp_hauer Spreadshirt JavaLand, 13.03.18 Spreadshirt 2 Hands Up! Kotlin Features and Usage in Practice Data Classes Immutability made easy data class DesignData( val filename: String,
More informationBroken Promises.
Broken Promises kiki @ lightbend @kikisworldrace Data is dangerous Microservices are usually required to cooperate to achieve some end goal. Microservices need to be able to trust each other in order to
More informationFour times Microservices: REST, Kubernetes, UI Integration, Async. Eberhard Fellow
Four times Microservices: REST, Kubernetes, UI Integration, Async Eberhard Wolff @ewolff http://ewolff.com Fellow http://continuous-delivery-buch.de/ http://continuous-delivery-book.com/ http://microservices-buch.de/
More informationGoing Reactive. Reactive Microservices based on Vert.x. JavaLand Kristian Kottke
Going Reactive Reactive Microservices based on Vert.x JavaLand Kristian Kottke Whoami Kristian Kottke Lead Software Engineer -> iteratec Interests Software Architecture Big Data Technologies Kristian.Kottke@iteratec.de
More informationProgramming Kotlin. Extracted from: Creating Elegant, Expressive, and Performant JVM and Android Applications. The Pragmatic Bookshelf
Extracted from: Programming Kotlin Creating Elegant, Expressive, and Performant JVM and Android Applications This PDF file contains pages extracted from Programming Kotlin, published by the Pragmatic Bookshelf.
More informationThere is no such thing as a microservice!
There is no such thing as a microservice! Chris Richardson Founder of Eventuate.io Founder of the original CloudFoundry.com Author of POJOs in Action chris@chrisrichardson.net http://microservices.io http://eventuate.io
More informationClean Architecture Patterns, Practices, and #sddconf
Clean Architecture Patterns, Practices, and Principles @matthewrenze #sddconf About Me Independent consultant Education B.S. in Computer Science (ISU) B.A. in Philosophy (ISU) Community Public Speaker
More informationCQRS and Event Sourcing for Java Developers Markus Eisele
CQRS and Event Sourcing for Java Developers Markus Eisele @myfear Agenda Classical architectures and modernization CRUD vs. CQRS A little example Wrapping it up Classical Architectures Application Server
More informationKotlin for Android Developers
Kotlin for Android Developers Learn Kotlin the easy way while developing an Android App Antonio Leiva This book is for sale at http://leanpub.com/kotlin-for-android-developers This version was published
More informationCASE STUDY Application Migration and optimization on AWS
CASE STUDY Application Migration and optimization on AWS Newt Global Consulting LLC. AMERICAS INDIA HQ Address: www.newtglobal.com/contactus 2018 Newt Global Consulting. All rights reserved. Referred products/
More informationIntroduction to Functional Programming and Haskell. Aden Seaman
Introduction to Functional Programming and Haskell Aden Seaman Functional Programming Functional Programming First Class Functions Expressions (No Assignment) (Ideally) No Side Effects Different Approach
More informationWhat Mobile Development Model is Right for You?
What Mobile Development Model is Right for You? An analysis of the pros and cons of Responsive Web App, Hybrid App I - Hybrid Web App, Hybrid App II - Hybrid Mixed App and Native App Contents Mobile Development
More informationReactive Systems. Dave Farley.
Reactive Systems Dave Farley http://www.davefarley.net @davefarley77 Reactive Systems 21st Century Architecture for 21st Century Problems Dave Farley http://www.davefarley.net @davefarley77 http://www.continuous-delivery.co.uk
More informationThe OpenEdge Application Modernization Framework. Mike Fechner, Director, Consultingwerk Ltd.
The OpenEdge Application Modernization Framework Mike Fechner, Director, Consultingwerk Ltd. mike.fechner@consultingwerk.de http://www.consultingwerk.de/ 2 Consultingwerk Ltd. Independent IT consulting
More informationBuilding flexible and scalable applications
Building flexible and scalable applications Using CQRS and Axon Framework Allard Buijze abu@trifork.com @allardbz Allard Buijze CTO of Trifork Amsterdam ~ 15 years of web development experience Strong
More informationPresent and Future of the RhoMobile platform. Migrating legacy applications, Node.js on mobile devices right now and more
Present and Future of the RhoMobile platform Migrating legacy applications, Node.js on mobile devices right now and more Key facts about RhoMobile and Tau 2008 2011 2014 2015 2016 RhoMobile founded RhoMobile
More informationJVM ByteCode Interpreter
JVM ByteCode Interpreter written in Haskell (In under 1000 Lines of Code) By Louis Jenkins Presentation Schedule ( 15 Minutes) Discuss and Run the Virtual Machine first
More informationMaking Sense of your Data
Making Sense of your Data Building A Custom DataSource for Grafana with Vert.x Gerald Mücke DevCon5 GmbH @gmuecke About me 3 IT Consultant & Java Specialist at DevCon5 (CH) Focal Areas Tool-assisted quality
More informationIntroduction to reactive programming. Jonas Chapuis, Ph.D.
Introduction to reactive programming Jonas Chapuis, Ph.D. Reactive programming is an asynchronous programming paradigm oriented around data flows and the propagation of change wikipedia Things happening
More informationNevin Dong 董乃文 Principle Technical Evangelist Microsoft Cooperation
Nevin Dong 董乃文 Principle Technical Evangelist Microsoft Cooperation Microservices Autonomous API Gateway Events Service Discovery Circuit Breakers Commands Aggregates Bounded Context Event Bus Domain Events
More informationMaking Sense of your Data BUILDING A CUSTOM MONGODB DATASOURCE FOR GRAFANA WITH VERTX
1 Making Sense of your Data BUILDING A CUSTOM MONGODB DATASOURCE FOR GRAFANA WITH VERTX About me 2 IT Consultant & Java Specialist at DevCon5 (CH) Focal Areas Tool-assisted quality assurance Performance
More information{ REST } vs. Battle of API s
{ REST } vs Battle of API s Software Engineer at Sensedia Who am I? MBA in java projects Java and microservice enthusiastic Microservices Agenda REST grpc Demo Questions Moving to Microservices Monolith
More informationReactive Java: Promises and Streams with Reakt. Geoff Chandler and Rick Hightower
Reactive Java: Promises and Streams with Reakt Geoff Chandler and Rick Hightower What is Reakt in 30 seconds! Reakt General purpose library for callback coordination and streams Implements JavaScript
More informationMicroservices with Kafka Ecosystem. Guido Schmutz
Microservices with Kafka Ecosystem Guido Schmutz @gschmutz doag2017 Guido Schmutz Working at Trivadis for more than 20 years Oracle ACE Director for Fusion Middleware and SOA Consultant, Trainer Software
More informationKotlin, Start? Start! (pluu) Android Developer GDG Korea Android Organizer
Kotlin, Start? Start! (pluu) Android Developer GDG Korea Android Organizer Agenda Kotlin Overview Kotlin?? Basic fun main(args: Array): Unit { println("hello, world!") Basic Function Keyword
More informationDesign Micro Service Architectures the Right Way
Design Micro Service Architectures the Right Way Michael Bryzek mike@flow.io / @mbryzek Cofounder / CTO Flow Cofounder / ex-cto Gilt A personal story Could you change this URL from https://foo.com/latest/bar.js
More informationDesign Patterns. Dr. Rania Khairy. Software Engineering and Development Tool
Design Patterns What are Design Patterns? What are Design Patterns? Why Patterns? Canonical Cataloging Other Design Patterns Books: Freeman, Eric and Elisabeth Freeman with Kathy Sierra and Bert Bates.
More informationArchitekturen für die Cloud
Architekturen für die Cloud Eberhard Wolff Architecture & Technology Manager adesso AG 08.06.11 What is Cloud? National Institute for Standards and Technology (NIST) Definition On-demand self-service >
More informationUsing AWS to Build a Large Scale Dockerized Microservices Architecture. Dr. Oliver Wahlen moovel Group GmbH Frankfurt, 30.
Using AWS to Build a Large Scale Dockerized Microservices Architecture Dr. Oliver Wahlen moovel Group GmbH Frankfurt, 30. Juni 2016 The moovel Group GmbH Our vision is an ecosystem that simplifies mobility
More informationOpen Source Library Developer & IT Pro
Open Source Library Developer & IT Pro Databases LEV 5 00:00:00 NoSQL/MongoDB: Buildout to Going Live INT 5 02:15:11 NoSQL/MongoDB: Implementation of AngularJS INT 2 00:59:55 NoSQL: What is NoSQL INT 4
More informationAsynchronous I/O: A Case Study in Python
Asynchronous I/O: A Case Study in Python SALEIL BHAT A library for performing await -style asynchronous socket I/O was written in Python. It provides an event loop, as well as a set of asynchronous functions
More informationMicroservices on AWS. Matthias Jung, Solutions Architect AWS
Microservices on AWS Matthias Jung, Solutions Architect AWS Agenda What are Microservices? Why Microservices? Challenges of Microservices Microservices on AWS What are Microservices? What are Microservices?
More informationWeb Applications. Software Engineering 2017 Alessio Gambi - Saarland University
Web Applications Software Engineering 2017 Alessio Gambi - Saarland University Based on the work of Cesare Pautasso, Christoph Dorn, Andrea Arcuri, and others ReCap Software Architecture A software system
More informationCOPYRIGHTED MATERIAL CONTENTS PART I: THE PRINCIPLES AND PRACTICES OF DOMAIN DRIVEN DESIGN
INTRODUCTION xxxv PART I: THE PRINCIPLES AND PRACTICES OF DOMAIN DRIVEN DESIGN CHAPTER 1: WHAT IS DOMAIN DRIVEN DESIGN? 3 The Challenges of Creating Software for Complex Problem Domains 4 Code Created
More informationDatacenter replication solution with quasardb
Datacenter replication solution with quasardb Technical positioning paper April 2017 Release v1.3 www.quasardb.net Contact: sales@quasardb.net Quasardb A datacenter survival guide quasardb INTRODUCTION
More informationDDD Where s the value and what s in it for me?
DDD Where s the value and what s in it for me? Dino Esposito JetBrains dino.esposito@jetbrains.com @despos facebook.com/naa4e What does a software architect do? Design software driven by the requirements
More informationJava SE 8 Programming
Oracle University Contact Us: +52 1 55 8525 3225 Java SE 8 Programming Duration: 5 Days What you will learn This Java SE 8 Programming training covers the core language features and Application Programming
More informationHigh Availability Distributed (Micro-)services. Clemens Vasters Microsoft
High Availability Distributed (Micro-)services Clemens Vasters Microsoft Azure @clemensv ice Microsoft Azure services I work(-ed) on. Notification Hubs Service Bus Event Hubs Event Grid IoT Hub Relay Mobile
More informationAchieving Continuous Delivery - Micro Services. - Vikram Gadang
Achieving Continuous Delivery - Micro Services - Vikram Gadang Agenda Starting point Observations and lessons learned Architecting for CD Build pipeline strategy Testing strategy Deployment strategy State
More informationReactive Programming with Vert.x
Reactive Programming with Vert.x Embrace asynchronous to build responsive systems Clement Escoffier Principal Software Engineer, Red Hat Reactive The new gold rush? Reactive system, reactive manifesto,
More informationMySQL HA Solutions Selecting the best approach to protect access to your data
MySQL HA Solutions Selecting the best approach to protect access to your data Sastry Vedantam sastry.vedantam@oracle.com February 2015 Copyright 2015, Oracle and/or its affiliates. All rights reserved
More informationIBM s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM s sole discretion.
Please note Copyright 2018 by International Business Machines Corporation (IBM). No part of this document may be reproduced or transmitted in any form without written permission from IBM IBM s statements
More informationTo Kill a Monolith: Slaying the Demons of a Monolith with Node.js Microservices on CloudFoundry. Tony Erwin,
To Kill a Monolith: Slaying the Demons of a Monolith with Node.js Microservices on CloudFoundry Tony Erwin, aerwin@us.ibm.com Agenda Origins of the Bluemix UI Demons of the Monolith Slaying Demons with
More informationManaging data consistency in a microservice architecture using Sagas
Managing data consistency in a microservice architecture using Sagas Chris Richardson Founder of eventuate.io Author of Microservices Patterns Founder of the original CloudFoundry.com Author of POJOs in
More informationHuge Codebases Application Monitoring with Hystrix
Huge Codebases Application Monitoring with Hystrix 30 Jan. 2016 Roman Mohr Red Hat FOSDEM 2016 1 About Me Roman Mohr Software Engineer at Red Hat Member of the SLA team in ovirt Mail: rmohr@redhat.com
More informationKOTLIN/NATIVE + CLANG, TRAVEL NOTES NIKOLAY IGOTTI, JETBRAINS
KOTLIN/NATIVE + CLANG, TRAVEL NOTES NIKOLAY IGOTTI, JETBRAINS KOTLIN IS NOT JUST AN ISLAND KOTLIN LANGUAGE FP and OOP language Type inference, smart casts, nullability checks Generics (erased, with reification
More informationJava SE 8 Programming
Java SE 8 Programming Training Calendar Date Training Time Location 16 September 2019 5 Days Bilginç IT Academy 28 October 2019 5 Days Bilginç IT Academy Training Details Training Time : 5 Days Capacity
More informationMicroservices Implementations not only with Java. Eberhard Wolff Fellow
Microservices Implementations not only with Java Eberhard Wolff http://ewolff.com @ewolff Fellow http://continuous-delivery-buch.de/ http://continuous-delivery-book.com/ http://microservices-buch.de/ http://microservices-book.com/
More informationThe Road to Istio: How IBM, Google and Lyft Joined Forces to Simplify Microservices
The Road to Istio: How IBM, Google and Lyft Joined Forces to Simplify Microservices Dr. Tamar Eilam IBM Fellow @ Watson Research Center, NY eilamt@us.ibm.com @tamareilam The Evolution of Principles (2004-2018)
More informationPlease give me your feedback
#HPEDiscover Please give me your feedback Session ID: B4385 Speaker: Aaron Spurlock Use the mobile app to complete a session survey 1. Access My schedule 2. Click on the session detail page 3. Scroll down
More informationBackground Type Classes (1B) Young Won Lim 6/28/18
Background Type Classes (1B) Copyright (c) 2016-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2
More informationOur Ba'le Against Technical Debt GeekCamp 2017
Our Ba'le Against Technical Debt GeekCamp 2017 Ifnu, July, 15th 2017 Who am I? Ifnu Bima Computer Science IPB & MBA School of Bussiness Management ITB Join Blibli.com in 2012 Java & JavaScript Developer
More informationDeveloper Experience
Developer Experience Max Yekaterynenko Director of Community Engineering @maksek_ua Discover Install Design Develop Integrate Deploy Engage Maintain Monetize Discover Install Design Develop Integrate Deploy
More informationKotlin for Android Developers
Kotlin for Android Developers Learn Kotlin the easy way while developing an Android App Antonio Leiva This book is for sale at http://leanpub.com/kotlin-for-android-developers This version was published
More informationTen interesting features of Google s Angular Project
Ten interesting features of Google s Angular Project - 1 Ten interesting features of Google s Angular Project Copyright Clipcode Ltd 2018 All rights reserved Ten interesting features of Google s Angular
More informationMicroservices Architekturen aufbauen, aber wie?
Microservices Architekturen aufbauen, aber wie? Constantin Gonzalez, Principal Solutions Architect glez@amazon.de, @zalez 30. Juni 2016 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
More informationDocker and Oracle Everything You Wanted To Know
Docker and Oracle Everything You Wanted To Know June, 2017 Umesh Tanna Principal Technology Sales Consultant Oracle Sales Consulting Centers(SCC) Bangalore Safe Harbor Statement The following is intended
More informationIntroduction to Functional Programming in Haskell 1 / 56
Introduction to Functional Programming in Haskell 1 / 56 Outline Why learn functional programming? The essence of functional programming What is a function? Equational reasoning First-order vs. higher-order
More informationYahoo Search ATS Plugins. Daniel Morilha and Scott Beardsley
Yahoo Search ATS Plugins Daniel Morilha and Scott Beardsley About Us We have a HUGE team! Serves traffic which generates ~40% of Yahoo s $$$ We run both Search Ingress and Egress Maintain around a dozen
More informationThe Reactive Landscape Clement Escoffier, Vert.x Core Developer, Red Hat
The Reactive Landscape http://bit.ly/jfokus-reactive Clement Escoffier, Vert.x Core Developer, Red Hat Reactive all the things??? Elasticity Manifesto Actor System Asynchrony Programming Events 2 Message
More informationDomain Driven Design Kevin van der Vlist
Domain Driven Design Kevin van der Vlist kvdvlist@sogyo.nl Objectives 1. Show the usefullnes of DDD 2/27 Objectives 1. Show the usefullnes of DDD 2. Warn you about a two headed monster 2/27 Objectives
More informationTIBCO Spotfire Statement of Direction. Spotfire Product Management
TIBCO Spotfire Statement of Direction Spotfire Product Management CONFIDENTIALITY The following information is confidential information of TIBCO Software Inc. Use, duplication, transmission, or republication
More informationJava SE 8 Programming
Oracle University Contact Us: Local: 1800 103 4775 Intl: +91 80 67863102 Java SE 8 Programming Duration: 5 Days What you will learn This Java SE 8 Programming training covers the core language features
More informationImplementing Microservices Tracing with Spring Cloud and Zipkin
Implementing Microservices Tracing with Spring Cloud and Zipkin Marcin Grzejszczak, @mgrzejszczak 1 2017 Pivotal About me Spring Cloud developer at Pivotal Working mostly on Spring Cloud Sleuth Spring
More informationFunctional programming in C#
Functional programming in C# A quick approach to another paradigm Nacho Iborra IES San Vicente This work is licensed under the Creative Commons Attribution- NonCommercial-ShareAlike 4.0 International License.
More informationmonolith to micro-services? event sourcing can help Doug
monolith to micro-services? event sourcing can help Doug legacy Client Culture Amp (2012-2015) Rails App (Murmur) Read-write Query Server Read-only DB Our journey Our meandering path to CQRS & event sourcing
More information"Stupid Easy" Scaling Tweaks and Settings. AKA Scaling for the Lazy
"Stupid Easy" Scaling Tweaks and Settings AKA Scaling for the Lazy I'm Lazy (and proud of it) The Benefits of "Lazy" Efficiency is king Dislike repetition Avoid spending a lot of time on things A Lazy
More informationExpert Guidance on Migrating from Magento 1 to Magento 2
Expert Guidance on Migrating from Magento 1 to Magento 2 Gordon Knoppe Business Solutions Architect, ECG James Cowie Technical Architect, ECG Expert Consulting Group ECG Charter: To provide expert insight,
More informationWHAT IS NEW FOR DEVS IN SP 2013
WHAT IS NEW FOR DEVS IN SP 2013 ADIS JUGO, PLANB. SHAREPOINT AND PROJECT CONFERENCE ADRIATICS ZAGREB, 11/28/2012 ponsors Agenda Apps Search Workflow WCM Mobile Other APPS In its most basic form, an app
More informationReactive Microservices Architecture on AWS
Reactive Microservices Architecture on AWS Sascha Möllering Solutions Architect, @sascha242, Amazon Web Services Germany GmbH Why are we here today? https://secure.flickr.com/photos/mgifford/4525333972
More informationEvent Sourcing. Intro & Challenges
Event Sourcing Intro & Challenges Michael Plöd innoq Principal Consultant @bitboss Most current systems only store the current state Classical Architecture IncidentRestController IncidentBusinessService
More informationReview. Fundamentals of Website Development. Web Extensions Server side & Where is your JOB? The Department of Computer Science 11/30/2015
Fundamentals of Website Development CSC 2320, Fall 2015 The Department of Computer Science Review Web Extensions Server side & Where is your JOB? 1 In this chapter Dynamic pages programming Database Others
More informationReaktive Anwendungen mit RxJava. Dr. Michael Menzel
Reaktive Anwendungen mit RxJava Dr. Michael Menzel DIGITALIZATION DIGITALIZATION DIGITALIZATION DIGITALIZATION REACTIVE ARCHITECTURES How can we build highly interactive (responsive) systems, which are
More informationAn introduction to CQRS and Axon Framework
An introduction to CQRS and Axon Framework Finance s forgotten treasure Allard Buijze allard.buijze@trifork.nl Allard Buijze! Software Architect at Trifork Amsterdam! ~ 15 years of web development experience!
More informationC# Programming in the.net Framework
50150B - Version: 2.1 04 May 2018 C# Programming in the.net Framework C# Programming in the.net Framework 50150B - Version: 2.1 6 days Course Description: This six-day instructor-led course provides students
More informationNever again offline?!? Experiences on the outstanding role of data in a large-scale mobile app ecosystem
Never again offline?!? Experiences on the outstanding role of data in a large-scale mobile app ecosystem Dr. Matthias Naab, Fraunhofer IESE 1 Dr. Ralf Carbon, John Deere ETIC Susanne Braun, Fraunhofer
More informationRiccardo Tempesta. MageSpecialist
Riccardo Tempesta CTO @ MageSpecialist Magento Community Maintainer Magento Community Contributor Magento 1 Certified Developer Magento 2 Professional Developer Beyond Software Development: Challenges
More informationAsynchronous OSGi: Promises for the masses. Tim Ward.
Asynchronous OSGi: Promises for the masses Tim Ward http://www.paremus.com info@paremus.com Who is Tim Ward? @TimothyWard Senior Consulting Engineer, Trainer and Architect at Paremus 5 years at IBM developing
More informationBuilding a Scalable Architecture for Web Apps - Part I (Lessons Directi)
Intelligent People. Uncommon Ideas. Building a Scalable Architecture for Web Apps - Part I (Lessons Learned @ Directi) By Bhavin Turakhia CEO, Directi (http://www.directi.com http://wiki.directi.com http://careers.directi.com)
More informationKotlin In Spreadshirt. JUG Saxony Day, Spreadshirt
Kotlin In Practice @philipp_hauer JUG Saxony Day, 29.09.17 2 Hands Up! Kotlin Features and Usage in Practice References Immutable and mutable References val id = 1 id = 2 var id2 = 1 id2 = 2 5 Data Classes
More informationACID Is So Yesterday: Maintaining Data Consistency with Sagas
ACID Is So Yesterday: Maintaining Data Consistency with Sagas Chris Richardson Founder of Eventuate.io Founder of the original CloudFoundry.com Author of POJOs in Action chris@chrisrichardson.net http://eventuate.io
More informationMatt Meteor Development Group
A R C H I T E C T I N G M O D E R N J A V A S C R I P T A P P L I C A T I O N S Matt DeBergalis @debergalis Meteor Development Group www.meteor.com github.com/meteor/meteor Honeywell https://www.openroad.ca/portfolio/honeywell
More informationclojure & cfml sitting in a tree sean corfield world singles
clojure & cfml sitting in a tree sean corfield world singles 1 how to go faster (with (parentheses)) sean corfield world singles 2 world singles 3 world singles founded in 2001 internet dating platform
More information