• Platform 1

  • Platform 2

  • Platform 3

  • Blue Tent

  • Green Tent

  • Magenta Tent

CRAFT is about software craftsmanship, presenting which tools, methods, practices should be part of the toolbox of a modern developer and company, and serving as compass on new technologies, trends. You can learn from the best speakers and practitioners in our community.

April 26-27 will be workshop days.
On April 28-29 we are going to have speaker sessions.

You can find all the videos from our last event on the following Ustream channels: Light Room, Garage, Tent, Main Room.

Location

Magyar Vasúttörténeti Park

The Magyar Vasúttörténeti Park (Hungarian Railway History Park) is a railway museum located in Budapest, Hungary at a railway station and workshop of the Hungarian State Railways. Located on the site of the former north depot of the Hungarian State Railway (MÁV), the Hungarian Railway Museum is Europe’s first interactive museum of its kind. The north depot’s roundhouse, home to the museum, was built in 1911 and is also part of Hungarian railway history. There are over a hundred vintage trains, locomotives, cars and other types of railroad equipment on display, including a steam engine built in 1877, a railcar from the 1930’s and a dining car built in 1912 for the famous Orient Express.

On 28th and 29th of April there will be direct Craft trains in the morning from Budapest-Nyugati Railway Terminal to the venue, and in the evening from the venue to Budapest-Nyugati Railway Terminal, so we recommend to find a hotel near to Budapest-Nyugati Railway Terminal.

Need an accommodation?
Find a local host on Airbnb
Book a hotel room.

Please note that the workshops are on different locations, you will find the location later at the description of the given workshop.

Transport timetables


Craft express (Free)
April 28Nyugati terminal → Venue: 07:49
Venue → Nyugati terminal: 19:50
April 29Nyugati terminal → Venue: 08:12
Venue → Nyugati terminal: 19:21
Public Train
April 29Nyugati terminal → Venue: 08:20, 08:54
Venue → Nyugati terminal: 20:30, 21:30, 22:30
April 29Nyugati terminal → Venue: 08:20, 08:54
Craft Bus (Free)
April 28Venue → Gyöngyösi utca: 16:00 - 24:00 (every ten minutes)
April 29Venue → Gyöngyösi utca: 16:00 - 20:00 (every ten minutes)
TAXI
+36 1 200 00 00
+36 1 666 66 66
Please enjoy one complementary ride in the value of 1000 HUF, courtesy of Uber ATC. Use the code UberATC16 between April 25 – April 29.

