Loading…
Build Stuff 2018 has ended
Intermediate [clear filter]
Wednesday, November 14
 

12:00pm EET

[SLIDES]Jon Gyllensward @jongyllen - Crashing, monitoring and debugging in Azure
Everything was prepared. The features were in place, the critical bugs were fixed, the environments were up and running and the test were green. We were finally about to go into production with the system we had been working so hard on for the past 18 months.

We had deployed in Azure with redundancy, fail-overs and slots using continuous delivery. The customers had been doing acceptance testing for weeks. We were ready!

Then it happened.

Three days before going into production, the pipeline started halting. The applications crashed one by one. First the development environment, following the test environment. Then the staging environment and last; the production environment. No exceptions or logs pointing us in the direction of the problem.

We had three days to pin down and fix it.

This is a war-story about how we turned our Azure environments upside down, logged, debugged and at last, found the nasty bug and fixed it.

Speakers
avatar for Jon Gyllensward

Jon Gyllensward

VP Engineering, Chinsay AB
Jon is a passionate developer, team leader and systems architect. He is VP of Engineering at Chinsay, trying to help his team of skilled engineers building innovative and reliable systems to revolutionize the concept och contract management.



Wednesday November 14, 2018 12:00pm - 12:50pm EET
4. Lambda

12:00pm EET

[SLIDES]Jose Carlos Chavez @jcchavezs - Distributed Tracing: understanding how all your components work together
Understanding failures or latencies in monoliths or small systems usually starts with looking at a single component in isolation. Microservices architecture invalidates this assumption because end user requests now traverse dozen of components and a single component simply does not give you enough information: each part is just one side of a bigger story.

In this talk we’ll look at distributed tracing which summarizes all sides of the story into a shared timeline and also distributed tracing tools like Zipkin, which highlights the relationship between components, from the very top of the stack to the deepest aspects of the system.

Speakers
avatar for José Carlos Chávez

José Carlos Chávez

Security Software Engineer, Okta
José Carlos Chávez is a Security Software Engineer at Okta, an OWASP Coraza co-leader and a Mathematics student at the University of Barcelona. He enjoys working in Security, compiling to WASM, designing APIs and building distributed systems. While not working with code, you can... Read More →



Wednesday November 14, 2018 12:00pm - 12:50pm EET
5. Zeta

12:00pm EET

[SLIDES]Layla Porter @LaylaCodesIt - APIs Exposed!
More and more developers are building APIs, whether that be for consumption by client-side applications, exposing endpoints directly to customers so they can use an alternative front-end or wrapping up services in containers.

Now that we have all these exposed endpoints, what are we doing to secure them? Previously, our monolith was self contained with limited points of access making authentication and authorisation more straightforward - that’s no longer the case.

We’ll cover the potential risks we may face such as cross site scripting and BruteForce attacks as well as look at the possible options for securing API endpoints including OAUTH, Access Tokens, JSON web tokens, IP whitelisting, rate limiting to name but a few.

Speakers
avatar for Layla Porter

Layla Porter

Speaker, Techorama
Layla is a self-taught .NET web developer and former Pilates teacher and professional horse-rider. She is passionate about breaking stereotypes and helping people of all ages and backgrounds get into coding, making software engineering more accessible. She mentors at Girls Code MK... Read More →



Wednesday November 14, 2018 12:00pm - 12:50pm EET
3. Garage
  Session

12:00pm EET

[SLIDES]Santeri Kangas @KangasSanteri - IoT security powered by AI on a cloud scale
Research company Gartner predicts that more than 20B connected devices will be used worldwide by 2020. Protecting and securing IoT devices starts with device identification.

How advanced device identification helps to protect smart homes? How to use the latest cloud technology and innovative machine learning algorithms to secure connected homes? How to scale to 15M households, 100M devices worldwide in one year?

Santeri Kangas shares his insights about running an agile organization that managed to secure the router while deploying the private cloud effectively.

Speakers
avatar for Santeri Kangas

Santeri Kangas

CTO, CUJO AI
Santeri has 26 years of experience in cyber security  and cloud computing, and a commendable track record in building award-winning security software products for network operators. Kangas has worked to successfully organizations, including as a CTO at F-Secure, CTO of vulnerability... Read More →



Wednesday November 14, 2018 12:00pm - 12:50pm EET
2. Beta
  Session

1:50pm EET

[SLIDES]Sam Elamin @samelamin - Lessons learnt implementing scalable, fault-tolerant data pipelines with Apache Spark
ETL pipelines ingest data from a variety of sources and must handle incorrect, incomplete or inconsistent records and produce curated, consistent data that delivers invaluable insight into the customers behaviour
 
In this talk Sam Elamin will relate his real life experience in building robust data processing pipelines powered by Spark that balances the considerations of extreme performance, speed of development, and cost of maintenance.

Sam will walk through building a Datalake using best practice patterns and running hundreds of jobs in parallel using open source tools including Apache Spark, Apache Airflow and Presto that underline systems which are dealing with £100,000 worth of transactions every hour, and more importantly will also highlight the pitfalls to avoid while providing scalable and reliable big data solutions

If you are curious about becoming a data engineer or fancy a move to big data then this is the talk for you!

Speakers
avatar for Sam Elamin

Sam Elamin

Data Engineer, Elamin LTD
My name is Sam and I am a Big Data Engineer as well as a Software Craftsman and Apache Spark evangelist. I am interested in Big Data, Metrics Driven Development, Continuous Delivery and is currently exploring Real Time Analytics, as as well as streaming tools and frameworks like Apache... Read More →



Wednesday November 14, 2018 1:50pm - 2:40pm EET
4. Lambda
  Session

3:00pm EET

[SLIDES]Darija Sapozenkova-Hauge - Chatbot is an answer. But what is a question?
Tips, tricks and pitfalls designing a chat bot user experience. And most importantly - why design a chatbot?

Speakers
avatar for Darija Sapozenkova-Hauge

Darija Sapozenkova-Hauge

Chief Consultant & Team Lead, Ciber Norge
Darija is an experienced Oslo based UX consultant and team leader. Her experience spans everything from UX for chat bot, customer journey mapping for B2B customers of telecom sector and current UX lead role for bank app project. She publishes articles and blogs, holds presentations... Read More →



Wednesday November 14, 2018 3:00pm - 3:50pm EET
4. Lambda
  Session

3:00pm EET

[SLIDES]Hannes Lowette @hannes_lowette - Build software like a bag of marbles, not a castle of LEGO
If you have ever played with Lego, you will know that adding, removing or changing features of a completed castle isn’t as easy as it seems. You will have to deconstruct large parts to get to where you want to be, to build it all up again afterwards. Unfortunately, our software is often built the same way. Wouldn’t it be better if our software behaved like a bag of marbles? So you can just add, remove or replace them at will?
Most of us have taken different approaches to building software: a big monolith, a collection of services, a bus architecture, etc. But whatever your large scale architecture is, at the granular level (a single service or host), you will probably still end up with tightly couple code. Adding functionality means making changes to every layer, service or component involved. It gets even harder if you want to enable or disable features for certain deployments: you’ll need to wrap code in feature flags, write custom DB migration scripts, etc. There has to be a better way!

