New York

June 20-21

Microsoft Technology Center
11 Times Square, 6th Floor
New York, NY 10036

Agenda Day 1

8:00AM–8:45AM
Breakfast
8:45AM–9:00AM
Welcome
9:00AM–9:40AM
Microservices Pattern Language

Chris Richardson Founder, Eventuate

When architecting an enterprise Java application, you need to choose between the traditional monolithic architecture consisting of a single large WAR file, or the more fashionable microservices architecture consisting of many smaller services. But rather than blindly picking the familiar or the fashionable, it’s important to remember what Fred Books said almost 30 years ago: there are no silver bullets in software. Every architectural decision has both benefits and drawbacks. Whether the benefits of one approach outweigh the drawbacks greatly depends upon the context of your particular project. Moreover, even if you adopt the microservices architecture, you must still make numerous other design decisions, each with their own trade-offs. A software pattern is an ideal way of describing a solution to a problem in a given context along with its tradeoffs. In this presentation, we describe a pattern language for microservices. You will learn about patterns that will help you decide when and how to use microservices vs. a monolithic architecture. We will also describe patterns that solve various problems in a microservice architecture including inter-service communication, service registration and service discovery.

9:50AM–10:30AM
Servlet vs Reactive Stacks in 5 Use Cases

Rossen Stoyanchev Spring Framework Developer

In the past year Netflix shared a story about upgrading their main gateway serving 83 million users from Servlet-stack Zuul 1 to an async and non-blocking Netty-based Zuul 2. The results were interesting and nuanced with some major benefits as well as some trade-offs. Can mere mortal web applications make this journey and moreover should they? The best way to explore the answer is through a specific use case. In this talk we'll take 5 common use cases in web application development and explore the impact of building on Servlet and Reactive web application stacks. For reactive programming we'll use RxJava and Reactor. For the web stack we'll pit Spring MVC vs Spring WebFlux (new in Spring Framework 5.0) allowing us to move easily between the Servlet and Reactive worlds and drawing a meaningful, apples-to-apples comparison. Spring knowledge is not required and not assumed for this session.

10:50AM–11:30AM
Cloud-Native Streaming and Event-Driven Microservices

Marius Bogoevici Spring Cloud Stream Lead

Join us for an introduction to Spring Cloud Stream, a framework for creating event-driven microservices that builds on on the ease of development and execution of Spring Boot, the cloud-native capabilities of Spring Cloud, and the message-driven programming model of Spring Integration. See how Spring Cloud Stream’s abstractions and opinionated primitives allow you to easily build applications that can interchangeably use RabbitMQ, Kafka or Google PubSub without changing the application logic. Finally, we will show how these applications can be orchestrated and deployed on different modern runtimes such as Cloud Foundry, Kubernetes or Mesos using Spring Cloud Data Flow.

11:35AM–12:05PM
JHipster 4: Bringing Together Angular and Spring Boot

Yakov Fain Solutions Architect, Farata Systems

JHipster 4 is an open-source code generator that allows you to automate creation and configuration of a Web project that uses the Angular framework on the front and Spring Boot on the back. We'll start with a simple example where an Angular app consumes the REST service from Spring Boot. After that, we'll use JHipster to generate a complete Angular/Spring Boot project.

12:20PM–1:00PM
TBD
1:00PM–2:00PM
Lunch
2:00PM–2:45PM
Organize for open space discussions
2:45PM–4:30PM
Open Space
4:30PM–6:30PM
Networking & Social


Agenda Day 2

8:00AM–8:45AM
Breakfast
8:45AM–9:00AM
Welcome
9:00AM–1:00PM
Five 40-minute tech talks
1:00PM–2:00PM
Lunch
2:00 PM–2:45PM
Organize for open space discussions
2:45PM–4:45PM
Open Space
4:45PM–5:00PM
Giveaways, Raffles and Conclusion


Spring Experts

Marius Bogoevici, Spring Cloud Stream Lead, Pivotal

Marius Bogoevici is a software engineer at Pivotal, leading Spring Cloud Stream, and working on Spring Cloud Data Flow, Spring XD, and other Spring projects.

Yakov Fain, Solutions Architect, Farata Systems

Yakov Fain is the lead author of the Amazon bestseller "Angular 2 Development with TypeScript" as well as a number of other technical books on programming. Yakov works as a Solutions Architect at the IT consultancy Farata Systems. A Java Champion, he has taught multiple classes and workshops on web and Java-related technologies, presented at international conferences, and published more than a thousand blog posts (see https://yakovfain.com).

Chris Richardson, Founder, Eventuate

Chris Richardson is a developer and architect. He is the author of POJOs in Action, which describes how to build enterprise Java applications with frameworks such as Spring and Hibernate. Chris was also the founder of the original CloudFoundry.com, an early Java PaaS for Amazon EC2. Today, he is a recognized thought leader in microservices. Chris is the creator of http://microservices.io, a website describing how to develop and deploy microservices. He provides microservices consulting and training and is working on his third startup http://eventuate.io, an application platform for developing microservices.

Rossen Stoyanchev, Spring Framework Developer, Pivotal

At present, Rossen is a committer on the Spring Framework team with a strong focus on web development including Spring MVC and WebSocket messaging. Previously Rossen consulted and trained Spring teams for several years. He has been involved with Java and web development in various industries and domains since the mid 90s.

Get Involved

Submit a Talk Proposal

Call for papers is open now!

Start Your Own

Contact us to organize Spring Days in your city.

Sponsor Us

Learn about Spring Days sponsorship opportunities.

SpringOne Platform

For those who build and operate cloud-native software.