Speakers

  • Adam Tornhill

    Adam Tornhill

    Author of Your Code as a Crime Scene

    Thursday (Session Day 1) — 11:05 - 11:50Seven Secrets of Maintainable Codebases

    Seven Secrets of Maintainable Codebases

    In this session you'll learn novel techniques that help you make sense of large codebases. You'll learn to identify the code that really matters for your ability to maintain a codebase, how to prioritize improvements and even evaluate your architecture based on how you actually work with the code. We'll also cover the people side of programming as you learn to mine social information such as communication paths, developer knowledge and hotspots.

    All techniques are based on software evolution. They use data from the most underused informational source that we have in our industry: our version-control system. Each point is illustrated with a case study from a well-known codebase like Roslyn, ASP.NET MVC, Scala or Clojure. This is a new perspective on software development that will change how you work with large systems. Come join the hunt for better code!

    Adam is a programmer that combines degrees in engineering and psychology. He’s the founder of Empear AB where he designs tools for software analysis. He's also the author of Your Code as a Crime Scene, has written the popular Lisp for the Web and self-published a book on Patterns in C. His other interests include modern history, music and martial arts.

  • Adrian Cockcroft

    Adrian Cockcroft

    Battery Venture

    Thursday (Session Day 1) — 12:00 - 12:45The Evolution of Microservices

    The Evolution of Microservices

    Where did microservice architectures come from and where are they going? Architecture patterns are optimizations based on assumptions about what is expensive or difficult vs. what is cheap or easy. As technology evolves things that were formerly hard to do become trivial, and a disconnect arises that causes old architectural and organizational patterns to become obsolete, and new ones to appear. Over the last few years cloud and containerization have driven a move to microservice architectures, serverless deployments and integrated DevOps based organizations.

    Products, the organizations that build them and the architectures that implement them all need to be able to evolve as they adapt to changes on shorter and shorter timescales. This talk will describe how to simulate and visualize large scale microservices deployments in a few seconds.

    Adrian Cockcroft has had a long career working at the leading edge of technology. He’s always been fascinated by what comes next, and he writes and speaks extensively on a range of subjects. At Battery, he advises the firm and its portfolio companies about technology issues and also assists with deal sourcing and due diligence.

    Before joining Battery, Adrian helped lead Netflix’s migration to a large scale, highly available public-cloud architecture and the open sourcing of the cloud-native NetflixOSS platform. Prior to that at Netflix he managed a team working on personalization algorithms and service-oriented refactoring.

    Adrian was a founding member of eBay Research Labs, developing advanced mobile applications and even building his own homebrew phone, years before iPhone and Android launched. As a distinguished engineer at Sun Microsystems he wrote the best-selling “Sun Performance and Tuning” book and was chief architect for High Performance Technical Computing.

    He graduated from The City University, London with a Bsc in Applied Physics and Electronics, and was named one of the top leaders in Cloud Computing in 2011 and 2012 by SearchCloudComputing magazine. He can usually be found on Twitter @adrianco.

  • Adrian Mouat

    Adrian Mouat

    Container Solutions

    Friday (Session Day 2) — 17:05 - 17:50Container Orchestration with Kubernetes, Docker Swarm and Mesos/Marathon

    Container Orchestration with Kubernetes, Docker Swarm and Mesos/Marathon

    In this talk, I'll compare and contrast the major platforms for running Docker containers, focussing on Kubernetes, Docker Swarm and Mesos/Marathon.

    I'll use a simple web application as a running example, adapting it to run on each of the platforms in turn. This will allow us to drill down into details of the platforms and highlight their comparative advantages and disadvantages.

    Adrian Mouat is Chief Scientist at Container Solutions and the author of the recently released O'Reilly book Using Docker. He has been a professional software developer for over 10 years, working on a wide range of projects from small webapps to large data mining platforms.

  • Ágnes Vásárhelyi

    Ágnes Vásárhelyi

    alltheflow.com

    Friday (Session Day 2) — 16:10 - 16:55Inspired by FRP

    Inspired by FRP

    Functional reactive programming was born in the '90s and is all about simple, precise semantics and continuous time. Not exactly what most of us face in our code every day. What we usually mean when discussing FRP is implementing reactive programming concepts and turning code declarative with the help of functional primitives. Wondering what’s the relation between the original idea and today’s plenty implementation inspired by it, like Rx?

    After learning, working, and falling in love with reactive programming and declarative style, I have quite some thoughts to share about the ups and downs of building a production app with (F)RP deeply involved. How it makes code clean, more concise, less error-prone, bit difficult to test and really hard to debug.

    Steep learning curve has some additional meaning in this case, adjustments might be necessary when adopting, and not just on the code level. Its inherited fundamentals are not trivial to implement in imperative, object oriented environments, like most of the commonly used languages. Especially on a platform with limited resources like mobile, success with (F)RP depends on, and is very sensitive to the existence of various conditions when introducing it to our code. It’s crucial to understand the prerequisites and to measure the possible benefits for the given context in advance, otherwise it's easy to end up with an asynchronous mess of code with performance issues.

    Agnes Vasarhelyi (@vasarhelyia) is an iOS developer in love with open source. She likes to build up software from streams of values and automate things in the meantime. Her blog tells you about reactive programming and her tweets about organizing community events.

  • Amber Case

    Amber Case

    caseorganic.com

    Friday (Session Day 2) — 12:00 - 12:45Calm Technology - Principles and Patterns for Non-Intrusive Design

    Calm Technology - Principles and Patterns for Non-Intrusive Design

    Our world is made of information that competes for our attention. What is needed? What is not? We cannot interact with our everyday life in the same way we interact with a desktop computer. The terms calm computing and calm technology were coined in 1995 by PARC Researchers Mark Weiser and John Seely Brown in reaction to the increasing complexities that information technologies were creating. Calm technology describes a state of technological maturity where a user’s primary task is not computing, but being human. The idea behind Calm Technology is to have smarter people, not things. Technology shouldn’t require all of our attention, just some of it, and only when necessary.

    How can our devices take advantage of location, proximity and haptics to help improve our lives instead of get in the way? How can designers make apps “ambient” while respecting privacy and security? This talk will cover how to use principles of Calm Technology to design the next generation of connected devices. We’ll look at notification styles, compressing information into other senses, and designing for the least amount of cognitive overhead. Here's the Amazon link for the book: Calm Technology: Principles and Patterns for Non-Intrusive Design

    Amber Case is an entrepreneur and researcher helping Fortune 500 companies design, build, and think about connected devices. She is the former co-founder and CEO of Geoloqi, a location-based software company acquired by Esri in 2012. She spoke about the future of the interface for SXSW 2012’s keynote address, and her TED talk, “We are all cyborgs now”, has been viewed over a million times. Named one of National Geographic’s Emerging Explorers, she’s been listed among Inc Magazine’s 30 under 30 and featured among Fast Company’s Most Influential Women in Technology.

    Case is the author of An Illustrated Dictionary of Cyborg Anthropology and Designing Calm Technology from O’Reilly Books (Fall 2015). She is a passionate advocate of privacy and the future of data ownership, and is interested in furthering the ideas of Calm Technology, wearable computing, and the future of the interface. Her current work as Managing Director of Existence at Healthways involves predictive analysis and wellness. Amber lives and works in Portland, Oregon; you can follow her on Twitter @caseorganic and learn more at caseorganic.com.

  • Amir Chaudhry

    Amir Chaudhry

    Docker

    Thursday (Session Day 1) — 16:10 - 16:55Unikernels: How we got here and where we're going

    Unikernels: How we got here and where we're going

    Word of Unikernels is beginning to spread, especially the benefits around their lean size and portability. Attributes like these allow developers to make the most use of hardware resources while still providing a seamless experiences for end-users.

    This talk will present a brief overview of how cloud computing looks today and how we got here. Then we'll cover the basics of unikernels and some of the implementations that are available to use today before looking at some specific demos. There will be plenty of time for questions!

    Talk objectives:
    • Provide background and overview of unikernels
    • Demonstrate the many ways to get started with this approach to programmable infrastructure
    • Allow enough time for audience participation/questions!

    Target audience:
    • Anyone interested in where cloud computing is going. This includes people thinking of containers, orchestration, security.
    • Anyone interested in approaches that span both the cloud and embedded systems (e.g. IoT).

    Amir works at Docker and was previously Programme Manager in the OCaml Labs group at the Cambridge Computer Laboratory. Most of his time is spent on open source efforts and he's a big fan of automation (testing, deployment, etc). He's previously been involved in a number of startups and has a diverse academic background with an MSci in Physics and a PhD in Neuroscience.

  • Andrew Clay Shafer

    Andrew Clay Shafer

    Pivotal

    Thursday (Session Day 1) — 16:10 - 16:55Architecture, I do not think it means what you think it means

    Architecture, I do not think it means what you think it means

    Everyone seems to have an intuitive understanding of ‘architecture’ as the process and product of planning, designing, and constructing. The problem is most people don’t have the same understanding which leads to disagreements about what the process and product entails. The transition from software shipped on physical media to software delivered as services further complicated the conversation as operating services introduces other factors that must be considered on an ongoing basis. These misunderstandings have only been exacerbated as greater speed and scale create new problems necessitating novel emergent solutions. This presentation will attempt to highlight the need for new language with dense semantics about the emerging architectures (because just saying ‘microservices’ is causing more problems than it solves) while also pointing out that many of the struggles people have delivering software are rooted in architecture. Barbecued sacred cows and references to Conway’s Law are highly probable.

    Andrew draws on a background in system automation, agile methods and web operations to transition organizations to next generation cloud infrastructure at Cloudscaling. Andrew Co-founded Reductive Labs, where he helped organizations build better systems with Puppet. He coined the term 'Agile Infrastructure' and contributed a chapter to the O'Reilly book Web Operations (The one with barracuda on the cover. That's right, barracuda...).

    Andrew has over 15 years working with technology but he is always trying to explore new and better ways to solve problems. He doesn't claim to have all the answers, but hopes he can help people ask better questions. Andrew is more and more frequently given the opportunity to talk on his experience and ideas about managing software and systems. He is infrequently asked to stop talking.

  • António Monteiro

    António Monteiro

    TU Dresden

    Friday (Session Day 2) — 11:05 - 11:50Clients in control: building demand-driven systems with Om Next

    Clients in control: building demand-driven systems with Om Next

    Traditional architectures are no longer suitable for the increasing needs of today's applications. The price is often paid in high bandwidth and reduced performance. Demand-driven design enables clients to request arbitrary data on demand. Companies like Facebook and Netflix have switched to demand-driven architectures to better embrace a great variety of continuously changing clients. Solutions like Relay and Falcor/JSONGraph distill such ideas. Om Next builds on these concepts to provide a Clojure(Script) based solution. Having clients be in control, we can design dynamic endpoints that run demand-driven queries directly.

    In this talk, I present the motivation for a demand-driven approach and explore the solutions that Om Next brings to the table.

    António is a software engineer currently studying Distributed Systems Engineering at TU Dresden, Germany. He’s fascinated by functional programming and Clojure in particular. He has lately been helping companies build new, demand-driven systems using Om Next.

  • Bart De Smet

    Bart De Smet

    Microsoft

    Friday (Session Day 2) — 14:05 - 14:50Under the hood of the C# programming language

    Under the hood of the C# programming language

    Ever wondered how your favorite C# language features come to life but always thought compiler source code is frightening to look at? Then this talk is for you, so fasten your seatbelts for a deep dive look under the covers of the C# language! In this talk we won’t bore you to death with slides but jump into the code right away and start dissecting various C# language features by stepping through the Roslyn compiler source code. As a bonus, we’ll throw in an early peek at C# 7.0 candidate language features.

    Bart De Smet is a Principal Software Development Engineer working on large scale stream processing systems in the Applications and Services Division at Microsoft Corporation, a course and book author. In his current role at Microsoft, he’s overseeing the architecture, design, and implementation of event processing systems that run at massive scale in data centers, as well as on cloud-connected devices. One of the publicly visible technologies powered by this infrastructure is Cortana. Prior to joining the Applications and Services Division, Bart was involved with the design and implementation of Reactive Extensions for .NET (Rx) and on an extended "LINQ to Anything" mission back in the SQL organization. His main interests include programming languages, runtimes, functional programming, and all sorts of theoretical foundations. Before joining the company, Bart was a C# MVP for four years, while completing his Master of Civil Engineering and Computer Science studies at Ghent University, Belgium. Bart is also the author of the C# 5.0 Unleashed book (and its predecessor) by SAMS, and an author of online courses at Pluralsight for topics such as C# language internals.

  • Boaz Avital

    Boaz Avital

    Twitter

    Friday (Session Day 2) — 15:00 - 15:45Providing Flexible Database Consistency Levels with Manhattan at Twitter

    Providing Flexible Database Consistency Levels with Manhattan at Twitter

    Manhattan is Twitter’s primary distributed key-value store. This talk will cover the general architecture of the storage system, along with the motivations, tradeoffs and benefits of highly-available eventual consistency. You will learn about some of the challenges presented by the proliferation of use cases in a multitenant environment. We will then discuss the practicalities and surprises in evolving an eventually consistent database to provide strongly consistent capabilities.

    Boaz Avital (@bx) is the tech lead for Core Storage and one of the original engineers on the Manhattan team at Twitter. His work at Twitter has been primarily focused around building a distributed database from the ground up to support one of the highest traffic websites on the internet.

  • Bodil Stokke

    Bodil Stokke

    Trading Technologies

    Thursday (Session Day 1) — 16:10 - 16:55The Miracle of ES6 Generators (hands-on session)

    The Miracle of ES6 Generators (hands-on session)

    The ECMAScript 2015 specification introduced iterators, which generalise iteration over common data structures, as well as providing an interface for allowing you to iterate over any custom data structures using common language constructs. ES2015 also introduced generator functions, which make writing arbitrary iterators a lot easier and less boilerplatey.

    But generators aren’t just for making simple iterators over data structures. Because they’re bidirectional—they don’t only produce output, they can also take input—they’re actually coroutines, which means there’s no end to the sort of fun you can apply them to. We’re going to explore how we can use them to make asynchronous programming in JavaScript a lot more elegant—to chart a path out of callback hell. And then we’re going to take a look at what we’ve really discovered: one of the most fearsome mysteries of computer science, suddenly laid bare before us.

    Hands-on session talk: 90 minutes long, code heavy, practical session

    Born into an aristocratic Russian-German family, Bodil traveled widely around the Soviet Union as a child. Largely self-educated, she developed an interest in computer science during her teenage years. According to her later claims, in 1989 she embarked on a series of world travels, visiting Europe, the Americas, and India. She alleged that during this period she encountered a group of mathematical adepts, the "Haskell Language and Library Committee," who sent her to Glasgow, Scotland, where they trained her to develop her powers of category theory. Both contemporary critics and later biographers have argued that some or all of these foreign visits were fictitious, and that she spent this period writing JavaScript.

    Bodil was a controversial figure during her lifetime, championed by supporters as an enlightened guru and derided as a fraudulent charlatan by critics. Her doctrines influenced the spread of Homotopy Type Theory in the West as well as the development of Western computer science currents like dependent types, blockchains and isomorphic JavaScript.

  • Bora Tunca

    Bora Tunca

    SoundCloud

    Friday (Session Day 2) — 16:10 - 16:55SoundCloud’s Toolbox for Microservices

    SoundCloud’s Toolbox for Microservices

    At SoundCloud we managed to break away from the monolith while delivering key business features. Our journey towards a microservices architecture has not been a straightforward one. We experimented a lot to reach the set of tools and technologies that we use today. We changed how we build our applications. We introduced specific apis for our mobile and web clients. We call them BFFs (backend for the frontend). They became the central piece of SoundCloud’s architecture. We rethought how we monitor our services. We created a service registry for knowledge sharing. While making all these changes, we benefited from the learnings of our peer companies. This talk will share our learnings from this journey: what worked for us and what we moved away from.

    Bora is a software developer at SoundCloud. He started his journey there two and a half years ago. As a generalist, he has worked on various parts of their architecture. Nowadays he is part of the Core Engineering, where he helps to build and integrate the core business services of SoundCloud. When he's not juggling various languages, he's playing basketball - as long as someone on the team covers his on-call shifts...

  • Bridget Kromhout

    Bridget Kromhout

    Pivotal

    Thursday (Session Day 1) — 14:05 - 14:50Containers will not fix your broken culture (and other hard truths)

    Containers will not fix your broken culture (and other hard truths)

    Containers will not fix your broken culture. Microservices won’t prevent your two-pizza teams from needing to have conversations with one another over that pizza. No amount of industrial-strength job scheduling makes your organization immune to Conway’s Law.

    Does this mean that devops has failed? Not in the slightest. It means that while the unscrupulous might try to sell us devops, we can’t buy it. We have to live it; change is a choice we make every day, through our actions of listening empathetically and acting compassionately. Iterative improvement starts somewhere for us all; let’s talk about it.

    Tools are essential, but how we implement the tools and grow the culture and practices in our organizations needs even more attention. Whether you’re just starting to implement technical and organizational change, or facing the prospect that you already have legacy microservices, it’s worth considering the why and the how of our behaviors, not just the what.

    Making thoughtful decisions about tools and architecture can help. Containers prove to be a useful boundary object, and deconstructing systems to human-scale allows us to comprehend their complexity. We succeed when we share responsibility and have agency, when we move past learned helplessness to active listening. But there is no flowchart, no checklist, no shopping list of ticky boxes that will make everything better. “Anyone who says differently is selling something”, as The Princess Bride teaches us. Instead, let’s talk about practical, actionable steps that will help. How do we evaluate our progress? How do we know when to course-correct? How do we react when it seems like there’s always something new we should have done last month?

    Bridget Kromhout is a Principal Technologist for Cloud Foundry at Pivotal. Her CS degree emphasis was in theory, but she now deals with the concrete (if ‘cloud’ can be considered tangible). After years in site reliability operations (most recently at DramaFever), she traded in oncall for more travel. A frequent speaker at tech conferences, she helps organize the AWS and devops meetups at home in Minneapolis, serves on the program committee for Velocity, and acts as a global core organizer for devopsdays. She podcasts at Arrested DevOps, occasionally blogs at bridgetkromhout.com, and is active in a Twitterverse near you.

  • Caitie McCaffrey

    Caitie McCaffrey

    Twitter

    Friday (Session Day 2) — 11:05 - 11:50Building Scalable Stateful Services

    Building Scalable Stateful Services

    The Stateless Service design principle has become ubiquitous in the tech industry for creating horizontally scalable services. However our applications do have state, we just have moved all of it to caches and databases. Today as applications are becoming more data intensive and request latencies are expected to be incredibly low, we’d like the benefits of stateful services, like data locality and sticky consistency. In this talk I will address the benefits of stateful services, how to build them so that they scale, and discuss distributed and scalable services in the real world that implement these techniques successfully.

    Caitie McCaffrey is a Backend Brat and Distributed Systems Diva at Twitter, where she is the Tech Lead of the Observability Team. Prior to that she spent the majority of her career building large scale services and systems that power the entertainment industry at 343 Industries, Microsoft Game Studios, and HBO. Caitie has a degree in Computer Science from Cornell University, and has worked on several video games including Gears of War 2, Gears of War 3, Halo 4, and Halo 5 She maintains a blog at CaitieM.com and frequently discusses technology on Twitter @caitie

  • Charity Majors

    Charity Majors

    Facebook

    Friday (Session Day 2) — 14:05 - 14:50DevOps for Developers: Building an Effective Ops Org

    DevOps for Developers: Building an Effective Ops Org

    The dirty little secret about DevOps is that everybody talks about what it means for operations teams, and hardly anybody talks about what it means for software engineers. Which is possibly even more important!

    Operations is not really a dedicated role, it is more like a social contract. Your ops org consists of all the skills, habits, tribal knowledge, and cultural values you have built up around delivering software, and every single engineer (and execs, and customer support) participates in this org. Engineering teams tend to struggle when software engineers don't have the operational skills they need to truly own their own services, and don't know how to learn those skills, and may not even understand why they should care.

    So: how do you help your software engineers develop their ops muscles? How do you interview and hire for engineers who will enthusiastically co-create a vibrant ops culture? How do you identify and reward the heroes doing the silent, unsung work of paying down technical debt and shipping stable software? We'll talk about how to create the kind of tight feedback loops that help engineers improve their craft, prevent burnout, and encourage a healthy, fun, collaborative culture of operational excellence.

    Charity is a systems engineer at Parse/Facebook and is happily building out the next generation of mobile platform technology.

    Charity is co-author of O’Reilly Media’s Databases at Scale.

  • Corey Haines

    Corey Haines

    Hearken

    Friday (Session Day 2) — 16:10 - 16:55All you need is a lambda (hands-on session)

    All you need is a lambda (hands-on session)

    So, you've heard people proclaim "All you need is a lambda, and you can make all the other stuff" or "everything is a function." But what does that really mean? In this live-coding talk, we'll explore these ideas by starting with the identity (a function that returns its argument with no change) and make our way to explore what is possible, making our way through lists and numbers. We might even mention in passing some things like the K combinator. Of course, we'll do this all using a test-driven development approach. This whirlwind talk is entirely live-coded, but don't worry, I'll make sure the font is big enough to see from the back.

    Hands-on session talk: 90 minutes long, code heavy, practical session

    Corey loves to code. He also loves to speak. This is an opportunity to mix these two passions. Best known for his journeyman tour and co-founding the coderetreat community, Corey continues to help developers discover ways to continue on the path of awesome development. Lately, he has been focused on effective, maintainable design through a better understanding of the fundamentals of writing code. He is the author of the book, Understanding the 4 Rules of Simple Design, and an upcoming book on The Lambda Calculus.

  • Dan North

    Dan North

    Dan North & Associates

    Friday (Session Day 2) — 11:05 - 11:50Microservices: software that fits in your head

    Microservices: software that fits in your head

    Applications get complicated fast. Most of good architecture and design practise is about trying to slow the rate at which software gets complicated. You can’t stop it, it’s a form of entropy. You can only slow it down and do your level best to stay on top of things.

    One way to manage the mess is to maximise the likelihood that everyone knows what’s going on in the codebase. This requires two things: consistency and replaceability. Consistency implies you can reason about the application at various level of detail. Replaceability means you can kill code easily and replace it with something better.

    Dan argues that code should either be new enough that someone remembers writing it, or well-enough established that everyone knows how it works. It’s code in that awkward middle stage, between brand new and part-of-the-furniture, that gets forgotten about and starts to smell. If code is going to die it should die quickly. If it is going to stick around it should be stable.

    In this talk, Dan describes a model for thinking about the age of code and argues for replaceability as a first class concern. He also discovers that if you optimise for both replaceability and consistency you get something that looks a lot like microservice

    Programmer and organizational change specialist Dan North applies principles from lean operations and agile software development to help organizations align their technology capabilities with their business objectives. With over twenty years of experience in IT, Dan is a frequent speaker at technology conferences worldwide, has published feature articles in numerous software and business publications, and contributed to The RSpec Book: Behaviour Driven Development with RSpec, Cucumber, and Friends and 97 Things Every Programmer Should Know: Collective Wisdom from the Experts. The originator of Behaviour-Driven Development (BDD) and Deliberate Discovery, Dan is currently working on his book, Accelerated Agile – from months to minutes, and helping organizations radically improve their delivery. He blogs at http://dannorth.net/blog.

  • Dan North

    Dan North

    Dan North & Associates

    Thursday (Session Day 1) — 09:05 - 10:05Embracing uncertainty: why you should and why you won’t

    Embracing uncertainty: why you should and why you won’t

    Over the last few years Dan has been working with and studying teams who are dramatically more productive than anything he's ever seen. They produce in weeks what would take other teams months, and iterate in days rather than months. One of the central themes he's observed is their ability to embrace uncertainty, holding multiple contradictory opinions at the same time and deferring commitment until there is a good reason.

    Uncertainty lies at the heart of agile delivery and is one of the primary reasons organisations struggle with agile adoption: it turns out we are desperately uncomfortable with uncertainty, so much so that we will replace it with anything, even things we know to be wrong. In this talk Dan shows how we have turned our back on the original Agile Manifesto and explains why understanding risk and embracing uncertainty is fundamental to effective delivery, and also why it is so scary. He describes how Real Options and Deliberate Discovery can help make life more manageable and invites you to embrace uncertainty. He is pretty sure he won’t succeed.

    Programmer and organizational change specialist Dan North applies principles from lean operations and agile software development to help organizations align their technology capabilities with their business objectives. With over twenty years of experience in IT, Dan is a frequent speaker at technology conferences worldwide, has published feature articles in numerous software and business publications, and contributed to The RSpec Book: Behaviour Driven Development with RSpec, Cucumber, and Friends and 97 Things Every Programmer Should Know: Collective Wisdom from the Experts. The originator of Behaviour-Driven Development (BDD) and Deliberate Discovery, Dan is currently working on his book, Accelerated Agile – from months to minutes, and helping organizations radically improve their delivery. He blogs at http://dannorth.net/blog.

  • Daniel Bryant

    Daniel Bryant

    OpenCredo

    Thursday (Session Day 1) — 14:05 - 14:50Empathy - The Hidden Ingredient of Good Software Development

    Empathy - The Hidden Ingredient of Good Software Development

    When I ask fellow developers what they think about empathy, the answer is often “not much”. However, I believe that the skill of empathy, being able to place yourself in another’s position, is crucial to designing, building and operating software at any scale. Join me for a whistle stop tour of the benefits of empathy, which I have learned from working on a wide variety of software projects over the previous ten years. I will share stories of success and failure, and suggest practical techniques that you can harness in order to help your team develop empathy.

    When gathering requirements and performing business analysis, it is obvious that the ability to experience from within another user/customer/being's frame of reference is a valuable skill, but the same can be said when writing code. If we follow Martin Fowler’s train of thought where “any fool can write code that a computer can understand. Good programmers write code that humans can understand” we can see that empathy is at the heart of this skill. We could also argue that the rise of “DevOps” is simply both sides of the traditional divide trying to understand each other better. Developing the skill of empathy isn’t necessarily easy, but in this talk I will share my learnings, techniques and tricks for developing more effective software.

    Daniel Bryant is a Principal Consultant at OpenCredo, and specialises in enabling agility within organisations. His current work includes introducing better requirement gathering and planning techniques, focusing on the relevance of architecture within agile development, and facilitating continuous integration/delivery. Daniel’s current technical expertise focuses on 'DevOps’ tooling, cloud platforms and microservice implementations. He is also a leader within the London Java Community (LJC), contributes to several open source projects, writes for well-known technical websites, and regularly presents at international conferences such as JavaOne, Devoxx and FOSDEM.

  • Danilo Beuche

    Danilo Beuche

    pure-systems

    Thursday (Session Day 1) — 15:00 - 15:45Versions, Variants, Reuse - Get me out of here!

    Versions, Variants, Reuse - Get me out of here!

    Development is a race with limited sight. Using existing artifacts can give you a strong boost in that race, but often reuse turns against you later in that race. New versions of reused artifacts, support for older release of your product out in the field, different ideas by different clients how the products have to be tailored for them, it can become messy and in the end a lot of work which finally slows you down too much. So reuse isn't that great, is it?

    The talk will give you some insights how to reuse in systematic ways by looking at it from a different perspective. Instead of creating reusable artifacts for later reuse it turns it around and looks at it from the product perspective: features define parts, not the other way around. Deploying systematic reuse and variant management based on the principles of product line engineering will come to help you securing your lead in the (long distance) development race. We'll also cover the important question, when variant management and product line engineering should be the preferred choice for your reuse problem.

    Consultant with experience in development of complex (embedded) systems, object-oriented development, change and requirements management. Main focus is support of product line engineering activities. Specialties: software product line engineering, variant management.

  • Danilo Poccia

    Danilo Poccia

    AWS

    Friday (Session Day 2) — 12:00 - 12:45Connecting the Unconnected: IoT Made Simple

    Connecting the Unconnected: IoT Made Simple

    Connecting physical devices to the cloud can enhance the user experience. AWS IoT is a new managed service that enables Internet-connected things (sensors, actuators, devices, and applications) to easily and securely interact with each other and the cloud. In this session, we will discuss how constrained devices can send data to the cloud and receive commands back to the device. Devices can securely connect using MQTT, HTTP, WebSockets protocols and developers can leverage several features of AWS IoT such as the Rules Engine and Thing Shadows to quickly and easily build a real connected product. This session will take a practical approach to developing real-world IoT and mobile applications in which the back end is serverless and can scale from one to virtually unlimited users without any infrastructure or servers to manage.

    Danilo works with startups and companies of any size to support their innovation. In his role as Technical Evangelist at Amazon Web Services, he leverages his 20 years of experience to help people bringing their ideas to life, focusing on event-driven programming and serverless architectures, and on the technical and business impact of mobile platforms and data analytics.

  • Danilo Poccia

    Danilo Poccia

    AWS

    Thursday (Session Day 1) — 11:05 - 11:50Building Event-driven Serverless Applications (hands-on session)

    Building Event-driven Serverless Applications (hands-on session)

    We built event-driven user interfaces for decades. What about bringing the same approach to mobile, web, and IoT backend applications? You have to understand how data flows and what is the propagation of changes, using reactive programming techniques. You can focus on the core functionalities to build and the relationships among the resources you use. Your application behaves similarly to a “spreadsheet”, where depending resources are updated automatically when something “happens”, and is decomposed into scalable microservices without having to manage the infrastructure. The resulting architecture is efficient and cost effective to run on AWS and managing availability, scalability and security becomes part of the implementation itself.

    Hands-on session talk: 90 minutes long, code heavy, practical session

    Danilo works with startups and companies of any size to support their innovation. In his role as Technical Evangelist at Amazon Web Services, he leverages his 20 years of experience to help people bringing their ideas to life, focusing on event-driven programming and serverless architectures, and on the technical and business impact of mobile platforms and data analytics.

  • Destiny Montague // Rich Smith

    Etsy // Etsy

    Friday (Session Day 2) — 17:05 - 17:50Crafting an Effective Security Organisation

    Crafting an Effective Security Organisation

    Understanding people, and not just technology, is critical in building a successful Security team. Much has been spoken about Etsy's engineering culture, and how continuous deployment and 'devops' have been embraced and developed, but how does security operate in such an environment? This presentation will discuss the progressive approaches taken by the Etsy security team to provide security while not destroying the freedoms of the Etsy engineering culture that are loved so much.

    Discussion will cover the building of an effective security organisation that is people rather than technology centric, and one that positions security to facilitate problem solving with fellow engineers rather than blocking progress through the fear of increased risk. The aim of this discussion is to start a dialogue that will hopefully result in a more honest and inclusive security environment, in contrast to the more common scenario where a false perception of security exists that becomes increasingly divergent from reality as the imposed constraints are actively circumvented.

    The approaches discussed are those that we have found work for Etsy but should not be seen as a one-size-fits-all solution. Every organisation is different and has its own cultural needs, but it is hoped attendees will be able to adapt our learnings to best meet their own organisation and in doing so share these experiences back with the wider community.
    Destiny Montague

    Destiny Montague is a Security Engineer at Etsy. When not solving problems at Etsy, she plays several musical projects including Feathers and her own solo project, Carl Sagan.

    Rich Smith

    Rich Smith, Director of Security Engineering at Etsy, leads a fearless band of cyber-guardians in defending Etsy's members, sellers, and knitted goods from the evils of the Interwebs. Cross-site-stitching and sequin-injection are all taken in stride daily. Prior to his role at Etsy, Rich co-founded Syndis, Iceland’s premier technical security consultancy, where he continues to be an advisor and board member. Rich previously led Kyrus Technology's Commerical Attack Services, held the role of Vice President of Cyber Threat at Morgan Stanley, was a senior researcher at Immunity Inc, and led the Research In Offensive Technologies and Threats group at Hewlett-Packard Research Labs. In his spare time Rich likes beer, noisy music and Python.

  • Diogo Mónica

    Diogo Mónica

    Docker

    Friday (Session Day 2) — 15:00 - 15:45Securing Software Distribution using Notary

    Securing Software Distribution using Notary

    Secure software distribution is a hard problem. A testament to this fact are the thousands of different software update systems in use today, most of which vulnerable to a myriad of attacks that leave the end users potentially vulnerable to compromise.

    One of the major flaws of the existing systems is their inadequate trust revocation mechanisms, providing little to no defense against is key compromise. As a result, key compromises have put millions of software update clients at risk.

    Enter Notary, an application built at Docker that aims to make the internet more secure by making it easy for people to publish and verify content. Notary follows a flexible security framework called TUF (The Update Framework), allowing publishers to sign their content offline and manage their keys securely.

    In this talk I will go over Notary, its security guarantees, TUF and how we've integrated it into Docker, providing the ecosystem with a secure software distribution mechanism out of the box.

    Diogo Mónica is the Security Lead at Docker, an open platform for building, shipping and running distributed applications. He was an early employee at Square where he led the platform security team. He received his BSc and MSc degrees in Communication Networks Engineering and is currently a Security Researcher at the distributed systems group. Diogo also serves on the board of advisors of several security startups and is a long-time IEEE Volunteer.

  • Doc Norton

    Doc Norton

    CTO2

    Friday (Session Day 2) — 14:05 - 14:50The Technical Debt Trap

    The Technical Debt Trap

    Technical Debt has become a catch-all phrase for any code that needs to be re-worked. Much like Refactoring has become a catch-all phrase for any activity that involves changing code. These fundamental misunderstandings and comfortable yet mis-applied metaphors have resulted in a plethora of poor decisions. What is technical debt? What is not technical debt? Why should we care? What is the cost of misunderstanding? What do we do about it? Doc discusses the origins of the metaphor, what it means today, and how we properly identify and manage technical debt.

    Learning Outcomes
    • History of the Technical Debt Metaphor
    • Challenges with the current common understanding
    • Why what you call “debt” is probably better described as “cruft”
    • How to manage cruft (debt)

    Doc is passionate about working with teams to improve delivery and building great organizations. Once a dedicated code slinger, Doc has turned his energy toward helping teams, departments, and companies work better together in the pursuit of better software. Working with a wide range of companies such as Groupon, Nationwide Insurance, Belly, and many others, Doc has applied tenants of agile, lean, systems thinking, and servant leadership to develop highly effective cultures and drastically improve their ability to deliver valuable software and products.

  • Emily Bache

    Emily Bache

    Pagero

    Friday (Session Day 2) — 17:05 - 17:50As a Professional Programmer, how do you learn new skills?

    As a Professional Programmer, how do you learn new skills?

    In my experience, there are some skills that are hard to learn as a professional programmer. You learn a lot on the job, via trial and error, and coaching from your peers. Occasionally you go on a training course and learn the basics of a new framework or language. Neither of those ways is particularly effective when it comes to a skill like Test Driven Development.

    There are several reasons for this. It’s hard to change the habits of a whole career in a two day class. Then when you get back to work you discover your system is not designed with testability in mind, and adding tests later is really difficult. Alternatively you may find yourself working on some kind of greenfield development where it should be easier. The trouble is you find writing tests slows you down so much, you have to abandon them as deadlines loom. In the best case, adding tests afterwards becomes the norm, and in the worst case they are not written at all.

    I've found that having a regular forum for learning, called a "coding dojo", can make all the difference to professionals who want to learn skills like Test Driven Development.

    When you step into the coding dojo, you leave your daily coding environment, with all the associated complexities and problems, and enter a safe environment where you can trystuff out, make mistakes and learn with others. It's a breathing space where the focus is not on delivering solutions, but rather on being aware of what you actually do when you produce code, and how to improve that process. The benefits multiply if you can arrange to bring your whole team with you into the dojo. Through discussion and practicing on exercises, you can make a lasting impact on the way you work together.

    In this talk I'd like to explain what a coding dojo is, and why you might be interested to take part in one.

    Emily Bache is a software developer and automated testing specialist. She currently works for Pagero in a development team, and part-time at her own company, Bache Consulting. She enjoys the combination of daily programming, using tools such as Scala, Python, TextTest and Docker, with occasional training and consulting engagements. Emily is the author of The Coding Dojo Handbook: a practical guide to creating a space where good programmers can become great programmers and loves to coach and teach developers about Clean Code, Test Driven Development, Refactoring, and more. Emily speaks regularly at international events such as Agile Testing Days, XP2014, ACCU, and recently gave a keynote address at Europython in Berlin.

  • Gareth Rushgrove

    Gareth Rushgrove

    Puppet Labs

    Friday (Session Day 2) — 16:10 - 16:55The Challenges of Container Configuration

    The Challenges of Container Configuration

    Introducing containers into your infrastructure brings new capabilities, but also new challenges, in particular around configuration. This talk will take a look under the hood at some of those operational challenges including:
    • The difference between runtime and build-time configuration, and the importance of relating the two together
    • Configuration drift, immutable mental models and mutable container file systems
    • Who configures the orchestrators?
    • Emergent vs model driven configuration

    In the process we will identify some common problems and talk about potential solutions. And we’ll show some demos along the way too. After the talk you should:
    • Appreciate what configuration really is
    • Have a clearer idea of what needs configuring when it comes to containers
    • Want to run off to check your containers are correctly configured

    Gareth Rushgrove is a senior software engineer at Puppet Labs. He works remotely from Cambridge, UK, building interesting tools for people to better manage infrastructure. Previously he worked for the UK Government Digital Service focused on infrastructure, operations and information security. When not working he can be found writing the Devops Weekly newsletter or hacking on software in new-fangled programming languages.

  • Hadi Hariri

    Hadi Hariri

    JetBrains

    Friday (Session Day 2) — 12:00 - 12:45Kotlin - Ready for production

    Kotlin - Ready for production

    Kotlin, a language developed by JetBrains for nearly 5 years is very close to its first release. However, did you know that it's being used in production for over a few years now already? Both inside and outside of JetBrains there are people deploying Kotlin applications for Android platform, for Web Applications and just about any other type of application.

    Why are people using it instead of Java or some of the other languages out there? Primarily because it provides significant benefits in terms of conciseness, readability and safety, without some of the drawbacks that adopting a new language has such as a higher learning curve or interoperability with existing code and ecosystems.

    In this talk we'll cover some aspects of Kotlin that can really help you in your daily development, focusing on solving issues versus highlighting language features.

    Hadi Hariri is a developer, speaker and Technical Evangelist at JetBrains. His passions include software architecture and web development. Book author and frequent contributor to developer publications, Hadi has been speaking at industry events for over a decade. He is based in Spain where he lives with his wife and three sons. He is also an ASP.NET MVP and ASP.NET Insider.

  • Ines Sombra

    Ines Sombra

    Fastly

    Thursday (Session Day 1) — 17:05 - 17:50The Fallacy Of Fast

    The Fallacy Of Fast

    We all want to move fast. We construct our systems in a rapidly-iterating and agile way. Ideally we design and build them to be efficient, robust, and have low latency. But sometimes in the search for speed we make mistakes that come back to haunt us.

    The talk is about the things most of us sacrifice when trying to iterate fast. Some of these are reasonable trade-offs — others can wreck your product. I hope you will walk away with a notion of what to pay attention to at various stages of software development, and how you can avoid common pitfalls.

    Ines Sombra is an Engineer at @Fastly, where she spends her time helping the Web go faster. Ines holds an M.S. in Computology with an emphasis on Cheesy 80’s Rock Ballads. She has a fondness for steak, fernet, and a pug named Gordo. In a previous life she was a Data Engineer. Follow Ines @randommood

  • James Turnbull

    James Turnbull

    Kickstarter

    Friday (Session Day 2) — 12:00 - 12:45Monitoring As A Service - Modernity and Self-Service

    Monitoring As A Service - Modernity and Self-Service

    Building a modern monitoring environment is more than just using the latest awesome tools, collecting all the data, displaying numerous graphs, and knowing when things go wrong. A modern monitoring environment is more than tools and infrastructure. It’s a service. A service you provide to your whole team: developers, operations, security, and the business.

    This talk is about how you can build monitoring environments (or extend your existing environment) that are customer-focused rather than infrastructure focused. You’ll see how you can treat your needs and the needs of your organization as customer requirements, and build monitoring that is consumable and configurable on demand.

    We’ll focus on:
    • You are not the only customer of your monitoring
    • What does monitoring as a service look like?
    • How do we move to a customer-driven service?
    • How does this change how your monitoring environment operates?

    By the end of the talk you should be able to understand what you need in order to make monitoring available as a service to anyone in your organization.

    James Turnbull is the author of seven technical books about open source software and is a long-time member of the open source community. James authored The Logstash Book and The Docker Book. He also wrote two books about Puppet (Pro Puppet and the earlier book about Puppet as well as Pro Linux System Administration, Pro Nagios 2.0, and Hardening Linux. For a real job, James is CTO at Kickstarter and an advisor at Docker. He likes food, wine, books, photography, and cats. He is not overly keen on long walks on the beach and holding hands.

  • Jarosław Pałka

    Jarosław Pałka

    Allegro Group

    Friday (Session Day 2) — 11:05 - 11:50Be a hero of your data with Neo4j (hands-on session)

    Be a hero of your data with Neo4j (hands-on session)

    I invite you for a ride into the world of graphs, during which we will look at the theory of graphs and Neo4j database. After, a brief theoretical introduction, we will get familiar with the Cypher language.

    We will build, materialize and traverse graphs, from the small to the large. We will learn about algorithms and techniques for the analysis of social networks and learn the basics of recommendation engines.

    All this with the help of one of the most beautiful language, that was created by Neo4j, which combines the expressiveness of good old SQL and the power of search patterns in graphs, and all this will look like the good old "ASCII art". I hope that after this workshop you will have a good feel how Cypher works and what everyday problems you can solve with it, not getting crazy with JOIN clause and the Cartesian product.

    During the workshop, we will be analysing social trends in our email inboxes and search recommendations in movies database. We will learn foundations of Cypher syntax and some interesting algorithms and modelling techniques in graphs.

    Hands-on session talk: 90 minutes long, code heavy, practical session

    For more than 15 years in the IT industry, as a database administrator, programmer, architect, manager and "onsite disaster engineer". At the moment, working at Allegro.tech, enjoying the way of code, after few years as chief architect in SaaS business, and as well as a coach in symentis.pl.

    I took part in small, medium and large projects nonsense, under the principles of "Waterfall", Agile and in the absence of any methodologies, always with the same effect. What led me to the conclusion that no matter what you do, as long how you do it well, in the simplest possible way and use appropriate tools that do the work for you. In the meantime, I fell in love in the ideas of TDD and Software Craftsmanship, to the limits exploring beautiful in its simplicity ideas as REST and NoSQL, only to abandon them to explore the secrets of "systems thinking" and admire the strength that brings "metaphor" and discover that we are all objects in an eternal virtual machine. Humble follower of the church of JVM, bytecode and JIT researcher, exploring all sorts of parsers, interpreters and compilers.

    From time to time you can hear my low-quality jokes about architecture conferences in Poland. I am also author of a blog on geekyprimitives.wordpress.com and self-proclaimed dictator in the program committee at 4Developers and JDD conferences.

  • Jeff Gothelf

    Jeff Gothelf

    Author, Speaker, Organizational Designer

    Friday (Session Day 2) — 17:05 - 17:50Almost Everything I’ve Learned From 5 Years of Lean UX

    Almost Everything I’ve Learned From 5 Years of Lean UX

    Since the idea first percolated in 2010 through to its current state as a permanent hashtag on Twitter, Lean UX has created a new way of looking at how we design products and services. Equally as important, it has created a new way to look at working together with our colleagues in product management, software engineering, marketing and executive leadership.

    Have the countless, conferences, articles, blog posts, books and presentations made a difference? Has Lean UX made a difference? How have the ideas evolved since 2010?

    In this talk, Jeff Gothelf, author of Lean UX, will recap his learnings from practitioner to author to teacher of Lean UX and the teams trying to adopt it. What’s worked? What hasn’t? Why? Where are things now and where are they headed? This tactical talk will cover all of that and more.

    Jeff is an author, speaker and organizational designer. He is the co-author of Lean UX (O’Reilly 2013) and of the upcoming Harvard Business book Sense and Respond. Over his nearly 20 years in digital products and services Jeff has worked to bring a customer-centric, evidence-based approach to product strategy, design and leadership. Jeff has worked in various roles at iXL, Fidelity, AOL, WebTrends, TheLadders and most recently as co-founder and principal at Neo Innovation (recently sold to Pivotal Labs) as head of executive training, coaching, workshops and education.

  • Jeremy Keith

    Jeremy Keith

    Clearleft

    Friday (Session Day 2) — 11:05 - 11:50Resilience

    Resilience

    Web browsers have become so powerful that developers are now treating them as if they were a runtime environment as predictable as any other. But the truth is that we still need to deal with many unknown factors that torpedo our assumptions. The web is where Postel’s Law meets Murphy’s Law, so we can’t treat web development as if it were just another flavor of software. Instead we must work with the grain of the web. There are tried and tested approaches to building for the web that will result in experiences that are robust, flexible, and resilient.

    Jeremy Keith lives in Brighton, England where he makes websites with the splendid design agency Clearleft. You may know him from such books as DOM Scripting, Bulletproof Ajax, and HTML5 For Web Designers.

    He organised the world’s first Science Hack Day. He also made the website Huffduffer to allow people to make podcasts of found sounds—it’s like Instapaper for audio files. Hailing from Erin’s green shores, Jeremy maintains his link to Irish traditional music running the community site The Session. He also indulges a darker side of his bouzouki-playing in the band Salter Cane.

    Jeremy spends most of his time goofing off on the internet, documenting his time-wasting on adactio.com, where he has been writing for fifteen years.

  • Jérôme Petazzoni

    Jérôme Petazzoni

    Docker

    Thursday (Session Day 1) — 15:00 - 15:45Patterns to deploy and scale containerized applications in production with Docker Swarm

    Patterns to deploy and scale containerized applications in production with Docker Swarm

    Getting started with Docker is relatively straightforward: install the Docker Engine, write Dockerfiles for your application components, and put those components together with a Compose file. At this point, your application can be quickly and reliably deployed on any Docker installation, anywhere, in minutes. Great!

    How do we take this to production? How do we scale from the single-node setup to a multi-node, highly-available cluster? How do we manage logs, image storage, persistence, upgrades?

    We will show how to do this by leveraging various open source components from the Docker ecosystem. We will present best practices for:
    • setting up a Swarm cluster;
    • storing images on a local registry;
    • centralized logging;
    • load balancing;
    • overlay networks;
    • and more!

    All the code, scripts, and demos will be available on GitHub at the moment of the talk.

    Jerome is a senior engineer at Docker, where he helps others to containerize all the things. In another life he built and operated Xen clouds when EC2 was just the name of a plane, developed a GIS to deploy fiber interconnects through the French subway, managed commando deployments of large-scale video streaming systems in bandwidth-constrained environments such as conference centers, operated and scaled the dotCloud PAAS, and various other feats of technical wizardry. When annoyed, he threatens to replace things with a very small shell script.

  • Jessica Kerr

    Jessica Kerr

    Stripe

    Thursday (Session Day 1) — 17:05 - 17:50Adventures in Elm: Question Your Principles

    Adventures in Elm: Question Your Principles

    What do you get when you combine strict functional programming with heavy user interaction?

    Challenges, and unexpected freedoms.

    Elm is a purely functional language for the browser. It compiles to JavaScript -- after enforcing immutability, types, semantic versioning, and tight boundaries for user and server interactions. Working within these restrictions, I find my programming principles turned upside down. Small components? who needs them. Global state? no problem. New principles emerge instead: events, reproducibility, kindness in times of error. This session gives an overview of Elm, then focuses on the Elm Architecture: how it overturns what is essential in object-oriented and even backend functional programming.

    Jessica Kerr "speaks with the authority of an experienced software engineer and the infectious enthusiasm of a 10-year-old telling you about magic." After ten years in Java she discovered the big wider world of programming through F#, Scala, Clojure, and now Elm. She speaks about functional programming, property-based testing, and juggling complexity. In real life, she works on the data pipeline at Stripe and raises two daughters in St. Louis, MO. Find her @jessitron or blog.jessitron.com.

  • Jessie Frazelle

    Jessie Frazelle

    Mesosphere

    Friday (Session Day 2) — 15:00 - 15:45Application Sandboxes vs. Containers

    Application Sandboxes vs. Containers

    This talk will cover the differences between application sandboxes and containers. The most well known sandbox is Chrome, for providing "hard guarantees about what ultimately a piece of code can or cannot do no matter what its inputs are". At its core, the Linux Chrome sandbox uses namespaces along with seccomp and other native features to provide these guarantees. Containers are composed of the same primitives. What is needed for containers to provide this promise? Can it be done by default? What steps are already being made to get towards containers that actually "contain"?

    Docker Core Maintainer. Typecasted as the person who runs everything in containers including desktop apps. Loves everything from ldflags hacks to syscalls. Nerd by day, rap battle champion by night.

  • Jez Humble

    Jez Humble

    Jez Humble & Associates LLC

    Friday (Session Day 2) — 12:00 - 12:45You Can Have It All: Software Development at Ludicrous Speed

    You Can Have It All: Software Development at Ludicrous Speed

    For years we laboured under the misapprehension that going faster meant breaking things. After several years of science-ing, Jez and his co-researchers have identified the key elements that enable not just higher throughput but also higher stability and quality, lower cost, and happier teams. Discover how continuous delivery and lean management practices produce higher IT performance (and indeed what we might mean by performance), along with how to measure culture and its impact on IT and organizational culture. Find out how to science the crap out of software development and product development. Learn the patterns and practices used by high performing organizations to outcompete their peers.

    Jez Humble is co-author of the Jolt Award winning Continuous Delivery, published in Martin Fowler’s Signature Series (Addison Wesley, 2010), and Lean Enterprise, in Eric Ries’ Lean series (O'Reilly, 2015). He has spent his career tinkering with code, infrastructure, and product development in companies of varying sizes across three continents. He is currently researching how to build high performing teams, and helping to create a cloud platform for government. He works at 18F, and teaches at UC Berkeley.

    Jez Humble was a vice president at Chef, a lecturer at UC Berkeley, and co-author of the Jolt Award winning Continuous Delivery, published in Martin Fowler’s Signature Series (Addison Wesley, 2010), and Lean Enterprise, in Eric Ries’ Lean series (O’Reilly, 2014). He has worked as a software developer, product manager, executive, consultant and trainer across a wide variety of domains and technologies. His focus is on helping organisations deliver valuable, high-quality software frequently and reliably through implementing effective engineering practices.

  • John Allspaw

    John Allspaw

    Etsy

    Thursday (Session Day 1) — 16:10 - 16:55"Thick" Data and Analysis: Engineering with a capital E

    "Thick" Data and Analysis: Engineering with a capital E

    The current zeitgeist in software development and operations looks to explore and adapt theory and practice from fields such as sociology, cognitive science, and philosophy. This is a good thing, but it's not enough. Our field needs to level-up in our understanding of qualitative analysis methods and approaches, or we risk 'cargo-culting' that theory and practice in an "often cited, never read" way.

    If we want software development and operations to be truly considered a discipline of Engineering, we must make just as much effort in qualitative analysis as we do quantitative analysis.

    This talk will discuss how critical this topic is to engineering, and ways to make progress on it.

    John Allspaw is Etsy’s chief technology officer (CTO), leading the Product Engineering, Infrastructure, and Operations teams. Previously, he was the SVP of Infrastructure and Operations at Etsy. For over 17 years, he has worked in system operations in the biotech, government, and online media industries.

    John began his career running vehicle crash simulations for the U.S. government. In 1997, he made the leap to the web, building the technical infrastructures at Salon, InfoWorld, Friendster and Flickr. John is the author of The Art of Capacity Planning and Web Operations: Keeping the Data on Time, both published by O’Reilly Media. He holds a BS from the University of Massachusetts, Amherst, and an MSC from Lund University.

  • Jonathan Klein

    Jonathan Klein

    Attend

    Friday (Session Day 2) — 15:00 - 15:45Cognitive Biases in Engineering Organizations

    Cognitive Biases in Engineering Organizations

    Biases like the Fundamental Attribution Error, Confirmation Bias, and Hyperbolic Discounting show up in every day life, but are typically only discussed in academic circles. These biases have a wide reaching impact on organizations of all sizes, and can subtly influence decisions in a negative way if they aren’t called out explicitly and addressed.

    This talk will explain a few common biases that we’ve all seen in the workplace, discuss the reasons why they appear and the actions that result from them, and finally provide some concrete ways to avoid falling into these cognitive traps. The takeaways from this talk will be widely applicable to many roles at a variety of companies, as well as to your life in general.

    Jonathan the Director of Engineering at Attend, a Boston startup building event management software. Previously he was a senior software engineer at Etsy, where he focused on solving web performance and scalability challenges. He started the Boston Web Performance Meetup Group, and he contributes to a few open source projects, including the HTTPArchive, WebPagetest, CSSLint, and Hound (which he co-created). Jonathan blogs regularly at http://www.jonathanklein.net and can be found on Twitter at @jonathanklein.

  • Joseph Pelrine

    Joseph Pelrine

    MetaProg GmbH

    Friday (Session Day 2) — 09:00 - 10:00Psychological Aspects of Estimating

    Psychological Aspects of Estimating

    Stumped by story points? Paralysed by planning poker? How about trying something new? Estimation is a necessary but often unenjoyable part of software development. Although much has been written about methods and heuristics for estimating, there is very little information available about what happens psychologically when we estimate.

    This talk examines the cognitive and social psychological and aspects of estimation, and discusses some theories (such as Baumeister’s Ego Depletion Theory), which explain why, despite the best of intentions, our estimates are often not correct, and what we can do about it. We will also look at a number of new approaches, based on modern research in cognitive psychology and chronobiology, and tested with world-class agile teams, aimed at addressing the age-old problems of estimating and prioritizing work. From quatro stagioni to speed poker, you're sure to find new ideas to take back to your team.

    As Kent Beck’s assistant, Joseph Pelrine was one of the first in the world who worked with eXtreme Programming. As Europe’s first certified ScrumMaster and Trainer, he was largely responsible for introducing Scrum to the german-speaking part of Europe. For almost 20 years, Joseph Pelrine has been helping some of the world’s most important companies improve their software development process and successfully transition to Agile. A noted international speaker, he conducts research in the field of social complexity theory and its application to Agile processes, and is currently pursuing a PhD in psychology.

  • Joseph Pelrine

    Joseph Pelrine

    MetaProg GmbH

    Friday (Session Day 2) — 11:05 - 11:50Authority, power, and motivation

    Authority, power, and motivation

    One of the canons (or koans) of Scrum is that the ScrumMaster has no authority. He can not tell others to do things. Although this is a good idea from the point of view of getting others to take responsibility for their actions (i.e. “self-organise”), the lack of authority often makes it difficult to move or motivate others effectively.

    Having no authority does not mean that a person has no power. This talk discusses the psychological concept of power, its various types, as well as personal rank and skills, and provides tools and techniques to help you move and motivate others, even when you’re not in control. It will also help you understand when others are moving, motivating, and possibly manipulating you.

    As Kent Beck’s assistant, Joseph Pelrine was one of the first in the world who worked with eXtreme Programming. As Europe’s first certified ScrumMaster and Trainer, he was largely responsible for introducing Scrum to the german-speaking part of Europe. For almost 20 years, Joseph Pelrine has been helping some of the world’s most important companies improve their software development process and successfully transition to Agile. A noted international speaker, he conducts research in the field of social complexity theory and its application to Agile processes, and is currently pursuing a PhD in psychology.

  • Josh Long

    Josh Long

    Pivotal

    Thursday (Session Day 1) — 11:05 - 11:50The Bootiful Microservice

    The Bootiful Microservice

    We get it already! Microservices help you build smaller, singly-focused services, quicker. They scale out. They’re more agile because individual teams can deliver them at their own pace. They work well in the cloud because they’re smaller, and benefit from elastic, horizontal scaling. But what about the complexity? There’s a cost associated with adding services and coordinating the interactions between them. In this talk, we’ll look at Spring Cloud, which builds atop Spring Boot and the Netflix OSS stack, and see how it lets you easily integrate service-discovery, security, reliability patterns like the circuit breaker, and centralized and journaled property configuration (and more) to more quickly build microservices that scale.

    Join Spring Developer Advocate Josh Long to find out what Netflix, Alibaba, Ticketmaster, and countless other organizations already know: Spring Cloud handles the non-functional requirements associated with adopting microservices to enable them to progress quickly.

    Josh Long (@starbuxman) is the Spring developer advocate at Pivotal. He is a contributor to many open-source projects (including various Spring projects), an author on 5 books on Spring (for Apress and O'Reilly), has delivered 3 very popular Livelessons videos, and spoken at hundreds of software conferences and events worldwide.

  • Josh Long

    Josh Long

    Pivotal

    Thursday (Session Day 1) — 14:05 - 14:50Cloud Native Java (hands-on session)

    Cloud Native Java (hands-on session)

    In this workshop we'll look at how to build cloud-native Java applications. A cloud native application is one that is designed to fully exploit a cloud platform both in the application layer - where things decompose into microservices - and at the data layer where NoSQL offers better horizontal scaling and fitness for specific purpose.

      We'll look at:
    • writing services and handling non-functional requirements like metrics and logging with Spring Boot
    • scaling out safely and building fault-tolerant systems using Spring Cloud and its support for distributed systems patterns like the circuit breaker, service registration and discovery, and centralized configuration management.
    • offloading as much operational work as possible to the platform, Cloud Foundry


    Hands-on session talk: 90 minutes long, code heavy, practical session

    Josh Long (@starbuxman) is the Spring developer advocate at Pivotal. He is a contributor to many open-source projects (including various Spring projects), an author on 5 books on Spring (for Apress and O'Reilly), has delivered 3 very popular Livelessons videos, and spoken at hundreds of software conferences and events worldwide.

  • Kate Heddleston

    Kate Heddleston

    Kate Heddleston LLC

    Thursday (Session Day 1) — 12:00 - 12:45Usable Ops: How to make web infrastructure management easier

    Usable Ops: How to make web infrastructure management easier

    In the past few decades, web applications have become the backbone of much of the technology industry. Hosting tools like Amazon Web Services allow technology companies to build web applications on an unprecedented scale. While these tools give developers more power, it also allows people to build more and more complicated web applications that require multitudes of developers to build, deploy, monitor, and maintain.

    As developer tools increase in power, the systems we’re able to build do too. However, with great power comes great...complexity, and the systems we build today are more complex than ever before. This talk is about reducing the complexity of your web infrastructure, and making it easier for developers on your team to learn, use, and manage your infrastructure.

    This talk focuses on something we don't talk about much in the engineering community: infrastructure usability. Usable infrastructure is something that reduces developer errors, encourages correct behavior, and allows engineers to move quickly without having to worry about managing a complex infrastructure that requires specialized training.

    People should leave with an understanding of three things: what is usability, why it is important for web infrastructure, and how can they go about building usable infrastructure tools that are scalable throughout larger teams.

    Kate Heddleston is a software engineer from San Francisco, and loves building web applications and programming in Python. She studied computer science for a master’s degree, and communication and human-computer interaction for her undergraduate degree. Kate enjoys using open source tools to build web applications, and especially likes building portions of the product that interface with the user. When not programming, Kate is involved with organizations like Hackbright Academy, PyLadies, and Raphael House. She is currently traveling the world and working on personal projects.

  • Kelsey Hightower

    Kelsey Hightower

    Google

    Friday (Session Day 2) — 17:05 - 17:50Building Microservices with gRPC and Kubernetes

    Building Microservices with gRPC and Kubernetes

    gRPC is a general RPC framework focused on performance and interoperability across a wide range of programming environments. gRPC was initially developed at Google as a successor to an internal RPC platform called Stubby — a general application platform at the heart of many Google products and services. gRPC seeks not only to replicate the success of Stubby, but improve upon it, in the open, around modern standards such as HTTP/2 and proven technologies such as Protocol Buffers.

    In this session we will demonstrate, through a series of live demos and code walkthroughs, how to design, build, and deploy a collection of microservices using gRPC from the ground up. Key gRPC concepts will be covered including authenticating gRPC services and clients, service discovery, monitoring, and troubleshooting.

    After attending this session attendees will understand:
    • How to use modern authentication flows to authenticate gRPC clients and servers
    • How to effectively leverage common service discovery backends to register and locate gRPC services
    • How to define messages and gRPC services using the Protocol Buffers 3 IDL and generate Go service stubs using the go-grpc plugin
    • How to generate client libraries for non-Go languages for increased interoperability
    • How to deploy gRPC services using containers and clusters manager management tools such as Kubernetes

    Kelsey has worn every hat possible throughout his career in tech and enjoys leadership roles focused on making things happen and shipping software. Kelsey is a strong open source advocate focused on building simple tools that make people smile. When he is not slinging Go code you can catch him giving technical workshops covering everything from Programming, System Administration, and his favorite Linux distro of the month (CoreOS).

  • Kirk Pepperdine

    Kirk Pepperdine

    JClarity

    Friday (Session Day 2) — 14:05 - 14:50Java Performance Tuning (hands-on session)

    Java Performance Tuning (hands-on session)

    Performance Tuning with Poor Tools and Cheap Drink

    The session will start with a very quick introduction to jPDM, a performance diagnostic model designed to help quickly identify the root cause of performance bottlenecks. Bring you laptop with an installed version of Java 8 because after the introduction to and a quick demo of jPDM, you’ll get a chance to try the methodology out for yourself by using it to diagnose a small app that has been bobby trapped with a few commonly seen performance bottlenecks.

    Hands-on session talk: 90 minutes long, code heavy, practical session

    Kirk has been working in high performance and distributed computing for more than 25 years working with small devices to supercomputers, from single threaded applications with low latency requirements to large clusters with high loads. Kirk specializes in Java™where he created jPDM, a comprehensive performance tuning methodology aimed that has helped 1000s of developers become more effective at identifying critical performance bottlenecks in their applications. Kirk's contributions to the Java community resulted in him being named among early Java Champions in 2006.

  • Kris Kowal

    Kris Kowal

    Uber

    Thursday (Session Day 1) — 16:10 - 16:55A General Theory of Reactivity

    A General Theory of Reactivity

    Draw a sample from the cacophony: “Everything is just a stream.” “A promise is just an observable.” “A value is just an array of length one.” “There are no silver bullets.” “Why can’t we all just get along?”

    It is only logical that we all get along. In this talk I will explain a General Theory of Reactivity, which will train you how to choose the right asynchronous tool for the job, covering Streams, Promises, Tasks, Futures, Observables, and more.

    Each of these primitives is distinguished by whether it is broadcast or unicast, pushable or pullable, discrete or continuous. All objects that model temporal behavior have analogues with spatial behavior, and some combine both.

    Furthermore, each of these concepts is becoming integral to the JavaScript language or the web platform. What makes each of these types similar and what makes each of them distinct is the key to weaving them into a cohesive whole.

    https://github.com/kriskowal/gtor

    Kris Kowal wrote the CommonJS modules specification and the first package.json. He also published Q, an asynchronous promise library, that had a hand in shaping JavaScript’s Promise. Kris also created 3rin.gs, an online map of Middle-earth, penned in Elvish. Kris works on distributed systems and RPC at Uber.

  • Kyle Kingsbury

    Kyle Kingsbury

    Stripe

    Thursday (Session Day 1) — 11:05 - 11:50Jepsen VI

    Jepsen VI

    Stateless applications aren't: they rely on other systems storing and transforming shared state correctly. On the basis of documentation and reputation we assume that our clients and database systems comprise a safe, meaningful distributed system. How justified is our faith in that system's correctness? Do popular databases actually provide the safety invariants we assume? Are we using those invariants correctly? I want experimental answers to these questions.

    Kyle Kingsbury is the author of Riemann, Jepsen, Knossos, Clojure from the Ground Up, and a bunch of other open-source stuff. He writes Clojure and helps monitor distributed systems at Factual.

  • Mark Burgess

    Mark Burgess

    Oslo

    Thursday (Session Day 1) — 12:00 - 12:45How do we know IT systems are working well?

    How do we know IT systems are working well?

    In this talk, I will try to break down the learnings of 20 years of research, in IT operations, into a practical checklist of questions, under the umbrella of: can we promise a business or organization that its IT systems and services are working according to plan? The talk will touch on subjects like monitoring, policy, configuration, dependencies, scalability, and knowledge management.

    Mark Burgess is a theoretician and practitioner in the area of information systems, whose work has focused largely on distributed information infrastructure. He is known particularly for his work on Configuration Management and Promise Theory. He was the principal Founder of CFEngine, and is emeritus professor of Network and System Administration from Oslo University College. He is the author of numerous books, articles, and papers on topics from physics, Network and System Administration, to fiction. He also writes a blog on issues of science and IT industry concerns.

  • Martin Fowler // Erik Dörnenburg

    ThoughtWorks // ThoughtWorks

    Thursday (Session Day 1) — 14:05 - 14:50Architecture without architects

    Architecture without architects

    The title software architect comes with many connotations, and often these are not good. Developers think of hand-waivers who inhabit ivory towers and have forgotten how to write code. Project managers think of technologists who are chasing perfection in initiatives that are serving obscure technical purposes. Yet, for the success of any software project architecture is crucial, particularly with the current interest in microservice architectures. In this talk Erik and Martin will present their experience on how to address this issue, introducing techniques that help teams come up with good designs and sustainable architectures without the need for a superstar architect.
    Martin Fowler

    Martin is an author, speaker, consultant and self-described general loud-mouth on software development. He concentrates on designing enterprise software – looking at what makes a good design and what practices are needed to come up with good design. Fowler has been a pioneer of various topics around object-oriented technology and agile methods, and written several books including Refactoring, UML Distilled, Patterns of Enterprise Application Architecture, and NoSQL Distilled. For the last decade he’s worked at ThoughtWorks, what he considers a “really rather good” system delivery and consulting firm, and writes at http://martinfowler.com.

    Erik Dörnenburg

    Erik Dörnenburg is the Head of Technology Europe at ThoughtWorks where he helps clients with the design and implementation of enterprise software. With experience in Java, .NET, and other environments Erik is continually exploring new technology. Frequent exposure to overly complex software has made him interested in simple architectures and software visualisation as means to help people better understand architecture.

    Erik’s career in enterprise software began in the early nineties on the NeXTSTEP platform, and throughout his career he has been an advocate of agile values and Open Source software. He holds a degree in Informatics from the University of Dortmund and has studied Computer Science and Linguistics at University College Dublin.

    Erik is member of GOTO Aarhus Program Advisory Board. See what Erik says on his blog

  • Marty Cagan

    Marty Cagan

    Silicon Valley Product Group

    Thursday (Session Day 1) — 18:00 - 19:00Great Product Team, Successful Product

    Great Product Team, Successful Product

    In last year’s keynote “Great Engineering, Failed Product” I discussed the ten biggest reasons why products fail. Unfortunately, many people told me that they suffer from each of these problems. So they asked me if I could talk more about the alternative. So in this talk, I will describe what I consider to be the ten most critical characteristics and behaviors of highly effective product teams. Not just of good teams, but of truly strong teams that consistently innovate and provide value for their customers and their business. I have long argued that there is a very dramatic difference between how the best teams work, and how most teams work. In last year’s talk you saw the serious issues in how most teams work. In this year’s talk, you’ll see how the best teams work.

    Marty Cagan is the Founder of the Silicon Valley Product Group, where he works with, and advises many of the leading technology teams in the world. Before founding SVPG to pursue his interests in helping others create successful products through his writing, speaking, investing and advising, Marty was most recently the original SVP of Product and Design for eBay, where he was responsible for creating and building the product and design organizations and defining the products and services for the company’s global e-commerce trading site. Marty began his career working for 10 years as a software developer at HP Labs, and then moved on to join a young Netscape Communications as their VP Platform and Tools. Marty is the author of INSPIRED: How To Create Products Customers Love, and publishes a popular blog for product teams at www.svpg.com.

  • Mary Poppendieck

    Mary Poppendieck

    Poppendieck.LLC

    Friday (Session Day 2) — 16:10 - 16:55The Future is Here, it’s just not evenly distributed

    The Future is Here, it’s just not evenly distributed

    2020 used to be far in the future. Today it’s four years away. We no longer need to guess what breakthroughs await us in that magic year, the future is hiding in plain sight. Every time you check Google maps for traffic conditions, you are looking at the Internet of Things in action. When an AWS outage makes the news, you know it’s a rare event. When you see Spotify moving to the cloud, the future of infrastructure is clear.

    The question is not what the technology of 2020 will be – that is rapidly coming into focus. The real question is: How do you get from where you are now to where you need to be? How do you scale? How do you learn? How do you become reliable? And how you do this while traveling Full Speed Ahead?

    Mary Poppendieck started her career as a process control programmer, moved on to manage the IT department of a manufacturing plant, and then ended up in product development, where she was both a product champion and department manager.

    Mary considered retirement 1998, but instead found herself managing a government software project where she first encountered the word "waterfall." When Mary compared her experience in successful software and product development to the prevailing opinions about how to manage software projects, she decided the time had come for a new paradigm. She wrote the award-winning book Lean Software Development: An Agile Toolkit in 2003 to explain how the lean principles from manufacturing offer a better approach to software development.

    Over the past several years, Mary has found retirement elusive as she lectures and teaches classes with her husband Tom. Based on their on-going learning, they wrote a second book, Implementing Lean Software Development: From Concept to Cash in 2006, a third, Leading Lean Software Development: Results are Not the Point in 2009, and a fourth book, The Lean Mindset: Ask the Right Questions in 2013. A popular writer and speaker, Mary continues to bring fresh perspectives to the world of software development.

    Website: http://www.poppendieck.com

  • Matt Ranney

    Matt Ranney

    Uber

    Thursday (Session Day 1) — 17:05 - 17:50What I Wish I Knew Before Scaling Uber to 1,000 Services

    What I Wish I Knew Before Scaling Uber to 1,000 Services

    To Keep up with Uber's growth, we've embraced microservices in a big way. This has led to an explosion of new services, crossing over 1,000 production services in early March 2016. Along the way we've learned a lot, and if we had to do it all over again, we'd do some things differently. If you are earlier along on your personal microservices journey than we are, then this talk may save you from having to learn some things learn the hard way.

    Matt is the Sr. Staff Engineer at Uber, where he's helping build and scale everything he can. Previously, Matt was a founder and CTO of Voxer, probably the largest and busiest deployment of Node.js. He has a computer science degree which has come in handy over a career of mostly network engineering, operations, and analytics.

  • Michael Feathers

    Michael Feathers

    R7K LLC

    Friday (Session Day 2) — 16:10 - 16:55Symbiotic Design Practices

    Symbiotic Design Practices

    Decades ago, Melvin Conway coined what is now called Conway’s Law: “organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations.” Conway’s Law is a deep insight but it is only the tip of the iceberg when we try to understand the interaction between organization and software. We fail to appreciate that we can use team structure, day to day process, and the interface between business and development as levers to affect the quality of design and code. With this perspective we can also see that concerns like technical debt and portfolio management lend themselves to new solutions when we understand software’s sensitivities upon its environment.

    Learning Outcomes:
    • Understand Design Forces around Software
    • Understand the Laws of Software Growth
    • Appreciate the Effects of Agile Process, Build Process and Team Structure Upon Software Assets
    • Understand How Avert Technical Debt Through Organizational Intervention
    • Understand How to Monitor Software for Process Intervention
    • Understand How and When to Let Technical Criteria Influence Business and Organizational Decision-Making

    Michael Feathers is the founder and Director of R7K Research & Conveyance, a company specializing in software and organization design. Prior to forming R7K, Michael was the Chief Scientist of Obtiva and a consultant with Object Mentor International. Over the years, Michael has spent a great deal of time helping teams after design over time in code bases. Michael is also the author of the book Working Effectively with Legacy Code (Prentice Hall, 2004).

  • Mitchell Hashimoto

    Mitchell Hashimoto

    HashiCorp

    Thursday (Session Day 1) — 14:05 - 14:50Secrets, Certificates, and Identity with Vault

    Secrets, Certificates, and Identity with Vault

    Secrets management is a complex problem that all organizations ranging from startups to large enterprises face. Secure distribution of secrets is only a small part of the challenge, as operators and security teams must reason about key rolling, auditing, and incident management during a compromise. Beyond the basic storage of passwords, secrets also include certificates, keys, and sensitive user data (PII).

    Vault is a tool designed to tackle these problems by centralizing secrets, access control, and auditing policies. It is architected for modern systems: t is a distributed system, it is highly available, and it is built to run on physical machines or the cloud. It not only manages basic secrets, but also acts as a complete PKI solution, an SSH access broker, and more. Vault is being used today by some of the world's most security sensitive organizations.

    In this talk we discuss the problems faced in secrets management and how Vault is being used to solve them in production.

    Mitchell is best known as the creator of Vagrant, Packer, and Consul. Mitchell is the founder of HashiCorp, a company that builds powerful and elegant DevOps tools. He is also an O’Reilly author and professional speaker. He is one of the top GitHub users by followers, activity, and contributions. “Automation obsessed,” Mitchell solves problems with as much computer automation as possible.

  • Neha Narula

    Neha Narula

    MIT

    Thursday (Session Day 1) — 16:10 - 16:55The End of Data Silos: Interoperability through Cryptocurrency

    The End of Data Silos: Interoperability through Cryptocurrency

    Neha is a fifth year PhD student in PDOS, the Parallel and Distributed Operating Systems group at MIT, advised by Robert Morris. Here she has worked on W5, BFlow, a privacy-preserving browser system, WARP, and Dixie. Neha's research interests are in protecting user data and scalable storage systems for web applications.

    Neha has worked for Google as a Software Engineer on Native Client, Blobstore, a system for efficiently storing and serving terabytes of large binary objects, and Froogle.

  • Patrick Debois

    Patrick Debois

    Smalltownheroes

    Thursday (Session Day 1) — 12:00 - 12:45Mobile Delivery with a Devops Mindset

    Mobile Delivery with a Devops Mindset

    In the mobile world, continuous delivery is rare. A lot has to do with the emerging/changing toolset in the mobile world.

    In this presentation, I want to give:
    • An overview of the current available toolset to automate almost everything in the delivery process
    • How to get valuable feedback from production back to the developers
    • How this relates to DevOps and a better feedback cycle

    Level: Basic knowledge of a continuous delivery pipeline and monitor are welcome. We will use a real-world application delivery, so participants at least learn about the challenges/conceptual solutions even if they don't understand all the technology.

    Background: While I was experienced in web operations/delivery, I learned that mobile delivery has its own subset of problems. The concepts of continuous delivery are the same, but the tooling is quite different. Finding these tools is even harder. The tools discussed will be mostly open source or freely available services, and are focused around both iOS and Android development. The talk will be based on our experiences with TV show apps, including a quiz show that is currently in production with over a few million games played and over 100K users. We’ve had our share of support to make this smooth, so we will explain the life of the app after it gets published in the app store.

    In order to understand current IT organizations, Patrick Debois has made a habit of changing both his consultancy role and the domain that he works in: sometimes as a developer, manager, sysadmin, or tester, and even as the customer. If there is one thing that annoys him, it is the great divide between all these groups. Patrick first presented concepts on Agile infrastructure at Agile 2008 in Toronto, and in 2009 he organized the first devopsdays. Since then he has been promoting the notion of DevOps to exchange ideas between these groups, and show how they can help each other to achieve better results in business.

  • Rachel Davies

    Rachel Davies

    Unruly

    Thursday (Session Day 1) — 15:00 - 15:45Extreme Programming Myths & Legends Busted

    Extreme Programming Myths & Legends Busted

    A long time ago, XP was the only flavour of Agile software development around. Nowadays it’s seen as a sprinkle of technical practices that may be added to Scrum or Kanban. The power of XP collective ownership has been lost and programmers rarely find environments where they can pair. No one talks about Merciless Refactoring or the courage to Just Say No. What’s the point in being a craftsman if you have no power?

    Back in 2000, Rachel was a developer at Connextra, one of the first XP teams in Europe. She now leads a development team at Unruly in London, where XP has been used continuously for 10 years. Rachel is not a consultant with any interest in selling an approach. She’s happy to speak openly about how long running XP teams work. Many of our common practices seem counterintuitive to developers and managers who focus on efficiency over value delivery.

    Come to this talk to hear about what eXtreme Programming really means to developers and how it’s practiced in an organisation embraces change every day. Find out what modern XP looks like in 21st century.

    Rachel Davies is co-author of the first Agile Coaching book and works in UK as Team Lead at Unruly, the leading global platform for social video marketing. Internationally recognized and presenting at industry conferences worldwide, Rachel started out working as a software developer and has been an agile practitioner since 2000 applying a range of agile methods including XP, SCRUM, Lean/Kanban, and DSDM. Follow her @rachelcdavies

  • Raffi Krikorian

    Raffi Krikorian

    Uber

    Thursday (Session Day 1) — 15:00 - 15:45Scaling Engineering Culture

    Scaling Engineering Culture

    The engineering team's culture is one of the most important things -- it sets the pace and the tone of how work gets done. If you don't give thought to how the culture is set up and evolves, then it will set itself up organically and probably with unexpected consequences. This talk focuses around the few things that you should do if you are setting this up from scratch, or trying to retrofit and fix a culture yourself.

    Raffi Krikorian is engineering lead at Uber’s Advanced Technologies Center in Pittsburgh, Pennsylvania. He spends most of his time thinking about off-the-wall ways to change computing, transportation, and the world. Until August 2014, Raffi was Twitter’s VP of Engineering in charge of the platform – the core infrastructure of Twitter. During his tenure, platform engineering was primarily responsible for the scalability, efficiency, reliability, and performance of Twitter, as well as the developer productivity of all software engineers at Twitter. He lead the Twitter transition from a Ruby on Rails website to a JVM-powered services-oriented architecture. It currently serves about 250 million monthly active users, who send about 500 million tweets daily. He also created and used to chair Twitter’s Architecture Group, the team of senior software engineers in charge of Twitter’s overall technology portfolio, who also ensured that software got written to the same consistent standards across its entire global development team.

  • Sam Newman

    Sam Newman

    ThoughtWorks

    Thursday (Session Day 1) — 11:05 - 11:50Deploying and Scaling Microservices

    Deploying and Scaling Microservices

    Don't know your Mesos from your elbow? This is the talk for you.
    The challenges of managing many, smaller deployable services mean that what we need in terms of deployment platforms are very different to what was needed before. But few areas of software technology have been experiencing as much innovation and churn as the deployment options available for microservice architectures. From appication containers, to docker, to mesos and beyond, this talk will break apart the myriad challenges that can come from managing microservices at scale, and how to pick the right technologies for you.

    Audience
    Software developers, engineers, architects, technical leaders and anyone with an interest in the architecture and deployment of software.

    Sam Newman is a technologist at ThoughtWorks, where he currently splits his time between encouraging and sharing innovation globally and helping design and build their internal systems. He has worked with a variety of companies in multiple domains around the world, often with one foot in the developer world, and another in the IT operations space. If you asked him what he does, he'd say 'I work with people to build better software systems'. He has written articles, presented at conferences, and sporadically commits to open source projects. He is currently writing a book, Building Microservices, which is available in early access form now, and dead tree version very soon.

  • Sandi Metz

    Sandi Metz

    TorqueForge, LLC

    Friday (Session Day 2) — 14:05 - 14:50Get a Whiff of This

    Get a Whiff of This

    Most code is a mess. Most new requirements change existing code. Ergo, much our work involves altering imperfect code.

    That's the bad news.

    The good news is that every big mess is made up of many small ones. Some small problems occur so frequently that they've been given names, and are collectively referred to as "Code Smells".

    This talk illustrates how to take a pile of perplexing code, identify the "smells", and select and surgically apply the curative refactoring. It solves an intractable large problem by breaking it down into well-known small ones, and proves that you can fix anything without being forced to understand everything.

    Sandi Metz, author of Practical Object-Oriented Design in Ruby, believes in simple code and straightforward explanations. She prefers working software, practical solutions and lengthy bicycle trips (not necessarily in that order) and consults and teaches on all things OOP.

  • Sandro Mancuso

    Sandro Mancuso

    Codurance

    Thursday (Session Day 1) — 17:05 - 17:50Does TDD really lead to good design?

    Does TDD really lead to good design?

    "TDD is a design tool." That’s what Sandro has said for years. But not anymore. After working with different teams and in different organisations, and also carefully inspecting how he works, Sandro changed his mind about the role of TDD in software design.

    In this talk Sandro will explain the pros and cons of the two main styles of TDD when it comes to software design, he'll discuss why some developers can test-drive well-crafted code while others can’t, and he'll also explain how to reason about design decisions.

    Software craftsman, co-founder of Codurance, author of The Software Craftsman, and founder of the London Software Craftsmanship Community (LSCC). Sandro has been coding since a very young age but only started his professional career in 1996. He has worked for startups, software houses, product companies, international consultancy companies, and investment banks.

    During his career Sandro had the opportunity to work in a good variety of projects, with different languages, technologies, and across many different industries. Sandro has a lot of experience in bringing the Software Craftsmanship ideology and Extreme Programming practices to organisations of all sizes. Sandro is internationally renowned by his work on evolving and spreading Software Craftsmanship and is frequently invited to speak in many conferences around the world. His professional aspiration is to raise the bar of the software industry by helping developers become better at and care more about their craft.

  • Seth Vargo

    Seth Vargo

    Hashicorp

    Thursday (Session Day 1) — 14:05 - 14:50Scheduling Applications at Scale

    Scheduling Applications at Scale

    Tools like Docker and rkt make it easier than ever to package and distribute applications. Unfortunately, not all organizations have the luxury of being able to package their applications in a container runtime.

    Many organizations have virtualized workloads that cannot be easily containerized, such as applications that require full hardware isolation or virtual appliances. On the opposite end of the spectrum, some organizations deploy workloads that are already static binaries such as Go applications or Java applications that only rely on the JVM. These types of applications do not benefit from containerization as they are already self-contained. To address the growing heterogeneity of workloads, HashiCorp created Nomad – a globally aware, distributed scheduler and cluster manager.

    Nomad is designed to handle many types of workloads, on a variety of operating systems, at massive scale. Nomad empowers developers to specify jobs and tasks using a high-level specification in a plain-text file. Nomad accepts the job specification, parses the information, determines which compatible hosts have available resources, and then automatically manages the placement, healing, and scaling of the application. By placing multiple applications per host, Nomad maximizes resource utilization and dramatically reduces infrastructure costs.

    The flexibility of Nomad’s design brings the benefits of a scheduled application workflow to organizations with heterogeneous workloads and operating systems. This talk will discuss the pros and cons of running in a scheduled environment and includes a series of live demos to supplement the learning experience.

    Seth Vargo has been a member of the DevOps community for about five years. He is a polyglot software engineer and open source advocate at HashiCorp. Previously, Seth worked at Chef (Opscode), CustomInk, and a few Pittsburgh-based startups. He is a co-author of O'Reilly's "Learning Chef" and is passionate about eliminating inequality in technology and organizational culture. When he is not writing software or working on open source, Seth enjoys speaking at local user groups and conferences. He is a co-organizer for DevOps Days Pittsburgh and loves all things bacon. You can find him on the Internet under the single moniker "sethvargo".

  • Steve Freeman // Hilverd Reker

    Zuhlke Engineering Ltd. // Springer Nature

    Thursday (Session Day 1) — 15:00 - 15:45A meta-pipeline for generating continuous delivery pipelines for microservices

    A meta-pipeline for generating continuous delivery pipelines for microservices

    Our development group is adopting microservices. We found that having developers set up build pipelines by hand for each service was time-consuming and led to inconsistencies as our environment changed, so we automated the process. We developed a meta-pipeline that will generate a continuous delivery pipeline for any of our repositories that follow a set of conventions - our Meta-Pipeline Protocol. Standardising our pipeline definition has greatly reduced our programmers' effort and allowed us to safely evolve our build environment. We're starting to exploit this meta information to improve our overall environment, for example: to visualise relationships, to manage the running of client contract tests, and to profile build timings. In this experience report we will describe the structure of the system, our struggles to develop it, and some of the design decisions we made along the way.
    Steve Freeman

    Steve Freeman, author of Growing Object Oriented Software, Guided by Tests (Addison-Wesley), was a pioneer of Agile software development in the UK. He has developed software for a range of institutions, from small vendors to multinational investment banks. Steve trains and consults for software teams around the world. Previously, he has worked in research labs and software houses, earned a PhD (Cambridge), written shrink-wrap applications for IBM, and taught at University College London. Steve is a presenter and organiser at international industry conferences, and was chair of the first London XPDay.

    Hilverd Reker

    Hilverd Reker is a developer at Springer Nature in London where he works on the Tools Engineering team. He is identifying and implementing solutions to problems faced by most of Springer Nature's software development teams, and doing longer-term work that individual teams can find difficult to justify in short-term value.

  • Tim Steigert

    Tim Steigert

    GE

    Friday (Session Day 2) — 18:00 - 19:00Hacking Monkeys: a practitioners guide

    Hacking Monkeys: a practitioners guide

    Tim is leading Digital & Innovation Strategy for GE, driving large scale changes in Europe. Due to a strong background in technology he prefers working with people. He is passionate about education, healthcare & energy. Being a very visual person his professional interests are in strategy, innovation and psychology. He is constantly being trained by kids and enjoys being a jester, keynote speaker and coach in his spare time.

  • Todd Montgomery

    Todd Montgomery

    StoneTor LLC

    Friday (Session Day 2) — 14:05 - 14:50Micro-Service Protocols of Interaction

    Micro-Service Protocols of Interaction

    The communication patterns within micro-service architectures present interesting challenges for scalability, reliability, efficiency, and system safety. In many cases, similar, if not identical, problems are encountered by network protocol design. What can we learn from network protocol design that can be applied to micro-service architectures? And how might modern protocols, such as HTTP/2, TCP, and Aeron be best leveraged today by micro-services?

    Todd L. Montgomery is an independent software developer and consultant specializing in high performance applications in a number of languages. Previously, Todd was CTO of 29West and a Vice President of Architecture for Informatica where he was the chief designer and implementer of the 29West low latency messaging products, and Chief Architect of Kaazing. The Ultra Messaging product family (formerly known as LBM) has hundreds of production deployments within electronic trading across many asset classes and pioneered the broker-less messaging paradigm. In the past, Todd has held architecture positions at TIBCO and Talarian as well as lecture positions at West Virginia University, contributed to the IETF, and performed research for NASA in various software fields.

    Todd is also co-author and co-maintainer of the Aeron, Agrona, and Simple Binary Encoding (SBE) open source projects.

    With a deep background in messaging systems, high performance systems, reliable multicast, network security, congestion control, and software assurance, Todd brings a unique perspective tempered by over 20 years of practical development experience.

  • Tony Brill

    Tony Brill

    Square 1 Bank

    Thursday (Session Day 1) — 17:05 - 17:50An introduction to the GROWS Method

    An introduction to the GROWS Method

    What is it?

    The Grows Method is an evolution of agile principles and builds upon our experience and empirical learning over the last decade. Some of the key findings include:
    • Principles are more important than practices, but both are needed
    • Beginners need steps / We need the Dryfus Model of skills acquisition
    • Managers need to focus on connecting teams to the mission, not just what needs done, but why
    • We need tracer bullets, a simple complete architectural path through our system to use as a template for success
    • Different teams are at different levels and need a structure and understanding of where they are so they can GROW

    Why you should care?


    This discussion helps practitioners and leaders take ownership for the success of their areas by applying adaptations that will help ensure that success. You will be introduced to how GROWS focuses on ownership, goals, and a principle driven framework while de-emphasizing ingrained practices.

    Tony has a long history of leading software teams. As a coach, he focuses on leadership, turning around under-performing teams, implementing sound technical practices and aligning teams to business objectives. He's held senior leadership roles in the Aerospace and Finance industry and has developed a number of games to help teams move from awareness of a principle to actually starting to believe in it.

  • Trisha Gee

    Trisha Gee

    JetBrains

    Thursday (Session Day 1) — 11:05 - 11:50Staying Ahead of the Curve

    Staying Ahead of the Curve

    We all want to stay ahead of the curve - after all, that’s what you go to a conference for. But have you ever considered how being ahead of the curve might be dangerous?

    Using a new language before you understand it, putting a new technology into production so you can learn it, abandoning “old practices” before you’ve got the benefit from it… These things are common practice, under the guise of Progress and Keeping Up To Date.

    But while we shouldn’t be running around like headless chickens chasing the next Shiny New Thing, we do need to see to our Continuous Learning and, of course, we should Embrace Change.

    How do we balance these two extremes? And how do we see to our own growth and learning as developers and architects while meeting the needs of our project or team or organisation?

    Trisha has developed Java applications for a range of industries, including finance, manufacturing, technology, open source and non-profit, for companies of all sizes. She has expertise in Java high performance systems, and is passionate about enabling developer productivity. Trisha blogs regularly on subjects that she thinks developers and other humans should care about, she’s a leader of the Sevilla Java User Group, a key member of the London Java Community and a Java Champion - she believes we shouldn't all have to make the same mistakes again and again.

  • Venkat Subramaniam

    Venkat Subramaniam

    Agile Developer Inc.

    Thursday (Session Day 1) — 12:00 - 12:45Let's Get Lazy

    Let's Get Lazy

    How can big data or highly responsive applications scale to the increasing demands for speed and short response time? Adding more servers to the cluster is not the answer. The smartness comes from being lazy as laziness can translate to efficiency and scalability. In this presentation we will learn about what lazy evaluation is, explore some data structures and APIs that promote lazy execution, and tie it back into scalability and efficiency.

    Dr. Venkat Subramaniam is an award-winning author, founder of Agile Developer, Inc., and an instructional professor at the University of Houston.

    He has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia, and is a regularly-invited speaker at several international conferences. Venkat helps his clients effectively apply and succeed with agile practices on their software projects.

    Venkat is a (co)author of multiple books, including the 2007 Jolt Productivity award winning book Practices of an Agile Developer. His latest book is Functional Programming in Java: Harnessing the Power of Java 8 Lambda Expressions. You can reach him by email at venkats@agiledeveloper.com.

  • Yao Yue

    Yao Yue

    Twitter

    Friday (Session Day 2) — 15:00 - 15:45Toward Better Design and Code - A Case Study with Pelikan Cache

    Toward Better Design and Code - A Case Study with Pelikan Cache

    We all strive for better quality and beauty in our design and code, but the guidelines and rules to achieve them are inherently fuzzy. Moreover, in a world with huge appetite for new software, necessity and pace often trump craftsmanship, and developers don't always get the break they need to refine their work.

    After working on datacenter caching for years, I had the luxury to start a project – Pelikan cache (pelikan.io) – with betterment as a primary goal. This talk shares our stories as a case study, providing a bridge between design theory and practice, past lessons and future guidelines. This is an account of how we navigate the complex world of constraints and goals in real-life systems. By focusing on the process itself rather than the results, we hope our experiences will provide some insight into the general development life cycle, and inspire others to improve, and more importantly enjoy, the development of software and distributed systems.

    Yao Yue is a member of Twitter Platform. She is the tech lead and manager of the Cache Team, and has spent the past few years maintaining, designing and implementing various cache-related projects. She maintains several open source projects, including Twemcache and Twemproxy. Yao has a particular interest in building and simplifying systems deployed at-scale. Over the years she has spent much time studying and playing with computer networks, various distributed systems, databases, and parallel programming. Yao has a BS in Math and Physics and a MS in Computer Science. Before joining Twitter, she interned at Facebook, NVIDIA and IBM Research. In her spare time, Yao has been introducing programming to middle/high school girls via drawing and games. She is also a baker.

Workshops

2 Days Workshop - 26th and 27th of April

  • Sandro Mancuso

    Codurance

    Tuesday+Wednesday (Workshop Day 1+2) — 9:00 - 16:00Crafting Code - 2 days

    Crafting Code - 2 days

    About

    This course is designed to help developers write well-crafted code—code that is clean, testable, maintainable, and an expression of the business domain. The course is entirely hands-on, designed to teach developers practical techniques they can immediately apply to real-world projects.

    Why attend?

    Software Craftsmanship is at the heart of this course. Throughout, you will learn about the Software Craftsmanship attitude to development and how to apply it to your workplace.

    Writing Clean Code is difficult. Cleaning existing code, even more so. You should attend if you want to:
    • Write clean code that is easy to understand and maintain
    • Become more proficient in Test-Driven Development (TDD): using tests to design and build your code base
    • Focus your tests and production code according to business requirements using Outside-In TDD (a.k.a. the London School of TDD)

    Clean code necessitates good design. In the process of driving your code through tests, you will learn how to:
    • Understand design principles that lead to clean code
    • Avoid over-engineering and large rewrites by incrementally evolving your design using tests

    Once you have an understanding of the principles at work, we will apply them to Legacy Code to help you gain confidence in improving legacy projects through testing, refactoring and redesigning.

    Content
    • TDD lifecycle and the Outside-In style of TDD
    • Writing unit tests that express intent, not implementation
    • Using unit tests as a tool to drive good design
    • Expressive code
    • Testing and refactoring Legacy Code
    The course is fully hands-on and developers will be writing a lot of code.

    Audience
    Software developers that:
    • are familiar with at least one Object-Oriented language
    • are able to understand Java or C#
    • legacy code exercise will be done in one of the following languages: Java, C#, PHP, Scala, or C++
    • can write and execute unit tests using a framework (such as JUnit, NUnit, etc.)
    • have a basic understanding of mock objects

    Prerequisites
    Developers must:
    • bring their own laptops
    • have a development environment consisting of: their favourite Object-Oriented language, a unit test framework, a mocking library
    • be able to create projects, build source code and run test cases in their development environment
    In addition, a distributed version-control system such as Git is desirable.

    Software craftsman, co-founder of Codurance, author of Software Craftsmanship: Professionalism, Pragmatism, and Pride, and founder of the London Software Craftsmanship Community (LSCC). During his almost 20 years of career, Sandro has worked for startups, software houses, product companies, international consultancy companies, and investment banks. With Codurance, Sandro is now helping many organisations to embrace the Software Craftsmanship principles and values, adopt Extreme Programming practices, and helping developers to become real craftsmen.

Workshop Day 1 - 26th of April

  • Adrian Cockcroft

    Battery Venture

    Tuesday (Workshop Day 1) — 9:00 - 16:00Microservices

    Microservices

    This tutorial goes into depth on the business need for speed that leads to microservices and the characteristics of existing microservice architectures. In addition, there will be a hands-on exercise to model your existing architecture, a future state, and the step by step migration to get there.

    Audience
    The audience is developers, architects, technical leaders, operations engineers, and anybody interested in the design and architecture of services and components. As part of this training, attendees get hands-on in simulating their own microservice architectures, using the open source spigo/simianviz tool.

    Prerequisites
    While no experience of microservices or SOA is necessary, it would be useful. Moreover, some awareness of cloud architectures, web services, and DevOps practices would also help.

    Computer prerequisites
    A laptop where you have admin rights to install software and the ability to sync to Github to get the code and contribute changes. We will use the Go language runtime (currently version 1.4.2). Windows, MacOSX, and Linux are supported.

    Adrian Cockcroft has had a long career working at the leading edge of technology. He’s always been fascinated by what comes next, and he writes and speaks extensively on a range of subjects. At Battery, he advises the firm and its portfolio companies about technology issues and also assists with deal sourcing and due diligence.

    Before joining Battery, Adrian helped lead Netflix’s migration to a large scale, highly available public-cloud architecture and the open sourcing of the cloud-native NetflixOSS platform. Prior to that at Netflix he managed a team working on personalization algorithms and service-oriented refactoring.

    Adrian was a founding member of eBay Research Labs, developing advanced mobile applications and even building his own homebrew phone, years before iPhone and Android launched. As a distinguished engineer at Sun Microsystems he wrote the best-selling “Sun Performance and Tuning” book and was chief architect for High Performance Technical Computing.

    He graduated from The City University, London with a Bsc in Applied Physics and Electronics, and was named one of the top leaders in Cloud Computing in 2011 and 2012 by SearchCloudComputing magazine.

  • Dan North

    Dan North & Associates

    Tuesday (Workshop Day 1) — 9:00 - 16:00Testing, Faster

    Testing, Faster

    After completing the class, participants will be better able to:
    • Identify and apply a number of testing techniques and methods.
    • Make design choices that promote testability.
    • Understand and implement non-functional testing strategies for e.g. performance and resilience testing.
    • Make suitable cost benefit trade-offs for testing throughout the application lifecycle.
    • Recognise the diminishing return of different testing techniques and avoiding over-testing.
    • Apply consistent testing techniques within and across applications.
    • Understand and develop the role of test analysts.
    • Introduce instrumentation, analytics and telemetry into their development approach.
    • Classify testing techniques by various characteristics and describe their respective merits and trade-offs.
    • Apply a risk-based approach to recognising missing or inadequate testing.
    • Apply feature management techniques like semantic versioning and feature hiding.

    Topics:
    • Test Strategy
    • Test Design
    • BDD
    • Designing for Testability

    Programmer and organizational change specialist Dan North applies principles from lean operations and agile software development to help organizations align their technology capabilities with their business objectives. With over twenty years of experience in IT, Dan is a frequent speaker at technology conferences worldwide, has published feature articles in numerous software and business publications, and contributed to The RSpec Book: Behaviour Driven Development with RSpec, Cucumber, and Friends and 97 Things Every Programmer Should Know: Collective Wisdom from the Experts. The originator of Behaviour-Driven Development (BDD) and Deliberate Discovery, Dan is currently working on his book, Accelerated Agile – from months to minutes, and helping organizations radically improve their delivery. He blogs at http://dannorth.net/blog.

  • Dave Zwieback

    Pandora, Mindweather LLC

    Tuesday (Workshop Day 1) — 9:00 - 16:00Awesome Postmortems

    Awesome Postmortems

    Failure is inevitable. Success is unpredictable. Both failure and success are also tremendous learning opportunities. A postmortem, conducted in an skillful way, is one of the best ways to learn from both failures and successes. Postmortems help us identify and address areas of fragility within systems and organizations, making both more resilient.

    In this highly-rated, practical, hands-on session, you’ll learn the theory and, most important, get to practice conducting awesome postmortems, including:
    • How to set the context, and go beyond blame
    • What data to collect before the postmortem and how to present it in the most useful way
    • How to facilitate charged conversations during high-stakes postmortems
    • Finding the real root cause of any failure or success (yes, there is such a thing!)
    • Learning in complex, adaptive systems
    • The new view of “human error”
    • How to recognize and mitigate the effects of cognitive biases
    • Writing up postmortem results (for internal and external audiences)
    • Harnessing prospective hindsight to identify risks and reduce the possibility of future failures

    Audience
    Anyone tasked with facilitating postmortems, retrospectives or learning reviews. And anyone wishing to learn more (and better) from failure and success. Anyone interested in building learning organizations.

    Prerequisites
    None.

    Requirements
    None.

    Dave Zwieback has been working with complex, mission-critical I.T. services and teams for two decades. He is Head of Engineering at Pandora’s Next Big Sound team, and Partner at Mindweather LLC. His career spans small high-tech startups, non-profits, and behemoth engineering, financial services, and pharmaceutical firms. Dave is the author of Beyond Blame: Learning From Failure and Success. To learn more about Dave, visit mindweather.com or follow @mindweather.

  • Francesc Campoy

    Google

    Tuesday (Workshop Day 1) — 9:00 - 16:00Building highly scalable web apps with Go

    Building highly scalable web apps with Go

    During this workshop you will build a web application from scratch using Go to build the backend and some HTML, CSS, JS on the frontend, of course.

    You will gets a hands on experience implementing REST APIs with and without any frameworks. We will also use the built-in concurrency features of Go to make the app faster.

    We will also add features to the app using some of the services available on App Engine:
    • List text here- datastore to store data in a non relational database.
    • Memcache to cache and access data faster.
    • Task queues to schedule tasks to be executed later.
    • Mail to send and receive emails.

    The app will then be deployed on top of Google App Engine, which provides a free tier, so attendees will go through the whole process from inception of an app to deployment and monitoring.

    Francesc Campoy Flores joined the Go team in 2012 as Developer Programs Engineer. Since then, he has written some considerable didactic resources and traveled the world attending conferences and organizing live courses.

    He joined Google in 2011 as a backend software engineer working mostly in C++ and Python, but it was with Go that he rediscovered how fun programming can be. He loves languages; fluent in four of them, he’s now tackling a fifth one.

  • Llewellyn Falco

    DevelopMentor, PluralSight

    Tuesday (Workshop Day 1) — 9:00 - 16:00Code Smells - Developing Design Sense for your Code

    Code Smells - Developing Design Sense for your Code

    "In order to make delicious food, you must eat delicious food...you need to develop a palate capable of discerning good and bad. Without good taste, you can't make good food." - Jiro Ono (World’s Best Sushi Chef)

    The same is true for great code. If we want to make great code we need a refined palate for what great code looks like. We need to look at code and develop a sense for it’s properties and smells. Sadly this is rarely ever done. Programmers are expected to just “know” what is good and what is bad with ever getting a chance to develop and curate an aesthetic sense. Worse, code is rarely looked at unless it is causing us problems so we are expected to be gourmets while spending our time eating at McDonalds.

    Come work on your sense of code. We will look at many snippets to compare and contrast different aspects of what good code is.

    Llewellyn Falco is an Instructor for DevelopMentor & Author for PluralSight. He is an international speaker and the creator of the open source testing tool ApprovalTests.

    He spends most of his time programming in Java and C# specializing in legacy code. He also volunteers creating courseware and teaching kids to program.

  • Mary Poppendieck

    Poppendieck.LLC

    Tuesday (Workshop Day 1) — 9:00 - 16:00Friction Lab

    Friction Lab

    Friction. Starts fires. Stops airplanes. Gives traction. Saps energy. A small bit of friction is unavoidable to gain traction and overcome inertia. A large dose of friction slows everything down, annoying customers and eating away at profits. This lab looks at the four most common sources of friction in digital systems and what to do about them:
    • Friction in the Journey
    • Friction in the Process
    • Friction in the Code
    • Friction in the Flow

    You will Discover:
    • The main causes of friction in the consumer journey
    • How cognitive biases affect our teams as well as our customers
    • A reference process for modern digital systems
    • How to make and keep reliable promises
    • How savvy governments deliver digital services
    • Critical attributes of successful large-scale systems
    • The best way to keep complex systems stable and reliable
    • Why flow efficiency trumps resource efficiency
    • Six ways to increase flow efficiency

    More Information: Essay on Friction.

    Mary Poppendieck started her career as a process control programmer, moved on to manage the IT department of a manufacturing plant, and then ended up in product development, where she was both a product champion and department manager.

    Mary considered retirement 1998, but instead found herself managing a government software project where she first encountered the word "waterfall." When Mary compared her experience in successful software and product development to the prevailing opinions about how to manage software projects, she decided the time had come for a new paradigm. She wrote the award-winning book Lean Software Development: An Agile Toolkit in 2003 to explain how the lean principles from manufacturing offer a better approach to software development.

    Over the past several years, Mary has found retirement elusive as she lectures and teaches classes with her husband Tom. Based on their on-going learning, they wrote a second book, Implementing Lean Software Development: From Concept to Cash in 2006, a third, Leading Lean Software Development: Results are Not the Point in 2009, and a fourth book, The Lean Mindset: Ask the Right Questions in 2013. A popular writer and speaker, Mary continues to bring fresh perspectives to the world of software development.

    Website: http://www.poppendieck.com

  • Rachel Davies

    Unruly

    Tuesday (Workshop Day 1) — 9:00 - 16:00Stop Herding, Start Leading

    Stop Herding, Start Leading

    When you lead a software team, everyone benefits from setting firm foundations. You will find that developers on your team work better together with a clear vision and sense of purpose. With a firm foundation, you will be able to strike a balance between innovation and consistency on technical architecture. All this is underpinned by a streamlined approach to daily work, where the team can see progress and improve practical skills on the way.

    When you build firm foundations, your team will be able to handle the changes that a fast-paced business throws down. When you have the key to individual developer motivation, conflicts become easier to resolve and you will find team discussion inspires improvement. In order to inspire confidence from others, you need a solid approach, trust springs from your skills so you need to keep them sharp.

    In this workshop, you will acquire a new framework that helps set up a team for success maintaining momentum on delivering business value. The skills we will cover can be useful at any point in the life of a project. Come to this workshop if you aspire to lead software teams to deliver great products while finding satisfaction in their craft.

    We will cover a range of topics through presentation and practical exercises, you will have the opportunity to try all the techniques explained in the workshop. We will talk about real scenarios that you are likely to face and ways that you can lead your team through them. As you will learn, the secret is to build firm foundations for your technical leadership.

    Prerequisites: The only prerequisite for this workshop is some experience working in software development and a desire to lead teams to success. This workshop is suitable for most conference attendees whether they are senior developers, technical managers, and architects.

    Rachel Davies is co-author of the first “Agile Coaching” book and works in UK as Team Lead at Unruly, the leading global platform for social video marketing. Internationally recognized and presenting at industry conferences worldwide, Rachel started out working as a software developer and has been an agile practitioner since 2000 applying a range of agile methods including XP, SCRUM, Lean/Kanban, and DSDM. Follow her @rachelcdavies

  • Rafael Ördög

    Emarsys

    Tuesday (Workshop Day 1) — 9:00 - 16:00Lean Poker

    Lean Poker

    Lean Poker is this: you and a small group of strangers are going to develop a bot in a language of your choice, that plays poker against other bots. (Don't worry if you don't know poker, we will teach you.) All you need to do is write a function that takes a data structure containing cards and bets your bot sees during the game, and return a single number: the amount you are willing to bet at that point.

    Now here is the catch: even before you start coding the bots play a round in a matter of seconds, and if your bot wins you get points. If it comes second, you get less points. Otherwise you get nothing. The next minute another game plays, and another one, and another one… that goes on all day long, while you and your friends are desperately hacking away on the code, and keep deploying, deploying, and deploying. Don’t worry about the deployment pipeline, that’s already set up for you.

    During this pretty intense day you will sometimes be cheering for your bot to take over, you will be deploying desperately to change the course of events when your bot keeps losing, but even more importantly you will learn how to create as much value as you can in a short period of time, while you are mostly just having fun.

    Please check out leanpoker.org for more information.

    Rafael is a Lead Developer at Budapest-based Emarsys and popular speaker in the Hungarian software community. As a founding member of Emarsys CraftLab - the dedicated coaching team of Emarsys - he has taught university courses and lectured at numerous conferences. His passion for short feedback loops drove him to create Lean Poker, a workshop where developers have the opportunity to experiment with continuous delivery in an artificial environment.

  • Raoul-Gabriel Urma

    Cambridge Coding Academy

    Tuesday (Workshop Day 1) — 9:00 - 16:00Java 8 Lambda Expressions & Streams

    Java 8 Lambda Expressions & Streams

    Java 8 is the largest update to Java in its history. Some of the best ideas from functional programming are migrating their way into Java 8. This intense one day workshop is a hands-on lab session comprising slides, quizzes, live coding and unit test exercises which covers important Java 8 topics.

    Why take this tutorial?
    Java 8 encourages a different style of programming that: - lets you cope for requirement changes (less engineering efforts!) - lets you take advantages of multi-core architecture easily (faster code!) - lets you process large collections with SQL-like operations (do more in less time!) - lets you write more concise code (better readability & maintainability!)

    At the end of the workshop you will be able to use the most important Java 8 features to write easier to read, more flexible code that scales to multicore.

    Topics covered include:
    Lambdas & Streams
    • Behaviour Parameterisation
    • What is a lambda?
    • Method references
    • Collection Processing
    • Stream operations and patterns
    • Stream Optimisation
    Collectors & Data Parallelism
    • Grouping and partitioning
    • Collection Operations
    • Arithmetic collectors
    • Advanced Queries
    • What is Data Parallelism?
    • Parallelising your streams
    • Decomposition performance

    Raoul-Gabriel Urma is a PhD candidate in Computer Science at the University of Cambridge. He is co-author of the book Java 8 in Action: lambdas, streams, and functional-style programming published by Manning. In addition, Raoul has written over 10 peer-reviewed articles, delivered over 20 technical talks at international conferences. He has worked for large companies such as Google, eBay, Oracle, and Goldman Sachs, as well as for several startup projects. He is also the CEO and Co-Founder of the Cambridge Coding Academy and a Fellow of the Royal Society of Arts.

  • Seth Vargo

    Hashicorp

    Tuesday (Workshop Day 1) — 9:00 - 16:00Modern Infrastructure With Terraform & Consul

    Modern Infrastructure With Terraform & Consul

    Terraform is a fantastic tool for provisioning infrastructure, but with such a broad range of responsibilities, it is easy to become overwhelmed with the API, terminology, and workflow. This workshop will cover the basics of Terraform. Beginning with a quick lecture-style introduction to Terraform, we will quickly dive deep into the tool, following the fictitious evolution of a startup as our guide. Not only will this workshop discuss various components of Terraform, but attendees will also understand why and how they might make infrastructure changes with Terraform. Now that our infrastructure is provisioned, how can we connect the various components? With one or two machines, it is easy to point IP addresses, but what happens when we have thousands? We will use Terraform to create a Consul cluster and explore service discovery and health monitoring with Consul. Depending on the time remaining, we will explore the complex problems of secret management using Vault.

    Key takeaways:
    • Provision and manage infrastructure with Terraform
    • Understand the evolution of applications as they relate to scale and operations
    • Explore service discovery and service discovery techniques

    Prerequisites:
    • Participants should have an active AWS account with permissions to create and manage resources
    • Participants should have the latest version of Terraform installed locally
    • Participants should have administrator privileges on their laptop or the ability to escalate privilege easily
    • Participants should have a modern Internet browser such as Firefox, Chrome, or Safari (not Internet Explorer)
    • Participants should have some familiarity with running infrastructure

    You can view the materials here: https://j.mp/tfmat, and that will also need to be distributed to the attendees a few days in advance, since there is some setup required on their part.

    Seth Vargo has been a member of the DevOps community for about five years. He is a polyglot software engineer and open source advocate at HashiCorp. Previously, Seth worked at Chef (Opscode), CustomInk, and a few Pittsburgh-based startups. He is a co-author of O'Reilly's "Learning Chef" and is passionate about eliminating inequality in technology and organizational culture. When he is not writing software or working on open source, Seth enjoys speaking at local user groups and conferences. He is a co-organizer for DevOps Days Pittsburgh and loves all things bacon. You can find him on the Internet under the single moniker "sethvargo".

Workshop Day 2 - 27th of April

  • Dan North

    Dan North & Associates

    Wednesday (Workshop Day 2) — 9:00 - 16:00Software, Faster

    Software, Faster

    Formerly Accelerated Agile

    Great software professionals build better software faster. Agile methods, continuous delivery and software craftsmanship helped speed up delivery from years to months or even weeks, but then what?

    Some teams are able to deliver software at a speed of change like you have never seen before, delivering quality software in days or even hours, again and again. So what is keeping the rest of us from doing so? Now is the time to go from months to minutes, to rethink the way we organize and improve our software development and delivery process.

    Software, Faster is for people who believe it can be done. People who feel themselves limited by current Agile, CD and Craftsmanship thinking. People who want to go back to basics and uncover new, simpler ways to deliver great software.

    Are you a seasoned agile developer who is frustrated at how slow your “hyper-performing” process feels? Are you suffering with an unwieldy feature backlog, the pantomime of estimation, the card wall where cards go to die, the efforts to automate where it obviously isn’t adding anything? Are you fed up with the artificial commitment of sprints and the unwelcome surprises that still seem to derail your projects?

    Software, Faster brings agile principles into the 21st century. You will learn new techniques that both enhance and replace existing agile practices, some of which are counter-intuitive and many which are completely counter to current “agile” doctrine. Using a mixture of discussion, instruction and exploration you will start to think differently about design, architecture, development and testing, operations, automation and team dynamics, as well as working with legacy systems and integrating with third parties.

    What you will learn:
    • How to challenge the received wisdom of established Agile methods
    • How to design and architect for rapid and sustainable delivery
    • Why understanding risk and embracing uncertainty are at the heart of faster delivery
    • How to manage build, release and operations
    • How systems thinking can help you plan effectively and estimate accurately
    • How to identify and reduce gaps in your testing strategy
    • How to engage with legacy systems and integrating with third parties
    • How to manage different levels of skill and experience within a team

    Programmer and organizational change specialist Dan North applies principles from lean operations and agile software development to help organizations align their technology capabilities with their business objectives. With over twenty years of experience in IT, Dan is a frequent speaker at technology conferences worldwide, has published feature articles in numerous software and business publications, and contributed to The RSpec Book: Behaviour Driven Development with RSpec, Cucumber, and Friends and 97 Things Every Programmer Should Know: Collective Wisdom from the Experts. The originator of Behaviour-Driven Development (BDD) and Deliberate Discovery, Dan is currently working on his book, Accelerated Agile – from months to minutes, and helping organizations radically improve their delivery. He blogs at http://dannorth.net/blog.

  • David Evans

    Neuri Consulting

    Wednesday (Workshop Day 2) — 9:00 - 16:00Specification by Example

    Specification by Example

    Specification by Example (SBE) is the corner-stone of a successful software quality strategy in agile and lean processes. In this workshop we explore the process patterns that successful teams use to implement SBE, and give you practical experience of how to apply the technique to bridge the communication gap between stakeholders and implementation teams. You will be learning the tips and tricks that successful teams use to build quality into software from the start, as well as collaborative techniques to help design, develop and deliver systems fit for business purpose.

    The workshop is aimed at product owners, testers, developers and business analysts. Through a series of facilitated exercises and group discussion, you will learn:
    • How to overcome problems of incomplete, unclear or ambiguous requirements
    • How to illustrate specifications with concrete examples to create a single source of truth for testing and development
    • Tips for how to run specification workshops to maximise collaboration and efficiency
    • Identifying the characteristics of good specifications and examples
    • How to create a living documentation system to add value to your process long-term

    This is a hands-on tutorial, using group exercises and collaborative learning techniques to help you go beyond the theory, and give you insights into the subtleties for success and traps to avoid when creating agile specifications and testable examples of acceptance criteria. The secret for success with SBE is to be able to apply the concepts in practice – you will learn from an experienced coach the techniques for succeeding when using SBE in your own domain.

    The course material is based on Gojko Adzic’s best-selling books Specification by Example and Bridging the Communication Gap, as well as Gojko and David’s new book 50 Quick Ideas to Improve your Tests.

    David Evans is an experienced agile consultant, coach and trainer with over 25 years of IT experience. A thought-leader in the field of agile quality, he has provided training and consultancy for clients worldwide. A regular speaker at events and conferences across Europe, David was voted Best Keynote Speaker at Agile Testing Days 2013. He is co-author of the best-selling books 50 Quick Ideas to Improve Your User Stories and 50 Quick Ideas to Improve Your Tests, and has also had several papers published in international IT journals. David is a partner in Neuri Consulting LLP.

  • Doc Norton

    CTO2

    Wednesday (Workshop Day 2) — 9:00 - 16:00Creative Collaboration: Tools for Teams

    Creative Collaboration: Tools for Teams

    Even high functioning teams occasionally have a hard time making decisions or coming up with creative ideas. There are times when the conversation seems to drag on long after a decision is reached. There are times when we have too many people involved in the discussion or the wrong people involved. There are times when we're not sure who's the actual decision maker. And there are those times when we just seem to be out of synch with each other. This creative collaboration workshop provides tools that help resolve all of these issues.

    Doc is passionate about working with teams to improve delivery and building great organizations. Once a dedicated code slinger, Doc has turned his energy toward helping teams, departments, and companies work better together in the pursuit of better software. Working with a wide range of companies such as Groupon, Nationwide Insurance, Belly, and many others, Doc has applied tenants of agile, lean, systems thinking, and servant leadership to develop highly effective cultures and drastically improve their ability to deliver valuable software and products.

  • Jérôme Petazzoni

    Docker

    Wednesday (Workshop Day 2) — 9:00 - 16:00Advanced Docker concepts and container orchestration

    Advanced Docker concepts and container orchestration

    You have installed Docker, you know how to run containers, and have written Dockerfiles to build container images for your applications (or parts of your applications). Now comes the next part: connecting multiple containers together and deploying them on a cluster of Docker hosts instead of your single development machine.

    This is what we will cover, along with some production-related questions: How to manage logs? Backups? Remote access? Security upgrades?

    In this workshop, we will present the networking model of containers and cover how to run containerized applications spanning multiple Docker hosts. We will give recipes to implement cleanly various ops tasks including logging, backups, and more. Finally, we will discuss orchestration and scheduling. We will present solutions like Swarm and Mesos, and see some of them in action on an actual microservices architecture.

    Who should attend:
    Developers and system administrators who are familiar with basic Docker concepts and want to learn how to deploy Docker for real-world applications.

    Take back to work:
    You will know how to deploy Docker "for real," and how to perform common operational tasks with containers. You will learn about patterns and best practices to scale applications with Docker and containers.

    Topics include:
    • Pre-requirements
    • VM environment
    • Our sample application
    • Running the whole app on a single node
    • Finding bottlenecks
    • Scaling workers on a single node
    • Scaling HTTP on a single node
    • Connecting to containers on other hosts
    • Abstracting connection details
    • Backups
    • Logs
    • Security upgrades
    • Network traffic analysis
    • Introducing Swarm
    • Setting up our Swarm cluster
    • Running on Swarm
    • Network plumbing on Swarm
    • Last words

      Additional Materials:
      You won't need to pre-install Docker before the course; each student will be given credentials to connect to an individual virtual machine. All you need is a computer with an SSH client.

      Jerome is a senior engineer at Docker, where he helps others to containerize all the things. In another life he built and operated Xen clouds when EC2 was just the name of a plane, developed a GIS to deploy fiber interconnects through the French subway, managed commando deployments of large-scale video streaming systems in bandwidth-constrained environments such as conference centers, operated and scaled the dotCloud PAAS, and various other feats of technical wizardry. When annoyed, he threatens to replace things with a very small shell script.

  • Jez Humble

    Jez Humble & Associates LLC

    Wednesday (Workshop Day 2) — 9:00 - 16:00High performance organizations

    High performance organizations

    Large organizations often struggle to leverage software to create innovative products. A number of organizational factors conspire to create obstacles to moving fast at scale, including culture, governance, and financial management, and the application of portfolio and program management strategies that do not take advantage of the unique characteristics of software.

    What you will learn:
    In this training we’ll discuss how to take a lean approach to developing new products and running large scale programs of work, and how to grow a culture that enables organizations to turn software into a competitive advantage.

    Audience:
    • Executives interested in strategy, leadership, organization culture, and good governance
    • Directors of IT, both for applications and for infrastructure and operations
    • Anyone working in program or project management, including members of the PMO
    • People in finance and accounting or in governance, regulation, and compliance who are involved in delivery.

    Jez Humble was a vice president at Chef, a lecturer at UC Berkeley, and co-author of the Jolt Award winning Continuous Delivery, published in Martin Fowler’s Signature Series (Addison Wesley, 2010), and Lean Enterprise, in Eric Ries’ Lean series (O’Reilly, 2014). He has worked as a software developer, product manager, executive, consultant and trainer across a wide variety of domains and technologies. His focus is on helping organisations deliver valuable, high-quality software frequently and reliably through implementing effective engineering practices.

  • Joseph Pelrine

    MetaProg GmbH

    Wednesday (Workshop Day 2) — 9:00 - 16:00Dealing with 'self-organisation'

    Dealing with 'self-organisation'

    Self-organisation is one of the most misunderstood concepts used in agile practice. If people really understood the dynamics of self-organising systems, they most probably would avoid trying to use it. Instead, they (mis-)apply some ideas, close their eyes, wish real hard, hope that magic happens, and then use the term “unintended consequences” to describe the result.

    In spite of this fact, the ideal of the “self-organising team” is fundamental to Agile methods. Agile coaches are constantly challenged with how to motivate / persuade / trick their teams into self-organising and doing things, without telling them what to do, but there is very little information or training on this topic. Allowing a team to self-organise along the lines of "oh well, they're all adults, they'll figure it out" is just as irresponsible as reverting to the command-and control school of management. So, how should one go about it?

    The goal of this workshop is to provide you with both the answers to that question, and with the tools you need to do the job. In this workshop, we’ll explore what self-organisation actually is and why teams don’t self-organise, and we’ll discuss what self-organisation will do to and for your teams. You’ll then learn practical techniques from social complexity science and social psychology that will help you achieve the benefits of self-organisation without suffering the unintended consequences of it.

    As Kent Beck’s assistant, Joseph Pelrine was one of the first in the world who worked with eXtreme Programming. As Europe’s first certified ScrumMaster and Trainer, he was largely responsible for introducing Scrum to the german-speaking part of Europe. For almost 20 years, Joseph Pelrine has been helping some of the world’s most important companies improve their software development process and successfully transition to Agile. A noted international speaker, he conducts research in the field of social complexity theory and its application to Agile processes, and is currently pursuing a PhD in psychology.

  • Kelsey Hightower

    Google

    Wednesday (Workshop Day 2) — 9:00 - 16:00Taming microservices with Kubernetes

    Taming microservices with Kubernetes

    Materials or downloads needed in advance
    Google Compute Engine account, a laptop, working SSH client, and GitHub account.

    Description
    Linux containers are only part of the puzzle when designing large scale infrastructure for microservices. First you’ll need a host to run your containers, as the OS is still a requirement. Next you’ll need to configure your containers and deploy them in a way that utilizes your resources efficiently. When that’s all done, you’ll need a way for the services running inside your containers to announce and discover each other. Oh and you need to do all of that fast; manual processes don’t work at scale. A tall order no doubt, but Kubernetes has you covered.

    After attending this tutorial you’ll know how to:
    • Provision a small Kubernetes cluster
    • Package your applications as Linux containers
    • Manage application configurations with etcd
    • Implement service discovery and keep your sanity
    • Deploy and manage Linux containers with Kubernetes

    Kelsey has worn every hat possible throughout his career in tech and enjoys leadership roles focused on making things happen and shipping software. Kelsey is a strong open source advocate focused on building simple tools that make people smile. When he is not slinging Go code you can catch him giving technical workshops covering everything from Programming, System Administration, and his favorite Linux distro of the month (CoreOS).

  • Marty Cagan

    Silicon Valley Product Group

    Wednesday (Workshop Day 2) — 9:00 - 16:00Product Discovery Workshop: How To Create Products Customers Love

    Product Discovery Workshop: How To Create Products Customers Love

    Who is this for?
    This is a session for people responsible for leading products - product owners and product designers, startup co-founders, product managers and product architects.

    What will be workshop cover?
    This workshop is specifically designed for the leaders of technology-powered product organizations that want to dive deep into the Product Owner role and learn the leading edge practices from Lean Startups, Lean UX, Agile, Customer Development, Product Discovery, and Design Thinking, as well as techniques and practices from the very best technology-enabled product companies in the world. The course is designed to teach you everything you need to know to be a confident and competent product owner/product leader for products that make a difference. It will be an intense day, but my intention is to provide the single best learning opportunity in the world for aspiring product leaders.

    Who will be teaching this workshop?
    The workshop will be delivered personally by Marty Cagan, the founder of the Silicon Valley Product Group. Before founding the Silicon Valley Product Group to pursue his interests in helping others create successful products through his writing, speaking, investing and advising, Marty was most recently senior vice-president of product and design for eBay, where he was responsible for defining products and services for the company’s global e-commerce trading site. Prior to that Marty was an engineer for 10 years at HP Labs, and the VP Platform and Tools at Netscape Communications. Marty is the author of the book Inspired: How To Create Products Customers Love.
  • Sam Newman

    ThoughtWorks

    Wednesday (Workshop Day 2) — 9:00 - 16:00How to build microservices

    How to build microservices

    Microservices Architecture is a concept that aims to decouple a solution by decomposing functionality into discrete services. Microservice architectures can lead to easily changeable, maintainable systems that can be more secure, performant and stable.

    In this workshop, you will discover a consistent and reinforcing set of tools and practices rooted in the philosophy of small and simple; this can help you move towards a microservice architecture. Microservices are typically small systems, with single responsibilities, communicating via the web's uniform interface, installed as well-behaved operating system services. However, with these finer-grained systems come new sources of complexity.

    What you will learn
    During this workshop, you will understand in depth what the benefits are of finer-grained architectures, how to break apart your existing monolithic applications, and the practical concerns of managing these systems. We will discuss how to ensure your systems can be more stable, how to handle security and the additional complexity of monitoring and deployment.

      We will cover the following topics:
    • Principle-driven evolutionary architecture
    • Capability modelling and the “town planning” metaphor
    • RESTful Web integration and event-driven systems of systems
    • What microservices are (and aren't)
    • Integration techniques including cross-microservice use cases like search and reporting
    • How to handle interface version changes
    • Deployment techniques and supporting technology
    • The importance of matching your organisational structure and your architecture
    • Continuous Integration and testing of microservices

    Attendees will need either a Windows or Mac machine with administrator access, and at least 10GB of free disk space for the workshop software, which will be supplied via USB. Linux may work, but we won't be able to provide additional help to make this work.

    Sam Newman is a technologist at ThoughtWorks, where he currently splits his time between encouraging and sharing innovation globally and helping design and build their internal systems. He has worked with a variety of companies in multiple domains around the world, often with one foot in the developer world, and another in the IT operations space. If you asked him what he does, he'd say 'I work with people to build better software systems'. He has written articles, presented at conferences, and sporadically commits to open source projects. He is currently writing a book, Building Microservices, which is available in early access form now, and dead tree version very soon.

Schedule

Thursday

Session Day 1

Friday

Session Day 2
Platform 1Platform 2Platform 3Blue TentGreen TentMagenta Tent
08:00 - 08:55Registration & Breakfast
08:55 - 09:05Opening Ceremony
09:05 - 10:05Keynote: Embracing uncertainty: why you should and why you won’tDan North (Dan North & Associates)
10:05 - 10:45Sponsor Pitch
10:45 - 11:05Coffee Break
11:05 - 11:50Seven Secrets of Maintainable CodebasesAdam Tornhill (Author of Your Code as a Crime Scene)Deploying and Scaling MicroservicesSam Newman (ThoughtWorks)Staying Ahead of the CurveTrisha Gee (JetBrains)The Bootiful MicroserviceJosh Long (Pivotal)Jepsen VIKyle Kingsbury (Stripe)Building Event-driven Serverless Applications (hands-on session)Danilo Poccia (AWS)
11:50 - 12:00Mini Break
12:00 - 12:45The Evolution of MicroservicesAdrian Cockcroft (Battery Venture)Let's Get LazyVenkat Subramaniam (Agile Developer Inc.)How do we know IT systems are working well?Mark Burgess (Oslo)Usable Ops: How to make web infrastructure management easierKate Heddleston (Kate Heddleston LLC)Mobile Delivery with a Devops MindsetPatrick Debois (Smalltownheroes)
12:45 - 14:05Lunch
14:05 - 14:50Architecture without architectsMartin Fowler (ThoughtWorks) - Erik Dörnenburg (ThoughtWorks)Empathy - The Hidden Ingredient of Good Software DevelopmentDaniel Bryant (OpenCredo)Containers will not fix your broken culture (and other hard truths)Bridget Kromhout (Pivotal)Scheduling Applications at ScaleSeth Vargo (Hashicorp)Secrets, Certificates, and Identity with VaultMitchell Hashimoto (HashiCorp)Cloud Native Java (hands-on session)Josh Long (Pivotal)
14:50 - 15:00Mini Break
15:00 - 15:45Extreme Programming Myths & Legends BustedRachel Davies (Unruly)Scaling Engineering CultureRaffi Krikorian (Uber)A meta-pipeline for generating continuous delivery pipelines for microservicesSteve Freeman (Zuhlke Engineering Ltd.) - Hilverd Reker (Springer Nature)Versions, Variants, Reuse - Get me out of here!Danilo Beuche (pure-systems)Patterns to deploy and scale containerized applications in production with Docker SwarmJérôme Petazzoni (Docker)
15:45 - 16:10Coffee Break + 5 min Sponsor Pitch
16:10 - 16:55Architecture, I do not think it means what you think it meansAndrew Clay Shafer (Pivotal)A General Theory of ReactivityKris Kowal (Uber)The End of Data Silos: Interoperability through CryptocurrencyNeha Narula (MIT)"Thick" Data and Analysis: Engineering with a capital EJohn Allspaw (Etsy)Unikernels: How we got here and where we're goingAmir Chaudhry (Docker)The Miracle of ES6 Generators (hands-on session)Bodil Stokke (Trading Technologies)
16:55 - 17:05Mini Break
17:05 - 17:50Does TDD really lead to good design?Sandro Mancuso (Codurance)What I Wish I Knew Before Scaling Uber to 1,000 ServicesMatt Ranney (Uber)The Fallacy Of FastInes Sombra (Fastly)Adventures in Elm: Question Your PrinciplesJessica Kerr (Stripe)An introduction to the GROWS MethodTony Brill (Square 1 Bank)
17:50 - 18:00Mini Break
18:00 - 19:00Closing Keynote: Great Product Team, Successful ProductMarty Cagan (Silicon Valley Product Group)
19:00 - 20:30Dinner
20:30 - 23:59EPAM Party & Coding Dojo
Platform 1
TimeSession
08:00 - 08:55Registration & Breakfast
08:55 - 09:05Opening Ceremony
09:05 - 10:0509:05 - 10:05Keynote: Embracing uncertainty: why you should and why you won’tDan North (Dan North & Associates)
10:05 - 10:45Sponsor Pitch
10:45 - 11:05Coffee Break
11:05 - 11:50Seven Secrets of Maintainable CodebasesAdam Tornhill (Author of Your Code as a Crime Scene)
11:50 - 12:00Mini Break
12:00 - 12:45The Evolution of MicroservicesAdrian Cockcroft (Battery Venture)
12:45 - 14:05Lunch
14:05 - 14:50Architecture without architects
14:50 - 15:00Mini Break
15:00 - 15:45Extreme Programming Myths & Legends BustedRachel Davies (Unruly)
15:45 - 16:10Coffee Break + 5 min Sponsor Pitch
16:10 - 16:55Architecture, I do not think it means what you think it meansAndrew Clay Shafer (Pivotal)
16:55 - 17:05Mini Break
17:05 - 17:50Does TDD really lead to good design?Sandro Mancuso (Codurance)
17:50 - 18:00Mini Break
18:00 - 19:0018:00 - 19:00Closing Keynote: Great Product Team, Successful ProductMarty Cagan (Silicon Valley Product Group)
19:00 - 20:30Dinner
20:30 - 23:59EPAM Party & Coding Dojo
Platform 2
TimeSession
08:00 - 08:55Registration & Breakfast
08:55 - 09:05Opening Ceremony
09:05 - 10:0509:05 - 10:05Keynote: Embracing uncertainty: why you should and why you won’tDan North (Dan North & Associates)
10:05 - 10:45Sponsor Pitch
10:45 - 11:05Coffee Break
11:05 - 11:50Deploying and Scaling MicroservicesSam Newman (ThoughtWorks)
11:50 - 12:00Mini Break
12:00 - 12:45Let's Get LazyVenkat Subramaniam (Agile Developer Inc.)
12:45 - 14:05Lunch
14:05 - 14:50Empathy - The Hidden Ingredient of Good Software DevelopmentDaniel Bryant (OpenCredo)
14:50 - 15:00Mini Break
15:00 - 15:45Scaling Engineering CultureRaffi Krikorian (Uber)
15:45 - 16:10Coffee Break + 5 min Sponsor Pitch
16:10 - 16:55A General Theory of ReactivityKris Kowal (Uber)
16:55 - 17:05Mini Break
17:05 - 17:50What I Wish I Knew Before Scaling Uber to 1,000 ServicesMatt Ranney (Uber)
17:50 - 18:00Mini Break
18:00 - 19:0018:00 - 19:00Closing Keynote: Great Product Team, Successful ProductMarty Cagan (Silicon Valley Product Group)
19:00 - 20:30Dinner
20:30 - 23:59EPAM Party & Coding Dojo
Platform 3
TimeSession
08:00 - 08:55Registration & Breakfast
08:55 - 09:05Opening Ceremony
09:05 - 10:0509:05 - 10:05Keynote: Embracing uncertainty: why you should and why you won’tDan North (Dan North & Associates)
10:05 - 10:45Sponsor Pitch
10:45 - 11:05Coffee Break
11:05 - 11:50Staying Ahead of the CurveTrisha Gee (JetBrains)
11:50 - 12:00Mini Break
12:00 - 12:45How do we know IT systems are working well?Mark Burgess (Oslo)
12:45 - 14:05Lunch
14:05 - 14:50Containers will not fix your broken culture (and other hard truths)Bridget Kromhout (Pivotal)
14:50 - 15:00Mini Break
15:00 - 15:45A meta-pipeline for generating continuous delivery pipelines for microservices
15:45 - 16:10Coffee Break + 5 min Sponsor Pitch
16:10 - 16:55The End of Data Silos: Interoperability through CryptocurrencyNeha Narula (MIT)
16:55 - 17:05Mini Break
17:05 - 17:50The Fallacy Of FastInes Sombra (Fastly)
17:50 - 18:00Mini Break
18:00 - 19:0018:00 - 19:00Closing Keynote: Great Product Team, Successful ProductMarty Cagan (Silicon Valley Product Group)
19:00 - 20:30Dinner
20:30 - 23:59EPAM Party & Coding Dojo
Blue Tent
TimeSession
08:00 - 08:55Registration & Breakfast
08:55 - 09:05Opening Ceremony
09:05 - 10:0509:05 - 10:05Keynote: Embracing uncertainty: why you should and why you won’tDan North (Dan North & Associates)
10:05 - 10:45Sponsor Pitch
10:45 - 11:05Coffee Break
11:05 - 11:50The Bootiful MicroserviceJosh Long (Pivotal)
11:50 - 12:00Mini Break
12:00 - 12:45Usable Ops: How to make web infrastructure management easierKate Heddleston (Kate Heddleston LLC)
12:45 - 14:05Lunch
14:05 - 14:50Scheduling Applications at ScaleSeth Vargo (Hashicorp)
14:50 - 15:00Mini Break
15:00 - 15:45Versions, Variants, Reuse - Get me out of here!Danilo Beuche (pure-systems)
15:45 - 16:10Coffee Break + 5 min Sponsor Pitch
16:10 - 16:55"Thick" Data and Analysis: Engineering with a capital EJohn Allspaw (Etsy)
16:55 - 17:05Mini Break
17:05 - 17:50Adventures in Elm: Question Your PrinciplesJessica Kerr (Stripe)
17:50 - 18:00Mini Break
18:00 - 19:0018:00 - 19:00Closing Keynote: Great Product Team, Successful ProductMarty Cagan (Silicon Valley Product Group)
19:00 - 20:30Dinner
20:30 - 23:59EPAM Party & Coding Dojo
Green Tent
TimeSession
08:00 - 08:55Registration & Breakfast
08:55 - 09:05Opening Ceremony
09:05 - 10:0509:05 - 10:05Keynote: Embracing uncertainty: why you should and why you won’tDan North (Dan North & Associates)
10:05 - 10:45Sponsor Pitch
10:45 - 11:05Coffee Break
11:05 - 11:50Jepsen VIKyle Kingsbury (Stripe)
11:50 - 12:00Mini Break
12:00 - 12:45Mobile Delivery with a Devops MindsetPatrick Debois (Smalltownheroes)
12:45 - 14:05Lunch
14:05 - 14:50Secrets, Certificates, and Identity with VaultMitchell Hashimoto (HashiCorp)
14:50 - 15:00Mini Break
15:00 - 15:45Patterns to deploy and scale containerized applications in production with Docker SwarmJérôme Petazzoni (Docker)
15:45 - 16:10Coffee Break + 5 min Sponsor Pitch
16:10 - 16:55Unikernels: How we got here and where we're goingAmir Chaudhry (Docker)
16:55 - 17:05Mini Break
17:05 - 17:50An introduction to the GROWS MethodTony Brill (Square 1 Bank)
17:50 - 18:00Mini Break
18:00 - 19:0018:00 - 19:00Closing Keynote: Great Product Team, Successful ProductMarty Cagan (Silicon Valley Product Group)
19:00 - 20:30Dinner
20:30 - 23:59EPAM Party & Coding Dojo
Magenta Tent
TimeSession
08:00 - 08:55Registration & Breakfast
08:55 - 09:05Opening Ceremony
09:05 - 10:0509:05 - 10:05Keynote: Embracing uncertainty: why you should and why you won’tDan North (Dan North & Associates)
10:05 - 10:45Sponsor Pitch
10:45 - 11:05Coffee Break
11:05 - 11:50Building Event-driven Serverless Applications (hands-on session)Danilo Poccia (AWS)
11:50 - 12:00Mini Break
12:00 - 12:45
12:45 - 14:05Lunch
14:05 - 14:50Cloud Native Java (hands-on session)Josh Long (Pivotal)
14:50 - 15:00Mini Break
15:00 - 15:45
15:45 - 16:10Coffee Break + 5 min Sponsor Pitch
16:10 - 16:55The Miracle of ES6 Generators (hands-on session)Bodil Stokke (Trading Technologies)
16:55 - 17:05Mini Break
17:05 - 17:50
17:50 - 18:00Mini Break
18:00 - 19:0018:00 - 19:00Closing Keynote: Great Product Team, Successful ProductMarty Cagan (Silicon Valley Product Group)
19:00 - 20:30Dinner
20:30 - 23:59EPAM Party & Coding Dojo
Platform 1Platform 2Platform 3Blue TentGreen TentMagenta Tent
08:00 - 09:00Breakfast
09:00 - 10:00Keynote: Psychological Aspects of EstimatingJoseph Pelrine (MetaProg GmbH)
10:00 - 10:40Sponsor Pitch
10:40 - 11:05Coffee Break
11:05 - 11:50Microservices: software that fits in your headDan North (Dan North & Associates)Building Scalable Stateful ServicesCaitie McCaffrey (Twitter)Clients in control: building demand-driven systems with Om NextAntónio Monteiro (TU Dresden)Authority, power, and motivationJoseph Pelrine (MetaProg GmbH)ResilienceJeremy Keith (Clearleft)Be a hero of your data with Neo4j (hands-on session)Jarosław Pałka (Allegro Group)
11:50 - 12:00Mini Break
12:00 - 12:45You Can Have It All: Software Development at Ludicrous SpeedJez Humble (Jez Humble & Associates LLC)Monitoring As A Service - Modernity and Self-ServiceJames Turnbull (Kickstarter)Kotlin - Ready for productionHadi Hariri (JetBrains)Connecting the Unconnected: IoT Made SimpleDanilo Poccia (AWS)Calm Technology - Principles and Patterns for Non-Intrusive DesignAmber Case (caseorganic.com)
12:45 - 14:05Lunch + Raffle
14:05 - 14:50The Technical Debt TrapDoc Norton (CTO2)DevOps for Developers: Building an Effective Ops OrgCharity Majors (Facebook)Under the hood of the C# programming languageBart De Smet (Microsoft)Micro-Service Protocols of InteractionTodd Montgomery (StoneTor LLC)Get a Whiff of ThisSandi Metz (TorqueForge, LLC)Java Performance Tuning (hands-on session)Kirk Pepperdine (JClarity)
14:50 - 15:00Mini Break
15:00 - 15:45Toward Better Design and Code - A Case Study with Pelikan CacheYao Yue (Twitter)Cognitive Biases in Engineering OrganizationsJonathan Klein (Attend)Application Sandboxes vs. ContainersJessie Frazelle (Mesosphere)Providing Flexible Database Consistency Levels with Manhattan at TwitterBoaz Avital (Twitter)Securing Software Distribution using NotaryDiogo Mónica (Docker)
15:45 - 16:10Coffee Break + 5 min Sponsor Pitch
16:10 - 16:55Symbiotic Design PracticesMichael Feathers (R7K LLC)The Future is Here, it’s just not evenly distributedMary Poppendieck (Poppendieck.LLC)SoundCloud’s Toolbox for MicroservicesBora Tunca (SoundCloud)The Challenges of Container ConfigurationGareth Rushgrove (Puppet Labs)Inspired by FRPÁgnes Vásárhelyi (alltheflow.com)All you need is a lambda (hands-on session)Corey Haines (Hearken)
16:55 - 17:05Mini Break
17:05 - 17:50As a Professional Programmer, how do you learn new skills?Emily Bache (Pagero)Almost Everything I’ve Learned From 5 Years of Lean UXJeff Gothelf (Author, Speaker, Organizational Designer)Container Orchestration with Kubernetes, Docker Swarm and Mesos/MarathonAdrian Mouat (Container Solutions)Crafting an Effective Security OrganisationDestiny Montague (Etsy) - Rich Smith (Etsy)Building Microservices with gRPC and KubernetesKelsey Hightower (Google)
17:50 - 18:00Mini Break
18:00 - 19:00Closing Keynote: Hacking Monkeys: a practitioners guideTim Steigert (GE)
Platform 1
TimeSession
08:00 - 09:00Breakfast
09:00 - 10:0009:00 - 10:00Keynote: Psychological Aspects of EstimatingJoseph Pelrine (MetaProg GmbH)
10:00 - 10:40Sponsor Pitch
10:40 - 11:05Coffee Break
11:05 - 11:50Microservices: software that fits in your headDan North (Dan North & Associates)
11:50 - 12:00Mini Break
12:00 - 12:45You Can Have It All: Software Development at Ludicrous SpeedJez Humble (Jez Humble & Associates LLC)
12:45 - 14:05Lunch + Raffle
14:05 - 14:50The Technical Debt TrapDoc Norton (CTO2)
14:50 - 15:00Mini Break
15:00 - 15:45Toward Better Design and Code - A Case Study with Pelikan CacheYao Yue (Twitter)
15:45 - 16:10Coffee Break + 5 min Sponsor Pitch
16:10 - 16:55Symbiotic Design PracticesMichael Feathers (R7K LLC)
16:55 - 17:05Mini Break
17:05 - 17:50As a Professional Programmer, how do you learn new skills?Emily Bache (Pagero)
17:50 - 18:00Mini Break
18:00 - 19:0018:00 - 19:00Closing Keynote: Hacking Monkeys: a practitioners guideTim Steigert (GE)
Platform 2
TimeSession
08:00 - 09:00Breakfast
09:00 - 10:0009:00 - 10:00Keynote: Psychological Aspects of EstimatingJoseph Pelrine (MetaProg GmbH)
10:00 - 10:40Sponsor Pitch
10:40 - 11:05Coffee Break
11:05 - 11:50Building Scalable Stateful ServicesCaitie McCaffrey (Twitter)
11:50 - 12:00Mini Break
12:00 - 12:45Monitoring As A Service - Modernity and Self-ServiceJames Turnbull (Kickstarter)
12:45 - 14:05Lunch + Raffle
14:05 - 14:50DevOps for Developers: Building an Effective Ops OrgCharity Majors (Facebook)
14:50 - 15:00Mini Break
15:00 - 15:45Cognitive Biases in Engineering OrganizationsJonathan Klein (Attend)
15:45 - 16:10Coffee Break + 5 min Sponsor Pitch
16:10 - 16:55The Future is Here, it’s just not evenly distributedMary Poppendieck (Poppendieck.LLC)
16:55 - 17:05Mini Break
17:05 - 17:50Almost Everything I’ve Learned From 5 Years of Lean UXJeff Gothelf (Author, Speaker, Organizational Designer)
17:50 - 18:00Mini Break
18:00 - 19:0018:00 - 19:00Closing Keynote: Hacking Monkeys: a practitioners guideTim Steigert (GE)
Platform 3
TimeSession
08:00 - 09:00Breakfast
09:00 - 10:0009:00 - 10:00Keynote: Psychological Aspects of EstimatingJoseph Pelrine (MetaProg GmbH)
10:00 - 10:40Sponsor Pitch
10:40 - 11:05Coffee Break
11:05 - 11:50Clients in control: building demand-driven systems with Om NextAntónio Monteiro (TU Dresden)
11:50 - 12:00Mini Break
12:00 - 12:45Kotlin - Ready for productionHadi Hariri (JetBrains)
12:45 - 14:05Lunch + Raffle
14:05 - 14:50Under the hood of the C# programming languageBart De Smet (Microsoft)
14:50 - 15:00Mini Break
15:00 - 15:45Application Sandboxes vs. ContainersJessie Frazelle (Mesosphere)
15:45 - 16:10Coffee Break + 5 min Sponsor Pitch
16:10 - 16:55SoundCloud’s Toolbox for MicroservicesBora Tunca (SoundCloud)
16:55 - 17:05Mini Break
17:05 - 17:50Container Orchestration with Kubernetes, Docker Swarm and Mesos/MarathonAdrian Mouat (Container Solutions)
17:50 - 18:00Mini Break
18:00 - 19:0018:00 - 19:00Closing Keynote: Hacking Monkeys: a practitioners guideTim Steigert (GE)
Blue Tent
TimeSession
08:00 - 09:00Breakfast
09:00 - 10:0009:00 - 10:00Keynote: Psychological Aspects of EstimatingJoseph Pelrine (MetaProg GmbH)
10:00 - 10:40Sponsor Pitch
10:40 - 11:05Coffee Break
11:05 - 11:50Authority, power, and motivationJoseph Pelrine (MetaProg GmbH)
11:50 - 12:00Mini Break
12:00 - 12:45Connecting the Unconnected: IoT Made SimpleDanilo Poccia (AWS)
12:45 - 14:05Lunch + Raffle
14:05 - 14:50Micro-Service Protocols of InteractionTodd Montgomery (StoneTor LLC)
14:50 - 15:00Mini Break
15:00 - 15:45Providing Flexible Database Consistency Levels with Manhattan at TwitterBoaz Avital (Twitter)
15:45 - 16:10Coffee Break + 5 min Sponsor Pitch
16:10 - 16:55The Challenges of Container ConfigurationGareth Rushgrove (Puppet Labs)
16:55 - 17:05Mini Break
17:05 - 17:50Crafting an Effective Security Organisation
17:50 - 18:00Mini Break
18:00 - 19:0018:00 - 19:00Closing Keynote: Hacking Monkeys: a practitioners guideTim Steigert (GE)
Green Tent
TimeSession
08:00 - 09:00Breakfast
09:00 - 10:0009:00 - 10:00Keynote: Psychological Aspects of EstimatingJoseph Pelrine (MetaProg GmbH)
10:00 - 10:40Sponsor Pitch
10:40 - 11:05Coffee Break
11:05 - 11:50ResilienceJeremy Keith (Clearleft)
11:50 - 12:00Mini Break
12:00 - 12:45Calm Technology - Principles and Patterns for Non-Intrusive DesignAmber Case (caseorganic.com)
12:45 - 14:05Lunch + Raffle
14:05 - 14:50Get a Whiff of ThisSandi Metz (TorqueForge, LLC)
14:50 - 15:00Mini Break
15:00 - 15:45Securing Software Distribution using NotaryDiogo Mónica (Docker)
15:45 - 16:10Coffee Break + 5 min Sponsor Pitch
16:10 - 16:55Inspired by FRPÁgnes Vásárhelyi (alltheflow.com)
16:55 - 17:05Mini Break
17:05 - 17:50Building Microservices with gRPC and KubernetesKelsey Hightower (Google)
17:50 - 18:00Mini Break
18:00 - 19:0018:00 - 19:00Closing Keynote: Hacking Monkeys: a practitioners guideTim Steigert (GE)
Magenta Tent
TimeSession
08:00 - 09:00Breakfast
09:00 - 10:0009:00 - 10:00Keynote: Psychological Aspects of EstimatingJoseph Pelrine (MetaProg GmbH)
10:00 - 10:40Sponsor Pitch
10:40 - 11:05Coffee Break
11:05 - 11:50Be a hero of your data with Neo4j (hands-on session)Jarosław Pałka (Allegro Group)
11:50 - 12:00Mini Break
12:00 - 12:45
12:45 - 14:05Lunch + Raffle
14:05 - 14:50Java Performance Tuning (hands-on session)Kirk Pepperdine (JClarity)
14:50 - 15:00Mini Break
15:00 - 15:45
15:45 - 16:10Coffee Break + 5 min Sponsor Pitch
16:10 - 16:55All you need is a lambda (hands-on session)Corey Haines (Hearken)
16:55 - 17:05Mini Break
17:05 - 17:50
17:50 - 18:00Mini Break
18:00 - 19:0018:00 - 19:00Closing Keynote: Hacking Monkeys: a practitioners guideTim Steigert (GE)

Tickets

Early Bird tickets for Workshops and Sessions Days are on sale until January 31, 2016.
Note: on the last week of January Sessions Days ticket will include Diversity Scholarship support.

We also provide special discounts for teachers, students and teams:
  • Session Days - Group Discount for at least 10 attendees.
  • Session Days - EDU tickets for teachers and students.
  • Session Days - Diversity Team tickets for two people from different gender within your organization.

Help us support diversity in the community
We wish to support members of underrepresented groups who may not otherwise have the opportunity to attend CRAFT for financial, social or any other reasons. This includes (but is not limited to): people of colour, LGBTQIA+ people, women and disabled people. Our goal for this year is to provide free ticket for 100 people, and if necessary support their travel and accommodation.Find out how you can helpShow less
We can achieve this goal with the support of our attendees and sponsors.

Ways to support our Diversity Scholarship programme, how you can help:
  • Buy a Diversity Supporter ticket: You buy a ticket for yourself and a ticket for somebody selected by the Craft, who otherwise could not join to the conference.
  • Make a Diversity Travel Fund donation: Make a donation to the travel fund that we created for those people in the community who couldn’t afford to come otherwise. (This is not a real ticket, but a donation.)
  • Become a Diversity Sponsor: If your company is interested to be a Diversity Sponsor, please write to hello@craft-conf.com.

REGISTER NOW
Early Bird tickets are available
until January 31, 2016.
Ticket for Session Days includes:
  • 2 days filled with talks from speakers, practitioners worldwide
  • Conference party on the first session day with handcrafted beers
  • Breakfast and lunch on every session day, dinner on the first day, all with vegetarian, vegan, gluten free and lactose free options
  • Artisan coffee selection by baristas
Ticket for a Workshop Day includes:
  • Full day workshop
  • Breakfast and lunch, all with vegetarian, vegan, gluten free and lactose free options
  • Coffee breaks
  • Drink coupons for our evening community event

Sponsors

Diamond

Platinum

Gold

Silver

Bronze

Special

CRAFT is a non-profit conference. We are looking for sponsors who help us make this conference happen. Take a look at our sponsor packages and contact us at hello@craft-conf.com.

Organizers

    Meetups

    On April 25-26-27 we organise Meetup Evenings as warmup events for Craft. There will be several meetups in Budapest, you can find the list and the speakers of them below. The meetups are free to visit by anybody, so even those people can meet the Craft speakers who cannot attend the conference. Most of the cases there will be 2 talks on the meetups. The gates usually open at 5:30PM and the talks will start from 6:00PM, but the timing can vary among the meetups, so please check the description of the selected meetups. The venues provide some food and drinks after the talks. You can find the location of the interested meetup by clicking its title.

    To have some networking and relaxation after the fantastic meetups an afterparty will be organized at Google Grund (1082 Budapest, Nagytemplom u. 30.) on Tuesday and Wednesday from 8:30PM. Every attendee will get two coupons at the meetups, which can be redeemed at the afterparty for a beer, wine or fröccs. See you there :)

    Contact

    Contact us if you have a question athello@craft-conf.comWe are offerring child care for attendees coming with their kids to the conference.
    Please let us know in advance if you would bring your kid.

    Code of
    Conduct

    tl;dr: Be excellent with each other

    All attendees, speakers, sponsors and volunteers at our conference are required to agree with the following code of conduct. Organisers will enforce this code throughout the event. We are expecting cooperation from all participants to help ensuring a safe environment for everybody.

    Need Help?

    Gergely Hodicska (program chair, chief organiser) at +36 (30) 740 9040
    Medea Baccifava (event coordinator) at +36 (30) 720 6637

    The Quick Version

    Our conference is dedicated to providing a harassment-free conference experience for everyone, regardless of gender, age, sexual orientation, disability, physical appearance, body size, race, religion (or lack thereof), color, national origin or genetic information. We do not tolerate harassment of conference participants in any form. Sexual language and imagery is not appropriate for any conference venue, including talks, workshops, parties, Twitter and other online media. Conference participants violating these rules may be sanctioned or expelled from the conference without a refund at the discretion of the conference organisers.

    The Less Quick Version

    Harassment includes offensive verbal comments related to gender, age, sexual orientation, disability, physical appearance, body size, race, religion, color, national origin, genetic information, sexual images in public spaces, deliberate intimidation, stalking, following, harassing photography or recording, sustained disruption of talks or other events, inappropriate physical contact, and unwelcome sexual attention.

    Participants asked to stop any harassing behavior are expected to comply immediately.

    Sponsors are also subject to the anti-harassment policy. In particular, sponsors should not use sexualised images, activities, or other material. Booth staff (including volunteers) should not use sexualised clothing/uniforms/costumes, or otherwise create a sexualised environment.

    If a participant engages in harassing behavior, the conference organisers may take any action they deem appropriate, including warning the offender or expulsion from the conference with no refund.

    If you are being harassed, notice that someone else is being harassed, or have any other concerns, please contact a member of conference staff immediately. Conference staff can be identified as they'll be wearing branded t-shirts.

    Conference staff will be happy to help participants contact hotel/venue security or local law enforcement, provide escorts, or otherwise assist those experiencing harassment to feel safe for the duration of the conference. We value your attendance.

    We expect participants to follow these rules at conference and workshop venues and conference-related social events.