So what if you think of functionality as loose feature assemblies? We can construct our code in such a way that adding a feature is as simple as adding the assembly to your deployment, and removing it is done by just deleting the file. We would open the door for so many scenarios!
In this talk, I will explain how to tackle the following parts of your application to achieve this goal: WebAPI, Entity Framework, Onion Architecture, IoC and database migrations. And most of all, when you would want to do this. Because… ‘it depends’.

Speakers
avatar for HANNES LOWETTE

HANNES LOWETTE

Competence Coach, AXXES
Hannes is a developer, a coach and a father of 3.In his role as a .NET consultant at Axxes, he likes performance, databases, distributed systems and large scale apps. But most of all, he likes playing devil’s advocate in technical discussions by playing the ‘it depends’ card... Read More →



Wednesday November 14, 2018 3:00pm - 3:50pm EET
3. Garage

3:00pm EET

[SLIDES]Jimmy Bogard @jbogard - Vertical Slice Architecture
Moving from a layered architecture to a vertical slice architecture can be a bit daunting. We remove abstractions, complex structures, and focus building on the axis of change, then what's next? What new structures, patterns, and policies will need to be introduced in this style of architecture? How will we deal with common business functionality, and where do concepts like CQRS and DDD fit in?

In this session, we'll introduce the idea of vertical slice architectures, and dive into the patterns, tools, and techniques used with slices. We'll also cover how you can fit vertical slices into different kinds of systems, from desktop, SPA, and normal MVC applications. Finally, we'll look at some of the new challenges that come with slices and layers, and how a different approach provides a much more maintainable end result.

Speakers
avatar for JIMMY BOGARD

JIMMY BOGARD

Creator of OSS library AutoMapper, Headspring
Jimmy is a member of the ASPInsiders group, the C# Insiders group, and received the "Microsoft Most Valuable Professional" (MVP) award for ASP.NET in 2009-2018. Jimmy is also the creator and maintainer of the popular OSS library AutoMapper.



Wednesday November 14, 2018 3:00pm - 3:50pm EET
1. Alfa
  Session

3:00pm EET

[SLIDES]Michael Yarinchuk @Myarichuk - Raft - Bringing Democracy to the Cloud
Since its introduction in 1989, Paxos has been a most prevalent protocol for solving consensus in distributed systems. Not long ago, researches at Stanford published Raft protocol - a more understandble and approachable alternative to Paxos.

In this talk I will talk about design of distributed systems and introduce Raft, reveal its inner-workings and show how it is useful in solving reliability issues inherent to all distributed systems.


Wednesday November 14, 2018 3:00pm - 3:50pm EET
5. Zeta

3:00pm EET

[SLIDES]Peter Milne @helipilot50 - Moving from Anarchy to Usability and Sustainability
This talk covers the architecture and challenges of moving user-facing applications from startup mode to enterprise mode.

The problem of 88 different applications that use every JS framework, 600+ API endpoints, multiple JavaScript dialects, with an unproductive UX or UI components.

I will cover architecture to facilitate the migration to a large scale Single Page web application and the environment that supports it. Also, I will discuss the challenges of introducing new technologies, like React, GraphQL and Node.js, to an entrenched development organisation with strong opinions (smile).

Speakers
avatar for Peter Milne

Peter Milne

Technology Architect, Adform
Peter is the Technology Architect at Adform, based in Copenhagen, where actively is involved architecting and migrating technologies and work practices to a scalable enterprise platform. Before Adform he was a Field Engineer at Objectivity launching a new Graph Database product: ThingSpan... Read More →



Wednesday November 14, 2018 3:00pm - 3:50pm EET
2. Beta

4:10pm EET

[SLIDES]Sean Farmar @farmar - How can monitoring save your bacon
We usually think of monitoring as something the Operations team will take care of. In a "monolithic" system that might be enough.
But we like to distribute our systems. We deploy microservices with persistent queues and automated retries. We allow them to tolerate failure, at least for short periods of time. Sometimes it may seem everything is running OK. No heavy load, no memory or CPU surges, no immediately observable slow-downs. But in fact the system may not be functioning and effective performance is degrading. Messages are piling up in queues. Business SLA's are starting to get breached. With distributed systems, we need to do more than basic monitoring.
Let's talk about how we can do a better job at keeping the lights on and ensuring our systems are functioning as designed.
I'll introduce various aspects of monitoring and the things we need to think about when writing code. I'll show how you can optimize your distributed systems and find performance bottlenecks. You'll discover how you can win if you give monitoring a bit more love :-)

Speakers
avatar for Sean Farmar

Sean Farmar

Solution Architect, Particular Software
Sean Farmar holds the world record for answering the most NServiceBus questions - even more than Udi :-).With over 20 years of experience, he specializes in providing simple solutions for complex business requirements using NServiceBus and applying SOA principles inspired by Udi Dahan.As... Read More →



Wednesday November 14, 2018 4:10pm - 5:00pm EET
5. Zeta

4:10pm EET

[SLIDES]Tomer Gabel @tomerg - Non-deterministic Software for the Rest of Us
Classically-trained (if you can call it that) software engineers are used to clear problem statements and clear success and acceptance criteria. Need a mobile front-end for your blog? Sure! Support instant messaging for a million concurrent users? No problem! Store and serve 50TB of JSON blobs? Presto!

Unfortunately, it turns out modern software often includes challenges that we have a hard time with: those without clear criteria for correctness, no easy way to measure performance and success is about more than green dashboards. Your blog platform better have a spam filter, your instant messaging service has to have search, and your blobs will inevitably be fed into some data scientist's crazy contraption.

In this talk I'll share my experiences of learning to deal with non-deterministic problems, what made the process easier for me and what I've learned along the way. With any luck, you'll have an easier time of it!

Speakers
avatar for TOMER GABEL

TOMER GABEL

Principal Engineer, WeWork
A programming junkie and computer history aficionado, Tomer's been around the block a few times before settling in at WeWork. Over the years he's built any number of (predominantly back-end) systems, cofounded two major Israeli user groups (Java.IL and Underscore), organized an annual... Read More →



Wednesday November 14, 2018 4:10pm - 5:00pm EET
3. Garage
 
Thursday, November 15
 

9:00am EET

[SLIDES]Keynote: Lynn Langit @lynnlangit - Programming...probably
Like you, I code everyday. What I code and how I code varies widely. A look into my world of coding - machine learning, cloud, new tools/languages, bioinformaticians, kids and teaching tech around the world. 

