Track |
Ctrl |
AltTab |
08:00 |
Registration & Breakfast
|
08:45 |
Welcome to muCon 2016
|
09:00 |
|
Keynote: You've Got to be Willing to Take the Hits - The Future of Robustness for Microservice Deployments?
Anne Currie
|
architecture
deployment
microservices
mucon
|
Keynote: You've Got to be Willing to Take the Hits - The Future of Robustness for Microservice Deployments?
Anne Currie
How will you be deploying and managing Microservices in production in the next 1, 2 or 5 years time? More complex systems require more robustness and self-healing. How will we achieve that?
Anne will be talking about the power of orchestration and containers, and how that power will be harnessed to produce Microservice systems that can take the knocks and get back up again. architecturedeploymentmicroservicesmucon
About the speaker...Anne Currie has been an engineer for over 20 years, devising and developing products for cutting edge tech firms. She is the co-founder of Force12.io, an open source project for real time container scaling and reporting.
×
|
10:00 |
Coffee & Tea Break
|
10:15 |
|
Latency sensitive microservices
Peter Lawrey
|
java
architecture
microservices
mucon
monolith
|
Latency sensitive microservices
Peter Lawrey
In this talk you will look at the differences between micro-services and monolith architectures and their relative benefits and disadvantage. You will explore design patterns which will allow you to utilize these different strategies as a deployment concern without significant changes to the business logic. You will learn how micro-service architecture can be implemented under low latency constraints of 10 - 100 micro-second latencies, in Java in particular, and how these strategies reduce the impact of serializing data and logging. javaarchitecturemicroservicesmuconmonolith
About the speaker...Most answers for Java and JVM on StackOverflow.com (~12K), "Vanilla Java" blog with four million views and ~300 posts, founder of the Performance Java User's Group, a virtual JUG with ~2K members, architect of Chronicle Software, open source project for high performance, low latency libraries in Java, & Java Champion Peter tweets at @PeterLawrey, and his blog can be found here. ×
|
|
TDD for APIs in a Microservice World
Michael Kuehne
|
agile
testing
architecture
api
tdd
microservices
mucon
|
TDD for APIs in a Microservice World
Michael Kuehne
It can be tough to test an apparently simple service comprehensively. A microservice architecture brings a new level of complexity to the question “How can we validate that our API is working as intended?”
In this talk Michael will explain how to use test driven development for APIs and even further how TDD can drive an API Design towards a more usable design, and how to build an well-tested ecosystem of microservices.
This approach is applicable for different kinds of services (REST APIs, websockets, industrial protocols). Independent from the type of interface we always ran into similar problems when we build an ecosystem of services.
We have to deal with dependency, asynchronous behaviours, fallback mechanisms, endpoint versioning and sometimes even shared databases.
It's not trivial to apply TDD to these kinds of problems cause you have to think of scenarios. But there are ways of identify these scenarios and to test them. As an API specialist Michael worked with various clients designing, building, testing, maintaining and even redesigning private and public services. Based on his project experience he developed a practical approach to apply TDD to APIs in microservice ecosystems. agiletestingarchitectureapitddmicroservicesmucon
About the speaker...Michael worked as an independent API specialist for many years. He advised his clients in terms of API design, authorization standards, development processes and the implementation itself. Nowdays as head of development at Cybus he leads the development of the cybus middleware, a industrial internet of things solution which bases on a microservice architecture. Follow Michael at @michikuehne. ×
|
11:00 |
Coffee & Tea Break
|
11:15 |
2 
|
Microservices for Data Science and Deep Learning
Andrew Jefferson and John Bradshaw
|
architecture
scala
python
Spark
data-science
deep-learning
microservices
nodejs
mucon
kafka
|
Microservices for Data Science and Deep Learning
Andrew Jefferson and John Bradshaw
You will learn about using language agnostic micro services approach to handle data and provide interactive analytics in a Deep Learning / AI startup.
You will explore use cases and an example of a distributed queue based architecture for micro services. Andrew and John will be demonstrating two different 'frameworks' for microservices in a Big Data architecture (with examples):
Kafka Consumers as microservices - image processing
Spark Jobs as microservices - clustering algorithms + data visualisation
Andrew and John will also share their experiences of using microservices at Tractable. architecturescalapythonSparkdata-sciencedeep-learningmicroservicesnodejsmuconkafka
About the speakers...Andrew is a software engineer specialising in realtime data systems. Andrew has worked at YC Startups and at Apple on applications ranging from Ticketing to Genetics. Currently building data systems for training and exploiting Deep Neural Networks for Computer Vision. John is studying for a PhD at the University of Cambridge and the Max Planck Institute for Intelligent Systems, Tübingen in Machine Learning. Prior to that he worked as an engineer at Tractable implementing scalable Machine Learning algorithms.
×
|
|
Consumer-Driven Contracts: avoid microservices integration hell!
Pierre Vincent
|
architecture
api
integration
deployment
microservices
mucon
CDC
|
Consumer-Driven Contracts: avoid microservices integration hell!
Pierre Vincent
Autonomy and isolation are some of the core values of microservices, allowing for independent changes and independent deployments. As loosely coupled services interact on interfaces managed under different lifecycles and even different teams, making sure that a simple change did not break the application can turn into an integration nightmare.
Consumer-Driven Contracts testing brings an alternative integration testing approach for distributed systems, relying less on live-like integration environments and more on making interactions explicit and quickly verifiable. This talk will cover how Newsweaver has made CDCs part of its pipeline with Pact and how it improved collaboration and confidence between teams when designing APIs. ×
|
12:00 |
Tea & Coffee Break
|
12:15 |
|
A Comparison of Authentication Options within Microservice Systems
David Borsos
|
architecture
authentication
microservices
mucon
|
A Comparison of Authentication Options within Microservice Systems
David Borsos
Software security is hard. Software security in Microservice Systems is even harder. Microservice-style software architectures have steadily been gaining popularity in recent years. They offer many benefits over traditional monolithic software products, however they also introduce new challenges - one of these being security.
In recent years David has worked on this problem in several independent projects, and this talk will draw on his learnings within the topic of authenticating end-users. David will describe, compare and evaluate several authentication options from the perspective of how secure they are and how well they comply with the qualities of a well-designed microservice system. You will leave the talk with suggested evaluation criteria and guidance for implementation based on their use cases. architectureauthenticationmicroservicesmucon
About the speaker...David is a software developer with ~8 years of experience working with Java applications, with OpenCredo since 2013. In the past few years he's worked on microservice-style systems delivered for various clients; using open-source technologies.
×
|
|
Let's deploy on fridays
Damien Mathieu
|
architecture
deployment
microservices
mucon
|
Let's deploy on fridays
Damien Mathieu
Deploying a new version of any app can be a tricky thing to do. Yet, we often make it even harder on ourselves, by keeping manual actions in the process; deploying big releases instead of small iterative chunks or even keeping new features in branches for a long time before moving everything to production. In this talk, Damien will talk about how him and his team are applying several various patterns to improve deployments of the Heroku platform, and how you can apply them to your own app so you feel confident if deploying a change on a friday. ×
|
13:00 |
Lunch
|
14:00 |
|
Lightning Talks 1
Kingsley Davies, Gary O'Connor, Robert Shield, and Simon Hildrew
|
architecture
microservices
mucon
|
Lightning Talks 1
Kingsley Davies, Gary O'Connor, Robert Shield, and Simon Hildrew
architecturemicroservicesmucon
About the speakers...Kingsley is a Director at D-limitd, and has spent over a decade designing, developing and supporting large scale systems for a number of clients including, Betfair, the BBC, Barclaycard and others that don't start with a B ;-) While working to make things better, he’s seen a steady evolution towards functional programming, a sharper focus on development operation teams and tools and decomposing big things into smaller composable things commonly called services. CTO at Doddle.
Over a decade in senior technology roles at IBM, Betfair and the BBC. Focus on building event driven, microservice architectures in cloud environments
. Experience of building and operating microservices from Enterprise environments to startups
. Currently scaling a microservice based SAAS platform for a pioneering UK based Click and Collect business. Gary tweets at @garyoconnor99. Robert Shield is a Principal Software Engineer at the BBC where he has been for 6 years, working previously on Video Factory and live audio and video streaming. He is currently leading a team of engineers developing a micro-service orientated architecture implementation of file based delivery, ensuring BBC programmes are fit for broadcast and delivered to playout on time.
Simon Hildrew is currently a Lead Software Developer at the Guardian where he has done everything from running the operations team, overseeing the migration of several products to AWS to building the Guardian's continuous delivery platform. His interests are in functional programming, DevOps and most recently serverless architectures.
Have a look at some of Simon's working projects. Simon tweets at @sihil. ×
|
|
Lightning Talks 2
Andy Czerwinski
|
architecture
microservices
mucon
|
Lightning Talks 2
Andy Czerwinski
architecturemicroservicesmucon
About the speaker...One of a team of Architects that shape and drive the Digital Transformation of the British Gas website. Advocate of HTML5 and the move to client side applications running in client Browsers. Advocate of API technology and API's to split the views (supplied by EmberJS web applications) and the data via microservices (supplied by RESTFUL api's using NetflixOSS and SpringCloud/SpringBoot). Andy tweets at@czeggers. ×
|
15:00 |
Coffee & Tea Break
|
15:15 |
|
A Service Discovery Primer
Alex Ramírez
|
soa
architecture
mucon
monolith
service-discovery
|
A Service Discovery Primer
Alex Ramírez
The monolith applications world got you used to services connected to each other in direct, easy ways. The cloud environments and the modern and current microservices architectures with virtual or containerized setups where the instances can vary in number and location, create an ever-changing context where the communication between services becomes a bit more complicated. Alex will explore some of the different patterns of Service Discovery in a microservices architecture, and focus on pros and cons, while also mentioning concrete examples of tools and software available. soaarchitecturemuconmonolithservice-discovery
About the speaker...A true lover (and geek) of all online areas and the Internet, I have many years of experience in software architecture and development of high availability, high traffic and algorithmically complex environments and applications. I live in the Internet since 1994, and have worked professionally in most online areas since 1996. Alex tweets at @alexramirez, and his website can be found here. ×
|
|
Building Microservices Protocols and Autonomous Systems using Muon
David A. Dawson
|
api
distributed-system
protocols
microservices
mucon
muon
|
Building Microservices Protocols and Autonomous Systems using Muon
David A. Dawson
Building Microservices is, at heart, about building Distributed Systems.
Much research and effort has gone into orchestrating distributed components, but how should they actually communicate to give the properties that you want, AP, resilience, antifragility, self healing, graceful degradation? This is the realm of communication protocols, and this talk introduces the core concepts you need, and shows how to use various protocols and implement new ones using a new Microservices Toolkit from Simplicity Itself and Sky CIS Tech Futures: Muon. Covering async vs sync, event based systems, transactional behaviour over distribution and far more, this is a dive deep into how modern Microservice systems should be built, and how you can get there. apidistributed-systemprotocolsmicroservicesmuconmuon
About the speaker...David Dawson is CEO of GoMicro.Services, takes his passion for design, architecture and philosophy to all their clients, drinks their coffee and gives them Microservice platforms and systems in return. Alongside running GoMicroservices, David advises the other Simplicity Itself companies, GoDataScience and GoCloudNative, dreaming, designing and building an event oriented cloud based artificially intelligent world. This is closer than you think. He lives in the north of England, next to the Pennine national park, and can be found hiking the hills. ×
|
16:00 |
Coffee & Tea Break
|
16:15 |
|
Lightbend Lagom: Microservices Done ‘Just Right'
Brendan McAdams
|
java
architecture
cqrs
scala
reactive
microservices
mucon
EventSourcing
lightbend
lagom
|
Lightbend Lagom: Microservices Done ‘Just Right'
Brendan McAdams
Microservices architecture are becoming a de-facto industry standard, but are you satisfied with the current state of the art? We are
not, as we believe that building microservices today is more challenging
than it should be. Lagom is here to take on this challenge. First, Lagom is opinionated and it will take some of the hard decisions for you, guiding
you to produce microservices that adheres to the Reactive tenents. Second, Lagom was built from the ground up around you, the developer, to push your productivity to the next level. If you are familiar with the Play Framework's development environment, imagine that but tuned for building microservices; we are sure you are going to love it! Third, Lagom comes with batteries included for deploying in production: going from development to production could not be easier. In this session you will get an introduction to the Lightbend Lagom framework. There will be code and live demos to show you in practice how it works and what you can do with it, making you fully equipped to build your next microservices with Lightbend Lagom.
javaarchitecturecqrsscalareactivemicroservicesmuconEventSourcinglightbendlagom
About the speaker...Brendan is a Senior Consultant & Trainer at BoldRadius, where he works directly with clients to help them find success through consulting and training on the Typesafe Reactive Platform. With over 15 years of software development experience, Brendan boasts an impressive resume that has seen him work at Netflix, Typesafe, and MongoDB. Brendan is a renowned speaker and luminary in the Scala community, and is a regular presenter at industry leading conferences such as Scala Days and Scala eXchange. His deep technical knowledge coupled with his outgoing and approachable personality not only make him a great speaker, but also a phenomenal trainer on the Typesafe Reactive Platform. Check out BoldRadius here, or follow Brendan on Twitter. ×
|
|
Scaling State
Matteo Collina
|
architecture
microservices
mucon
|
Scaling State
Matteo Collina
Microservices are great to split the functionality of an application across multiple processes, containers or vms. At their core however, there are still the age-old concepts of rpc, publish-subscribe and work queue, with the central state of our application is stored in a database. With that, you need to answer the same age-old questions,
*How can you support a constantly changing state? *How can you move streams of data across our microservice network? *How can you split system state across multiple processes, containers or vm? Enter Upring. Upring is a library to support application-level sharding of “live” data, it supports node streams, and enables every developer to implement application level sharding. What can you shard? As an example, Upring allows to connect two user with a bidirectional communication (the beloved websocket) across hundreds of machines. At its core, it is a state discovery system. architecturemicroservicesmucon
About the speaker...Matteo is a code pirate and mad scientist. He spends most of his days programming in node.js, but in the past he worked with Ruby, Java and Objective-C. He recently got a Ph.D. with a thesis titled "Application Platforms for the Internet of Things". Now he is a Software Architect at nearForm, where he consults for the top brands in world. Matteo is also the author of the Node.js MQTT Broker, Mosca and of the LevelGraph database. Matteo spoke at several international conferences: NodeSummit, Nodeconf.eu, LXJS, Distill by Engine Yard, and JsDay to name a few. He is also co-author of the book "Javascript: Best Practices" edited by FAG, Milan. In the summer he loves sailing the Sirocco. Follow Matteo at @matteocollina. ×
|
17:00 |
Coffee & Tea Break
|
17:15 |
|
User and inter-service authentication at Prezi
Daniel Torok
|
architecture
authentication
server-side
hmac
backend
microservices
mucon
OAuth2
prezi
authorisation
jswt
|
User and inter-service authentication at Prezi
Daniel Torok
With microservices simple things become complicated, from local development environment to testing to inter-service communication. Authentication is no different, especially if you don't only think about how to authenticate the user over the distributed environment, but also about how to authenticate and authorize a service when it talks to an other one.
In his presentation Daniel will share the history of authentication and authorization at Prezi and talk about what process and design decisions lead us to our current approach, especially to inter-service authentication. architectureauthenticationserver-sidehmacbackendmicroservicesmuconOAuth2preziauthorisationjswt
About the speaker...
I'm Daniel Torok, I'm a senior backend developer with some sysadmin background. I like to work in a team, coding, testing, getting projects done. At the same time I also like to think about big, challenging problems, analyzing them, taking them apart and figuring out not just the long term solution, but also the path that takes us to that direction with giving value all over the way, from the very first step.
I've been working at Prezi for more than 4 years, during those years we changed our architecture from one django application running on physical machines to bunch of small services running on virtual machines at AWS. We faced all the typical microservices-related problem and figured out the solutions that matched our needs the best. Obviously we are far from finished, as the company and the architecture grows more and more problems come to the surface, part of my job is to have a proper plan to minimize the risk and eliminate the pain of those problems. In my spare time I either work or play the piano, but I also try to spend with my family as much time as I can. I tweet at @danisoft. ×
|
|
On The Architectures Of Microservices – the Next Layer
Russel Winder
|
java
architecture
c++
python
kotlin
scaling
go
d
microservices
mucon
|
On The Architectures Of Microservices – the Next Layer
Russel Winder
In many talks over the years Russel has been presenting "dataflow" and to a lesser extent "actors" as architectures for systems. At last year's μCon Russel gave a presentation on this sort of thing. His proposal for this year is for a continuation of some of the ideas in that talk. Not a rehash, definitely an extension and expansion of the ideas. In particular it is clear that microservices instances are effectively actors, but can it be "actors all the way down". Clearly not because at some point we have to work with real hardware which is very, very rarely an actor system.
Microservices can be implemented in many languages Go, Python, D, Kotlin, Ceylon, C++, Java,… does the choice of programming language have a critical effect on the achitectures of microservices. The session is about scaling of architectures and at what point there have to be "fault lines" to other architectures and whether this turns out to be seamless or the location of real problems.. javaarchitecturec++pythonkotlinscalinggodmicroservicesmucon
About the speaker...Russel Winder is an independent consultant, analyst, author, expert witness, and trainer at Skills Matter and an expert on Java, Groovy, Scala, Python, D, Go. Gradle, SCons, Waf, SBT. Bazaar, Mercurial, Git. Russel tweets at @russel_winder. ×
|
18:00 |
Coffee & Tea Break
|
18:15 |
|
The Asynchronous Uncoordinated Continuous Delivery of 35+ uServices
Clayton Wells
|
architecture
continuous-delivery
microservices
mucon
|
The Asynchronous Uncoordinated Continuous Delivery of 35+ uServices
Clayton Wells
So you’ve embraced μServices and Continuous Delivery but as the number of your μServices grow, it has become harder and harder to keep your releases co-ordinated. Many resort to release trains to manage their deployments, where you can only do releases for a given service at a given time or in a specified order, but wouldn’t you like to not have to worry about any of that coordination, no matter how many μServices you need to deploy. Over at Ocado, they have managed to create an environment where they are able to release up to 35+ μServices at any time and in any order you want, asynchronously. Clayton and the Ocado team would like to share with you how we are doing it.
In order to create such an environment, you will need to look at more than just one thing or one area of practice you are doing. You need to take into account almost everything related to your environment and development life cycle. In order to achieve this goal, you will explore the following areas:
Stateless μService Architecture
Fallback strategies
Resiliency
Continuous delivery practices
Development approach and practices
Adopting this approach has allowed the Ocado E-commerce team to actively allow 20+ developers each able to continuously push changes all the way through to production in under 40min from the moment the change is committed, without needing to worry about the changes other developers are pushing through and no need to worry about each developer having to coordinate their releases and work with each other. architecturecontinuous-deliverymicroservicesmucon
About the speaker...Currently a Software Engineering Team Lead at Ocado Technology where we are responsible for the delivery of the E-commerce solution to the Ocado Smart Platform in an Agile manner. I've been with Ocado for 3 years now. I have been working in Software development for the last 11 years where I have focused on the redesign and rebuilding of systems in an SOA approach which has naturally progressed to using micro-services and Continuous Delivery. I have strong interests in agile methodologies, continuous delivery and SOA systems design. Clayton tweets at @ClaytonAMWells. ×
|
|
Monitoring highly distributed systems
Erich Ess
|
architecture
distributed-systems
microservices
mucon
|
Monitoring highly distributed systems
Erich Ess
Knowing what's happening in your system is key to effective monitoring, troubleshooting, and crisis resolution. Unfortunately, when your microservice ecosystem scales to dozens or hundreds of microservices and every user action involves 10 microservices to complete, it becomes incredibly difficult to have that needed visibility and insight. At Jet, they want to know the current state of every distributed process, numbering a few hundred million per day. To gain this visibility the team coupled a common communication protocol which provides an ID to correlate all the messages in a single process with telemetry collection for every act of communication between microservices; pulling this data together results in a stream of data from which the current state of our 100 million daily processes can be viewed with ease. This stream of data allows the Jet team to effectively build metaprograms which operate on the state of the distributed system. For example: monitoring for end-to-end SLAs, checking the status of any single process, powering your Ops platform, and automated integration testing of an entire distributed system. This talk will share with you what the Jet team has done to build this real time, holistic view of our 700+ microservice architecture, so that they can monitor every single process for completion, validate that every single process is behaving as expected, empower their operations team to investigate and triage long running processes (e.g. catalog management and clean up). The talk will cover the DrOrpheus communication protocol they use to create their distributed process context, the telemetry data collection architecture, and the XRay real time telemetry processing platform which enables them to convert billions of telemetry events per day into many different, but accurate, views of their distributed systems state. architecturedistributed-systemsmicroservicesmucon
About the speaker...Directory of engineering at Jet.com. Building distributed systems and microservice platforms. Previously, I've been a CTO for a small start up, engineered distributed systems, and did research into scientific visualization. Erich tweets at @egerhardess , and his blog can be found here. ×
|
19:00 |
End of muCon 2016
|