Speakers
avatar for Lynn Langit

Lynn Langit

BigData and Cloud Architect, Lynn Langit Consulting
Cloud Architect-- 12 years as a Big Data and Cloud architect, analyst, speaker, author and trainer-- Lead Architect for AWS,GCP IoT and Bioinformatics Data Pipeline Optimization projects-- Community technical education partner awards from AWS, Google and MicrosoftK-12 Education Non-Profit... Read More →



Thursday November 15, 2018 9:00am - 10:00am EET
1. Alfa
  Session

10:20am EET

Itamar Syn-Hershko @synhershko - SQL on BigData with AWS Kinesis, Presto and Elastic
That thing that happens when your company is scaling so fast you have to replace your infrastructure within weeks or the whole thing crashes. This is what happened to our customer, and this is the story of how we replaced good-ol' SQL with streams and batch processing technologies on AWS.
Using Terraform, Packer, Elasticsearch, AWS Kinesis, Lambda and EMR we were able to provide a truly scalable solution in a matter of weeks, without hurting production and while dealing with a huge scale.
In this talk we will quickly go through the design phase, the various stake holders and how we improved their usage of the system, and introduce the tools that helped us make this happen.

Speakers
avatar for Itamar Syn-Hershko

Itamar Syn-Hershko

Founder & CTO, BigData Boutique
I'm a search technologies, distributed systems and architecture expert. Over the years I built and maintained several big mission-critical systems on both Windows and Linux, and gained a lot of experience I now use to perfect systems built to deal with scale.


Thursday November 15, 2018 10:20am - 11:10am EET
4. Lambda

10:20am EET

[SLIDES]Pedro Felix @pmhsfelix - Using Kotlin Coroutines for Asynchronous and Concurrent Programming
Asynchronous and concurrent programming play a very important role in the current world of Web APIs and microservices, where a significant part of our code is about orchestrating interactions with external systems.
Using traditional synchronous models, where threads are blocked while waiting for external responses, is not suitable for platforms where threads are costly, such as .NET or the JVM, or where there are special threads that can't be blocked, such as on Javascript or Android applications.

There are various programming models to handle asynchronicity, ranging from simple callbacks to reactive streams as a way to handle asynchronous sequences.
Among these, the concept of Future has seen broad adoption in multiple platforms (e.g. Promises/thenables in javascript, CompletableFuture in Java 8, Task in .NET), including language support via the async-await constructs, which are now available in languages such as C#, Javascript, and Python.
However, instead of also adding explicit async-await support in the Kotlin language, their designers decided to go another route and address these problems with the different and more generic concept of coroutines.

This session presents Kotlin coroutines, as implemented via suspending functions, and their use to write asynchronous and concurrent programs.
Starting from the ground-up, we show how suspending functions allows us to turn callbacks into suspension points that don't break the apparent control flow.
From then we move into creating and starting coroutines as instances of these suspending functions, taking a look at the underlying state machine and continuation interfaces.
With this knowledge, we show how the async-await construct can be implemented as library functions without needing explicit language support.
We also show how to achieve interoperability with other JVM asynchronous constructs, converting between them and coroutines.
The relation between coroutines and threads is also illustrated, with emphasis on thread scheduling (e.g. ensuring the coroutine always run in the Android UI thread) and context propagation.

With the recent release of Kotlin 1.3, coroutines graduated to a stable feature, becoming an essential language mechanism to write asynchronous code on the Kotlin language.

Speakers
avatar for Pedro Felix

Pedro Felix

Software Engineer and Professor, Lisbon Polytechnical Institute
Pedro Félix is a software engineer working in sunny Lisbon, where he deploys both code and knowledge.He's also a professor at the Lisbon Polytechnical Institute, where he teaches Web Application Development and Concurrent Programming courses.Pedro started his professional career... Read More →


Thursday November 15, 2018 10:20am - 11:10am EET
5. Zeta
  Session

10:20am EET

[SLIDES]Seth Vargo @sethvargo - So you wanna do security with microservices, eh?
Equifax, Yahoo, the NSA, IHG, Hyatt, Uber, and eBay are just a few of the over 100 companies that reported security and data privacy breaches in 2017. For many organizations, the perimeter firewall has been the only required security, but with the move to cloud, no longer can users rely on a firewall as the only means of defense. Instead, we need to adopt defense in depth and rethink the way we do security in microservices. Just like DevOps, this is a collaborative process that requires changes throughout the stack from developers, operators, security professionals, and executives.
Hackers are getting more sophisticated in their attacks. As a result, we need a strong recipe to reduce the threat of intrusion, a mechanism for detecting security breaches and anomalies, and a process for quickly responding to security incidents (“break glass”).
Seth Vargo outlines the key principles for securing microservices and distributed systems in the modern world, where applications run in cloud or hybrid cloud infrastructure. You’ll learn the challenges associated with microservices and the principles of secure applications (think 12-factor apps, but for security); you’ll also discover how to implement time-based, limited-access controls and capture security practices and policy as code. 

Speakers
avatar for Seth Vargo

Seth Vargo

Engineer, Google
Seth Vargo is an engineer at Google Cloud. Previously he worked at HashiCorp, Chef Software, CustomInk, and some Pittsburgh-based startups. He is the author of Learning Chef and is passionate about reducing inequality in technology. When he is not writing, working on open source... Read More →



Thursday November 15, 2018 10:20am - 11:10am EET
1. Alfa

11:30am EET

[SLIDES]Daniel Molnar @soobrosa - The Data Janitor Returns
This talk is for the underdog. If you're trying to solve data related problems with no or limited resources, be them time, money or skills don't go no further. This talk is opinionated and updated to GDPR, deep learning and all the hype .

Speakers
avatar for Daniel Molnar

Daniel Molnar

Data Engineer, Oberlo
The Data Janitor – data nerd and startup specialist. 19 years XP in startups, 9 in data. Experienced co-founder, built and hired teams up to 30 persons. Proven build-to-market capabilities. Utilizing data for successful products – CS + data + product background under one hat (Zalando... Read More →



Thursday November 15, 2018 11:30am - 12:20pm EET
3. Garage
  Session

11:30am EET

[SLIDES]Morten Arngren - Cross-Device Tracking Algorithm
Cross-Device tracking is about connecting cookies across devices (eg. mobile phones, laptops) to form an extended profile per user. This can be used to provide a more personalized advertisement experience across devices. In this talk you will be taken down the rabbit hole of how Adform’s Cross-Device algorithm was designed. It is both high-level with some depth into the core algorithm with some final results. It covers how the algorithm was designed and not so much the implementation in production.

Speakers
avatar for Morten Arngren

Morten Arngren

Lead Data Scientist, Adform
Morten is a Lead Data Scientist of the Tactical Research team in Adform in Copenhagen. He and his team conduct practical research in the world of Adtech. This includes developing Cross-Device algorithms, Bayesian Bandits, Recommendation systems and Deep Learning.Prior to Adform Morten... Read More →



Thursday November 15, 2018 11:30am - 12:20pm EET
2. Beta

11:30am EET

[SLIDES]Nir Dobovizki @NirDobovizki - Smart home from scratch - a little C#, a little C++ and a whole lot of cheap Chinese electronics
The story of my smart home system, all the way from the original idea to today, everything from designing the system, getting the hardware, dealing with the home existing electrical system and more

Speakers
avatar for Nir Dobovizki

Nir Dobovizki

Senior consultant and software architect, CodeValue
Nir Dobovizki is a software architect and a consultant at CodeValue, Nir has been developing software professionally for over two decades and recently started building all sort of robots, both professionally and at home, we can't be sure but we suspect those robots are a part of his... Read More →



Thursday November 15, 2018 11:30am - 12:20pm EET
4. Lambda
  Session

11:30am EET

[SLIDES]Randy Shoup @randyshoup - Scaling Your Architecture with Events and Services
This session is a deep dive into the modern best practices around asynchronous decoupling, resilience, and scalability that allow us to implement a large-scale software system from the building blocks of events and services, based on the speaker's experiences implementing such systems at Google, eBay, and other high-performing technology organizations.
We will outline the various options for handling event delivery and event ordering in a distributed system. We will cover data and persistence in an event-driven architecture. Finally, we will describe how to combine events, services, and so-called "serverless" functions into a powerful overall architecture.
You will leave with practical suggestions to help you accelerate your development velocity and drive business results.

Speakers
avatar for Randy Shoup

Randy Shoup

VP Engineering, WeWork
Randy has spent more than two decades building distributed systems and high performing teams, and has worked as a senior technology leader at eBay, Google, and Stitch Fix. He coaches CTOs, advises companies, and generally makes a nuisance of himself wherever possible. He is currently... Read More →



Thursday November 15, 2018 11:30am - 12:20pm EET
1. Alfa

1:20pm EET

[SLIDES]Lukas Vileikis @en0xide - Lessons from 4 Billion breached records
Websites are hacked daily and their data is stolen by hackers. How, why is it done and what can we learn from it?

Speakers
avatar for Lukas Vileikis

Lukas Vileikis

Marketing Evangelist, Severalnines
Lukas is an ethical hacker, a MySQL DBA and a frequent conference speaker. Since 2014 Lukas has found and responsibly disclosed security flaws in some of the most visited websites in Lithuania and abroad including advertising, gift-buying, gaming, hosting websites as well as some... Read More →



Thursday November 15, 2018 1:20pm - 2:10pm EET
5. Zeta
  Session

1:20pm EET

[SLIDES]Martin Hinshelwood @MrHinsh - Agile Scaling Unicorns and how to tame them
Many organisations are seeking that unicorn of process that will magically transform their organisation. They require that this agile unicorn be documented, scalable, and tell them exactly what to do, and when. We will dive into the fallacy of the scaled blueprint and demonstrate why it does not work. Then we will look at ways that we can use Scrum to Scale Scrum with the Nexus Framework. Designed by Ken Schwaber to be the scaffolding around which you can build your own unique process it enshrines only the minimum required to implement an Empirical Process Control System at scale for an organisation.

Just as with Scrum, the Nexus Framework is more like a rule book than a strategy guide. It makes sure that we are at least all playing the same game, working toward the same goal. But its not enough to Win, we need additional Practices or Strategies to help us. We will dive into some of those additional practices and how they might help you succeed

Speakers
avatar for Martin Hinshelwood

Martin Hinshelwood

DevOps & Agile Consultant, naked Agility Limited
Martin Hinshelwood believes that every company deserves high-quality software delivered on a regular cadence that meets its customer’s needs. His goal is to help you reduce your cycle time, improve your time to market, and minimise any organisational friction in achieving your goals... Read More →



Thursday November 15, 2018 1:20pm - 2:10pm EET
4. Lambda
  Session

2:30pm EET

[SLIDES]Jeff Strauss @jeffstrauss - Multithreaded JavaScript—Web Workers, Shared Memory, and Atomics
For better and for worse, JavaScript is single-threaded by design. For over 50 years Moore’s Law has described persistent exponential growth in computational power. But recently, physical limitations have slowed the trend, with advancement now coming more frequently through the use of multiple CPUs and cores. This is fine for languages featuring threads and task-based architectures. But what about JavaScript?

Thankfully, the JavaScript community has introduced new paradigms for handling parallelism over the web. The Web Worker allows long-running code to execute in the background without blocking the UI. Starting with ES2017, Shared Memory Buffers and Atomic operations allow easier passing of data and messages among these worker processes and your main application. Learn to leverage these exciting new features to improve the performance and responsiveness of your web application today!

Speakers
avatar for JEFF STRAUSS

JEFF STRAUSS

Technical Architect & an Attorney, World Wide Technolog
Jeff is a software developer, an entrepreneur, and an attorney. As a consultant at WWT Asynchrony Labs, with unique experiences that combine technology and law, he maintains a passion for solving problems with inspired solutions, improving life through technology.A dedicated member... Read More →



Thursday November 15, 2018 2:30pm - 3:20pm EET
2. Beta
  Session

2:30pm EET

[SLIDES]Yan Cui @theburningmonk -How to build observability into a serverless application
Serverless introduces a number of challenges to existing tools for observability, we need to adapt our practices to fit this new paradigm. In this talk we will see how you can implement log aggregation, tracing and correlation IDs for a serverless application.

Speakers
avatar for Yan Cui

Yan Cui

Principal Engineer, DAZN
Yan is an experienced engineer who has run production workload at scale in AWS for nearly 10 years. He has been an architect and principal engineer with a variety of industries ranging from banking, e-commerce, sports streaming to mobile gaming. He has worked extensively with AWS... Read More →



Thursday November 15, 2018 2:30pm - 3:20pm EET
3. Garage

2:30pm EET

[SLIDES]Yves Lorphelin @ylorph - Tamed Eventual Consistency
"In Event Sourced systems, Latency is feared by the Developpers, and Eventual Consistency is uncacceptable for Business"

Most of us have been taught that users want to see the result of actions in our systems immediately.
And that therefore a typical transactional system is a must.

And so, we stopped thinking about time.
And so, we stopped asking:
* How long are you willing to wait
* Does it make sense to show an immediate response

Event sourcing, and the associated use of CQRS (Command Query Responsibility Segregation) has put time back as a first class citizen in our systems.
And made the need of discussions about latency explicit.

Latency and Eventual consistency is not a fatality.
It is a matter of modelling.
Modelling event streams.

This talk will explore an eventsourced subsystem, build for a government HR agency.
The steps used to tame eventual consistency inside it.
As well as those taken for integrating it into the whole Legacy system.


Thursday November 15, 2018 2:30pm - 3:20pm EET
4. Lambda

3:40pm EET

[SLIDES]Alexey Zimarev @Zimareff - Simplicity vs Simplification
You often hear that DDD is hard. People are trying and failing, complaining over increased complexity, which gets out of control. In fact, despite many complains that accidental complexity is overcoming the domain complexity, often this is not the case. Developers tend to over-simplify business problems and, in turn, play around with technical complexity instead. The reason for this is that many business problems are considered as "easy" or "solved" when it is actually not the case. According to past experiences, making decisions before engaging the decision-making part of the brain too often lead to underestimating of the domain complexity, poor user experience and low overall customer satisfaction.
During this talk, Alexey will show several cases like this and will try to convince you to think deeper about business problems, even if they seem to be simple at first glance.


Thursday November 15, 2018 3:40pm - 4:30pm EET
5. Zeta
  Session

3:40pm EET

[SLIDES]Dylan Beattie @dylanbeattie - Apps, Algorithms and Abstractions: Decoding our Digital World
It's a familiar scenario. You’re on a train, your phone goes ‘ping’, you take it out of your pocket and hey - someone sent you a message! It’s a funny cat picture. You laugh, you reply ‘LOL’, you put your phone back in your pocket… but have you ever stopped to think about what’s actually involved in making that happen? Inside even the most basic smartphone there are literally hundreds of innovations, algorithms and inventions - but how do they really work? How were they developed? And what’s the next generation of algorithms and applications going to look like?

In this talk, we’ll take a deep dive into the technology behind those everyday experiences, and demystify the algorithms and abstractions that make our digital world go round. We’ll look at everything from network addressing algorithms, frequency-hopping cellular data networks and shortest path optimisation, to wavelet compression, fingerprint recognition and media encoding schemes. Whether you’re a programmer, a product owner or just somebody who loves using the latest tech, after watching this talk you’ll never look at your phone quite the same way again.

Speakers
avatar for DYLAN BEATTIE

DYLAN BEATTIE

Chief Everything Officer, Ursatile Ltd
Dylan Beattie is an independent consultant who has been building data-driven web applications since the 1990s. He’s managed teams, taught workshops, and worked on everything from tiny standalone websites to complex distributed systems. He’s a Microsoft MVP, and he regularly speaks... Read More →



Thursday November 15, 2018 3:40pm - 4:30pm EET
1. Alfa
  Session

3:40pm EET

[SLIDES]Ian Cooper @ICooper - The Clean Architecture
What is the clean architecture and how you would build one in .NET? Recently Bob Martin has categorized a set of architectures, including hexagonal architecture, onion architecture and screaming architecture as 'the clean architecture' - a layered architecture of concentric circles with a strong emphasis on separation of concerns. This architecture has become popular because of its amenability to modification as an evolutionary architecture and its support for practices such as TDD. In this presentation we will discuss the clean architecture and its benefits. More than that, in the bulk of the presentation, we will show you how to implement a clean architecture in .NET. From first steps to working code, we will show you the moves required to embrace this approach, and introduce you to some of the OSS libraries that can help you get there. All examples will be in .NET Core 

Speakers
avatar for IAN COOPER

IAN COOPER

Polyglot Coding Architect, JustEat
Polyglot Coding Architect in London, founder of #ldnug, speaker, tabletop gamer, geek. Tattooed, pierced, and bearded. The 'guv' on @BrighterCommand



Thursday November 15, 2018 3:40pm - 4:30pm EET
3. Garage
 
Friday, November 16
 

11:20am EET

Dennis Traub @dtraub - Domain Modeling in a Serverless World
Back in the day, when Eric Evans came up with Domain-Driven Design, Microservices were still in the future and nobody had ever heard of "Serverless" or Functions as a Service (FaaS).
Modeling a rich domain has always been hard, and it has become even harder with a modern architecture's share-nothing approach while multiple services and functions still need to operate on common conceptual models.
In this session, Dennis presents a few approaches to model the richness of a business domain without turning your serverless functions into a "Distributed Big Ball of Mud". 

Speakers
avatar for DENNIS TRAUB

DENNIS TRAUB

CLOUD EXPERT & EVANGELIST, Codecentric AG
With more than 20 years in the industry, Dennis has been building software for many clients, ranging from startups to multinational corporations. As a Fellow at codecentric he helps his clients transforming their business through technology, with an emphasis on digitization and the... Read More →


Friday November 16, 2018 11:20am - 12:10pm EET
2. Beta
  Session

11:20am EET

[SLIDES]Mikhail Shilkov @MikhailShilkov - All-in on Cloud: How We Moved from Million Euro Worth of Hardware to Azure PaaS
Astrata Europe is tracking telemetry from tens of thousands of vehicles throughout Europe. For many years all the back-end services were hosted on bare-metal self-managed hardware.

By the end of 2017, the decision was made to join the cloud era and move all business-critical workloads to Azure cloud. And on top of that, the applications were modernized to leverage higher level Platform-as-a-Service whenever feasible.

During this session Mikhail will guide you through this migration story from making the decision to lessons learned, looking from developer and operations points of view.

Speakers
avatar for Mikhail Shilkov

Mikhail Shilkov

Software Developer, Astrata Europe
Mikhail Shilkov is a software engineer, Russian expat living in the Netherlands. During the day, he is a full-stack engineer with .NET / SQL Server / Azure / Typescript stack, developing smart and reliable solutions for transportation and logistics industry. At night, he loves playing... Read More →



Friday November 16, 2018 11:20am - 12:10pm EET
5. Zeta
  Session

11:20am EET

[SLIDES]Rob Ashton @RobAshton - Patterns for building zero-support distributed systems in Erlang
We have all seen the local demos of the "let it fail" philosophy that Erlang espouses, but what happens when you take that and apply it across a complete distributed system in production? What does it look like and how does it change the manner in which you then support it?

For the last several years, I have been working in a very small team, both building and deploying/supporting bespoke products that power upwards of half a million live video events a year, as well as forming the backbone of various television services across the UK. For some of our customers, it has been half a decade since we received a support call and indeed it is a virtual non-happening that anybody has to get out of bed to solve a problem in production. A lot of this results directly from our use of OTP, and there are then wider patterns that have arisen across our codebases and even the manner in which we provide support to our clients.

In this session, we will be using code and examples from real-world projects to demonstrate how we build, deploy, and then support hundreds of services/workloads across both the cloud and our on-premise high density units in production, as well as also covering how our software stack ensures that on a bad day, our services carry on delivering content even when servers are catching fire or somebody has spilled coffee on the datacentre power supply.

Speakers
avatar for ROB ASHTON

ROB ASHTON

Polyglot Software Developer, id3as
Over a decade of building software in a plethora of languages and technologies, leading teams, travelling around and learning. Now found mostly writing Erlang and Purescript, building distributed media delivery systems for a small b2b company in the UK whilst also developing an ecosystem... Read More →



Friday November 16, 2018 11:20am - 12:10pm EET
6. Theta
  Session

11:20am EET

[SLIDES]Sirar Salih @sirarsalih - Two Tales: The time when I flew drones and when I talked to the cookie monster using Node at the Norwegian Parliament
Once upon a time I had the idea of creating a Node server to control a drone through the power of the Internet. Of course, this idea seemed crazy at the time as this was when the Internet of Things was just becoming a new buzzword. Controlling things using the Internet was a new and fascinating thing at the time. This tale (one of two) will look at how I managed to control a drone by creating and using a Node server, to fly a device from any corner of the world. This tale will dissect and investigate the node-server-ar-drone library, created by myself, at NPM.

The second tale, is a rather funny one. It takes place many years after the first tale, in an environment so bureaucratic that it leverages 8 year old technology. This second tale, is about how I sat up a Node server at the Norwegian Parliament so that I could talk to the browser's cookie monster to save and to fetch user data related to GDPR. In other words, this tale is so sensitive that it includes GDPR, the Norwegian Parliament and the all bureaucracy that follows.

Welcome to an adventurous day of tales!

Speakers
avatar for SIRAR SALIH

SIRAR SALIH

SOLUTION ARCHITECT, MAKING WAVES
Sirar Salih is a full-stack developer, solution architect and leader of the White Hat hacker hub at Making Waves. He is a very active community organizer, organizing meetups for the Azure User Group Norway and the Norwegian .NET User Group Oslo. Sirar loves sharing knowledge and has... Read More →



Friday November 16, 2018 11:20am - 12:10pm EET
4. Lambda
  Session

1:10pm EET

[SLIDES]David Ostrovsky @DavidOstrovsky - Containers in Production: It’s Like Orchestrating Cats
You’ve finally installed Docker and typed ‘docker run hello-world’ into the terminal - congratulations! You have taken the first out of about a thousand steps to having your containerized application run in production. Let’s talk about the other nine hundred and ninety nine.

We need to look at container orchestration: who creates the containers, how many and when, who makes sure they stay up or get upgraded? We need to look at monitoring, which needs to go from looking at easily identifiable machines, to amorphous cloud applications that span multiple machines and keep moving around. We have to have get logging and debug information from our containers. We must consider security and service discovery. The list of buzzwords is long, but we’ll do our best to cover it in this talk. We will look at Docker Swarm, Kubernetes and Amazon Container Service for orchestration and discuss how to monitor, debug and secure containerized applications both on-prem and in the cloud.

Speakers
avatar for DAVID OSTROVSKY

DAVID OSTROVSKY

Chief Architect & Author, ProofPoint
When he was 9 years old, little David Ostrovsky found a book in Russian called "Electronic Computational Machines" at the local library and, after reading it cover-to-cover in a single weekend, decided that this was what he was going to do with his life. Three years later he finally... Read More →



Friday November 16, 2018 1:10pm - 2:00pm EET
2. Beta
  Session

1:10pm EET

[SLIDES]Mandi Walls @lnxchk - Making Security and Compliance Easy with InSpec
InSpec is an open source testing framework for infrastructure with a human- and machine-readable language for specifying compliance, security, and policy requirements.
Using a combination of command-line and remote-execution tools, InSpec can help you keep your infrastructure aligned with security and compliance guidelines on an ongoing basis, rather than waiting for and then remediating from arduous annual audits. InSpec’s flexibility makes it a key tool choice for incorporating security into a complete continuous delivery workflow, reducing the risk of new features and releases breaking established host-based security guidelines. This workshop covers the basics of working with InSpec, writing tests to reflect your organization’s security guidelines, consuming community security profiles, and managing InSpec as part of a high-velocity workflow.

Speakers
avatar for Mandi

Mandi

Technical Community Manager, Chef Software
Mandi Walls is Technical Community Manager, EMEA at Chef. For Chef, she helps organizations increase their effectiveness using configuration management and modernizing IT practices. She is a long-time sysadmin focusing on large complex web systems.



Friday November 16, 2018 1:10pm - 3:10pm EET
5. Zeta
  Workshop

2:20pm EET

[SLIDES]Bill Dinger @adazlian - OWASP Top 10 Vulnerabilities & ASP.NET
In this talk we'll go over the new 2017 OWASP Top 10 vulnerabilities and how they apply to ASP.NET. We'll include a demonstration of each vulnerability, the risk it poses, how to detect the attack, and how to mitigate it. Source code and demo project will be available.

Speakers
avatar for Bill Dinger

Bill Dinger

Solutions Architect, VML
Over the last 15 years I've worked in enterprise IT, first in customer service, then in infrastructure and now in a more focused .NET development role. During that time the accomplishment I'm most proud of is that despite tens of thousands of customer interactions and phone calls... Read More →



Friday November 16, 2018 2:20pm - 3:10pm EET
2. Beta
  Session

2:20pm EET

[SLIDES]Roy Osherove @RoyOsherove - The Enterprise Devops Challenge
DevOps is the implementation of continuous delivery and agile concepts across the organization, focusing on pipelines as the main building blocks for delivery value internally and to the customer.
But getting to that state is complicated because it requires several facets of work: People, process and tools.
In large organizations ,we have the added complexity of :
" Multiple dependencies and sub systems
" Multiple teams, groups, business units with competing interests
" Varying degrees of agility, culture, tools, technologies and processes
" Security, compliance and policy gates

In this talk we will discuss main patterns and anti patterns for adopting and implementing DevOps pipelines throughout the organization.

Speakers
avatar for ROY OSHEROVE

ROY OSHEROVE

Author of "Art of Unit Testing", Blocktrace
Roy Osherove is the author of "Art of Unit Testing" "Elastic Leadership" and the upcoming "Enterprise DevOps" books. He has worked with some of the world's largest companies to help implement continuous delivery at scale.



Friday November 16, 2018 2:20pm - 3:10pm EET
1. Alfa

3:30pm EET

James Nugent @jen20 - Infrastructure as TypeScript
For almost a decade "Infrastructure as Code" has been a DevOps buzzword - but the myriad tools in share a dirty little secret... there's no actual code! Few people like "programming" YAML or JSON (even the human-friendly variants!), and even fewer like having to reverse-engineer ways to apply known good development practices to tools which resist it at all cost.

So, what if things were different,and programming infrastructure was more like real programming, with real programming languages like TypeScript? What if you defined Lambda functions by actually writing lambdas, created abstractions using complex types, and could take advantage of existing tools for modularity, linting, refactoring and testing?

Enter Pulumi, an open-source deployment engine which enables all these things using TypeScript, Python or Go!

In this talk, we'll look at how you can write TypeScript code using Pulumi to provision traditional cloud infrastructure, manage Kubernetes and build portable "serverless" applications - all with minimal YAML in sight! We'll look at deploying to multiple regions of the same cloud, and how to build abstractions allowing multi-cloud to be a reality.


Speakers

Friday November 16, 2018 3:30pm - 4:20pm EET
2. Beta
  Session

3:30pm EET

[SLIDES]Irma Spudienė & Augustas Nekrošius - Master Data API story: REST is dead, long live GraphQL?
Master data is critical information for operational and analytical decision-making within a large financial organization. In the case of SEB, Master Data includes customer, products and business arrangements information which is shared internally across our company’s systems yet externally to regulators. As part of transforming our Master Data domain we are re-designing the service interface towards our consumers. One of most popular approaches is to use REST web services for API. But what if we could have a more flexible solution when it comes to the clients’ ability to pick the data they are interested in by not having to build several consumer specific end-points? GraphQL - a very interesting REST alternative - allows the consumer of the API to specify what data it needs and limits the over-fetching or under-serving you can get with REST. During the presentation, we will explain the concepts architects and developers need to understand and talk about challenges you may face when adopting GraphQL. Furthermore, we will provide a demonstration of how REST and GraphQL coexist in our solution. Or maybe we intend to replace REST with GraphQL? Let's discuss!

Speakers
avatar for Augustas Nekrošius

Augustas Nekrošius

Data Engineer, SEB Global Services
Augustas Nekrošius began his career at the University of Vilnius as a physicist and lab engineer. Understanding the importance of the data, he took a challenge to automate the experiments and their analysis for higher productivity and reproducibility. He then further progressed by... Read More →
avatar for Irma Spudienė

Irma Spudienė

IT Solutions Architect, SEB Global Servises
Irma Spudienė is neither evangelist nor a champion – just a regular human being with a passion for deep diving into various IT challenges and finding the best solutions for them. Beginning her career as a Java developer around 10 years ago, now she is IT Solutions Architect. She... Read More →



Friday November 16, 2018 3:30pm - 4:20pm EET
5. Zeta
 
Saturday, November 17
 

9:00am EET

(PART1) Ian Cooper - Practical Messaging
Limited Capacity seats available

Increasingly developers are relying on distributed architectures to solve the problems of scaling their applications and their development teams. But that means they now have to consider the problem of getting the parts of their systems to talk to each other.In this tutorial, we will look at why asynchronous messaging is often the preferred solution to the problems of integrating and distributed solution, and look at the implementation of common messaging patterns.
If you have ever been put off moving from RPC-based solutions to messaging because of the need to learn how to implement messaging based solutions, this workshop will get you started. if you have been using messaging but want to gain a firmer understanding
The session will be a hands-on introduction and take you from simple messaging scenarios like "Hello World" through to more complex ideas like routing, brokers, and publish-subscribe.

Topics covered will include:
Day 1: Messaging Architectures and Simple Patterns
  • Integration Styles
  • Why Prefer Messaging?
  • Decoupled Invocation
  • Work Queues
  • Messaging Systems
  • Pipes and Filters Architectures
  • Channels, Endpoints, Routers
  • Types of Messages
  • Command. Events, & Documents
  • Request-Reply
  • Channels
  • Point-to-Point
  • Publish-Subscribe
  • Data Type Channel
  • Invalid Message Channel
  • Dead Letter Channel
  • Endpoints
  • Polling Consumers
  • Event Driven Consumers
  • Competing Consumers
  • Service Activator
Day 2: Distributed Systems Advanced Patterns
  • Routers
  • Content Based Router
  • Routing Slip
  • Process Manager
  • Management
  • Message Store
  • Control Bus
  • Reliability
  • CAP Theorem
  • Eventual Consistency
  • Guaranteed Delivery
  • At Least Once
  • Exactly Once
  • Durability & Persistence
  • Rabbit MQ Clusters
  • .NET Frameworks
  • Brighter
  • Mass Transit
  • NServiceBus
  • Message Oriented Middleware
  • Rabbit MQ
  • Redis
  • RDBMS
  • Kafka
  • SQS + SNS
  • Kinesis
  • Azure Service Bus
There will be hands on coding exercises in .NET and Python enabling you to implement simple and more complex messaging scenarios.
Computer setup: 
We will use Rabbit MQ for examples. You need not have the latter installed on your machine, but you should have Docker installed on your machine, as exercises will use Docker Compose.

Speakers
avatar for IAN COOPER

IAN COOPER

Polyglot Coding Architect, JustEat
Polyglot Coding Architect in London, founder of #ldnug, speaker, tabletop gamer, geek. Tattooed, pierced, and bearded. The 'guv' on @BrighterCommand


Saturday November 17, 2018 9:00am - 5:00pm EET
4. Lambda
  Workshop

9:00am EET

(PART1) Jimmy Bogard & Adam Ralph - SOA Done Right (with examples in ASP.NET and NServiceBus)
Limited Capacity seats available

Go beyond the hype and build a solid foundation of theory and practice with this workshop on SOA development.

Join Adam Ralph and Jimmy Bogard for a two-day deep dive covering architectural topics like:

- UI decomposition
- Data ownership across the enterprise
- Finding service boundaries

You’ll also learn the nitty-gritty details of building production-ready systems including:

- Fault tolerance – HTTP and queues
- Reliable integration with 3rd party systems
- Scalability, high availability & monitoring

Finally, get some hands-on experience in SOA development by building:

- Scalable command-processing endpoints
- Publish/subscribe event-processing interactions
- Long-running multi-stage business processes and policies

## Objectives

We’ll understand service oriented architecture concepts, and DDD concepts such as bounded contexts and data ownership.

We’ll apply those concepts to build a simple, yet fully functional, order management system sample with a microservices architecture, using patterns such as command processing, pub/sub and long-running sagas.

## Skill Level

Senior developers, tech leads, and architects will benefit most from this workshop.

## Computer setup

Participants are requested to bring a Windows laptop with Visual Studio 2017 and to follow the full set up instructions at least one week before the workshop, available at https://github.com/Particular/Workshop/blob/master/README.md 

Speakers
avatar for JIMMY BOGARD

JIMMY BOGARD

Creator of OSS library AutoMapper, Headspring
Jimmy is a member of the ASPInsiders group, the C# Insiders group, and received the "Microsoft Most Valuable Professional" (MVP) award for ASP.NET in 2009-2018. Jimmy is also the creator and maintainer of the popular OSS library AutoMapper.
avatar for Adam Ralph

Adam Ralph

Distributed systems guy, Particular Software
Adam is a distributed systems enthusiast and digital nomad. He works for Particular Software, the makers of NServiceBus. Adam has designed and maintained complex software systems at several companies in the finance industry. He's seen both the good and the bad that can come from applying... Read More →


Saturday November 17, 2018 9:00am - 5:00pm EET
1. Alfa
  Workshop

9:00am EET

Philipp Krenn - Monitor Your Applications with Logs, Metrics, Pings, and Traces
Limited Capacity seats available

"With microservices every outage is like a murder mystery" is a common complaint. But it doesn't have to be! This workshop gives an introduction on how to monitor distributed applications with open source tools and in particular the Elastic Stack (previously ELK Stack).
We dive into:
* System metrics: Keep track of network traffic and system load.
* Application logs: Collect structured logs in a central location.
* Uptime monitoring: Ping services and actively monitor their availability and response time.
* Application metrics: Get the information from the applications' metrics and health endpoints via REST or JMX.
* Request tracing: Use Sleuth to trace requests through a distributed system and Zipkin to show how long each call takes.

Speakers
avatar for Philipp Krenn

Philipp Krenn

Developer Advocate, Elastic
Philipp lives to demo interesting technology. Having worked as a web, infrastructure, and database engineer for more than ten years, Philipp is now working as a developer advocate at Elastic — the company behind the open source Elastic Stack consisting of


Saturday November 17, 2018 9:00am - 5:00pm EET
6. Theta
  Workshop
 
Sunday, November 18
 

9:00am EET

(PART2) Ian Cooper - Practical Messaging
Limited Capacity seats available

Increasingly developers are relying on distributed architectures to solve the problems of scaling their applications and their development teams. But that means they now have to consider the problem of getting the parts of their systems to talk to each other.In this tutorial, we will look at why asynchronous messaging is often the preferred solution to the problems of integrating and distributed solution, and look at the implementation of common messaging patterns.
If you have ever been put off moving from RPC-based solutions to messaging because of the need to learn how to implement messaging based solutions, this workshop will get you started. if you have been using messaging but want to gain a firmer understanding
The session will be a hands-on introduction and take you from simple messaging scenarios like "Hello World" through to more complex ideas like routing, brokers, and publish-subscribe.

Topics covered will include:
Day 1: Messaging Architectures and Simple Patterns
  • Integration Styles
  • Why Prefer Messaging?
  • Decoupled Invocation
  • Work Queues
  • Messaging Systems
  • Pipes and Filters Architectures
  • Channels, Endpoints, Routers
  • Types of Messages
  • Command. Events, & Documents
  • Request-Reply
  • Channels
  • Point-to-Point
  • Publish-Subscribe
  • Data Type Channel
  • Invalid Message Channel
  • Dead Letter Channel
  • Endpoints
  • Polling Consumers
  • Event Driven Consumers
  • Competing Consumers
  • Service Activator
Day 2: Distributed Systems Advanced Patterns
  • Routers
  • Content Based Router
  • Routing Slip
  • Process Manager
  • Management
  • Message Store
  • Control Bus
  • Reliability
  • CAP Theorem
  • Eventual Consistency
  • Guaranteed Delivery
  • At Least Once
  • Exactly Once
  • Durability & Persistence
  • Rabbit MQ Clusters
  • .NET Frameworks
  • Brighter
  • Mass Transit
  • NServiceBus
  • Message Oriented Middleware
  • Rabbit MQ
  • Redis
  • RDBMS
  • Kafka
  • SQS + SNS
  • Kinesis
  • Azure Service Bus
There will be hands on coding exercises in .NET and Python enabling you to implement simple and more complex messaging scenarios.
Computer setup: 
We will use Rabbit MQ for examples. You need not have the latter installed on your machine, but you should have Docker installed on your machine, as exercises will use Docker Compose.

Speakers
avatar for IAN COOPER

IAN COOPER

Polyglot Coding Architect, JustEat
Polyglot Coding Architect in London, founder of #ldnug, speaker, tabletop gamer, geek. Tattooed, pierced, and bearded. The 'guv' on @BrighterCommand


Sunday November 18, 2018 9:00am - 5:00pm EET
4. Lambda
  Workshop

9:00am EET

(PART2) Jimmy Bogard & Adam Ralph - SOA Done Right (with examples in ASP.NET and NServiceBus)
Limited Capacity seats available

Go beyond the hype and build a solid foundation of theory and practice with this workshop on SOA development.

Join Adam Ralph and Jimmy Bogard for a two-day deep dive covering architectural topics like:

- UI decomposition
- Data ownership across the enterprise
- Finding service boundaries

You’ll also learn the nitty-gritty details of building production-ready systems including:

- Fault tolerance – HTTP and queues
- Reliable integration with 3rd party systems
- Scalability, high availability & monitoring

Finally, get some hands-on experience in SOA development by building:

- Scalable command-processing endpoints
- Publish/subscribe event-processing interactions
- Long-running multi-stage business processes and policies

## Objectives

We’ll understand service oriented architecture concepts, and DDD concepts such as bounded contexts and data ownership.

We’ll apply those concepts to build a simple, yet fully functional, order management system sample with a microservices architecture, using patterns such as command processing, pub/sub and long-running sagas.

## Skill Level

Senior developers, tech leads, and architects will benefit most from this workshop.

## Computer setup

Participants are requested to bring a Windows laptop with Visual Studio 2017 and to follow the full set up instructions at least one week before the workshop, available at https://github.com/Particular/Workshop/blob/master/README.md 

Speakers
avatar for JIMMY BOGARD

JIMMY BOGARD

Creator of OSS library AutoMapper, Headspring
Jimmy is a member of the ASPInsiders group, the C# Insiders group, and received the "Microsoft Most Valuable Professional" (MVP) award for ASP.NET in 2009-2018. Jimmy is also the creator and maintainer of the popular OSS library AutoMapper.
avatar for Adam Ralph

Adam Ralph

Distributed systems guy, Particular Software
Adam is a distributed systems enthusiast and digital nomad. He works for Particular Software, the makers of NServiceBus. Adam has designed and maintained complex software systems at several companies in the finance industry. He's seen both the good and the bad that can come from applying... Read More →


Sunday November 18, 2018 9:00am - 5:00pm EET
1. Alfa
  Workshop

9:00am EET

Yan Cui - Production-Ready Serverless: operational patterns and practices
Limited Capacity seats available

Getting started with AWS Lambda is easy, but understanding the operational challenges and tradeoffs is a much more nuanced topic, and one that you need to grasp before you can be confident in operating a serverless architecture responsibly. Come to this workshop and learn all about Serverless ops.

Speakers
avatar for Yan Cui

Yan Cui

Principal Engineer, DAZN
Yan is an experienced engineer who has run production workload at scale in AWS for nearly 10 years. He has been an architect and principal engineer with a variety of industries ranging from banking, e-commerce, sports streaming to mobile gaming. He has worked extensively with AWS... Read More →


Sunday November 18, 2018 9:00am - 5:00pm EET
8. Epsilon
  Workshop
 


Filter sessions
Apply filters to sessions.