Spring Cloud Data Flow enables you to create data pipelines for many common use-case such as data ingestion, real-time analytics and data import/export. In this session, we will introduce Spring Cloud Data Flow’s architecture and walkthrough the orchestration capabilities of long-running and short-lived data-centric applications on multiple runtime platforms such as Cloud Foundry, Kubernetes, Apache Mesos and Apache YARN. Spring Cloud Data Flow represents the evolution of Spring XD and retains the DSL to define data pipelines as well as the web based UI designer, but changes the component model from modules that used to run inside a container to standard Spring Boot applications built with Spring Cloud Stream and Spring Cloud Task APIs. We will discuss how to make the transition from Spring XD to Spring Cloud Data Flow and demonstrate creating new applications that are deployed onto multiple runtimes.
Over the course of the last year, Comcast has matured its Cloud Foundry platform from proof-of-concept to production ready. The platform currently supports some of our most critical applications while also being an incubator for more innovation. Transitioning to a new platform is never easy and we have had to win over skeptics with operational excellence. Join us to hear about our experience with:
- Reducing Time to Market for new applications and services with PaaS
- Enabling DevOps with Cloud Foundry PaaS
- Extending Pivotal Cloud Foundry with new capabilities to meet DevOps needs
Ratpack and Spring Boot are a match made in microservice heaven. Each brings its respective strengths to the task of building a compelling service for the cloud. Spring Boot's incorporation of the Spring and Spring Cloud ecosystems make it an excellent choice for building service components; Ratpack's nature as a reactive web framework and its emphasis on performance and efficiency make it a premiere choice for a durable web tier. When the two frameworks join forces, developers become unstoppable. This talk will showcase Ratpack and Spring Boot's complementary integrations, and demonstrate, through live coding, building a high performance microservice.
It’s 2016. Are you still writing data queries by hand? Learn how Spring Data gives you the tools to leap over that hurdle and dive into solving problems. Feeling locked into your relational database due to having written gobs of SQL operations? In this live coding session, see how Spring Data provides the means to reduce that risk and give you the means to branch into other data stores. With a couple extra lines of code, you can even have a RESTful interface in no time flat.
Spring's programming and configuration model has a strong design philosophy with respect to application components and configuration artifacts. Spring's annotation-based component story is fine-tuned for source code readability as well as consistency across an entire application's codebase. This session presents selected Spring Framework 4 component model highlights, with a focus on the current Spring Framework 4.3 and a selection of Java 8 enabled features, illustrated with many code examples and noteworthy design considerations.
Premier, Inc. (NASDAQ: PINC) is a healthcare performance improvement alliance of approximately 3,600 U.S. hospitals and 120,000 other providers. Our mission is simple: To improve the health of communities.
We develop SaaS solutions that help healthcare organizations provide higher quality and safer care to patients, lower costs, improve the satisfaction of patients and their families and that stay current with changes in care delivery. We are in a constant state of evolving our solutions and associated technology stack to stay current with modern web app architectural patterns.
In this session, we will discuss the following:
- Our historical monolithic architectural patterns, building applications for jBoss with server-side rendering
- Our experiences and lessons learned moving to Spring MVC single page apps
- Our decision to move to a microservices oriented architecture, and how we leveraged Spring Boot to get there
- How we use Netflix OSS / Spring Cloud to handle the new complexities of a microservices architecture
- Using Spring Cloud Config Server to drive application configuration and a metadata-driven user interface
- Implementing Eureka for service registry / discovery
- Securing and automating deployments for a Spring Cloud infrastructure with Bamboo
- Overall lessons learned in our evolution to a Spring Cloud microservice oriented architecture
Innovation, proposals and standardization result in endless specifications. Often too many to ingest while focusing your development on the specific business domain at hand.
In this deep dive we will untangle the web of complexity introduced by two of the most popular authentication and authorization frameworks used in native cloud applications today, the OpenID Connect and OAuth 2 standards.
You can expect to learn:
- How to get started using Oauth 2 and Spring
- What made these frameworks so popular
- The intricate details of each implementation
- Implications and challenges of using token based security for applications and microservices
- How to easily extend Spring components for non standard APIs
Join us and share in our experiences building the Cloud Foundry User Authentication and Account management project, the UAA, a production grade OAuth 2 authorization and resource server, as well as an OpenID Connect implementation. The UAA is relying on and extending several Spring Security frameworks to provide a robust identity implementation for the Cloud Foundry platform and its application eco system.
Have you been the engineer blocked on shipping a feature because you were waiting on Design to "figure it out"? Or wondered why you’re building a particular feature, or have your own ideas for the product vision? Have you been the designer who spent days designing an interaction only to find out it couldn't be built, or the PM trying to bridge the divide? It's time to take down those silo walls! Josh Franklin, Alex Basson, and Jim Thomson – a designer, an engineer, and a PM, respectively, will give a "Balanced Talk" on their successes and failures building the Small Token iOS app, and share the tactics they used to stay aligned as an Agile team and continuously learn from each other.
On traditional product teams, engineering, business, and design often sit in their own, walled-off silos.The “business” (usually a product owner) generally defines large swaths of requirements, chucks them over a wall to designers, who chuck designs back to the business, who package it up and chuck it over to the developers and ask how long it’ll take to deliver. They request features and designs with no regard to implementation, and engineers don’t have any input or view into the “what” or “why” of product and design decisions.
There’s a better way! At Pivotal, we form “Balanced Teams,” made up of developers, a product manager, and a designer. For many reasons, a Balanced Team leads to better products and happier team members.
In this talk, a balanced team of Engineer, Designer, and PM use real-world examples from our work on Small Token, a charitable giving iOS app, to illustrate specific advantages of working as a balanced team. We show how our practice here at Pivotal contrasts to a “traditional” product development cycle - and why it works.
We expect the audience to learn techniques they can take home to their own product teams. They will be better empowered to evangelize for, and fully take advantage of, Agile principles. Specifically, engineers in the audience will learn that they can have an important voice in the direction of a product.
The cloud has transformed the way we build applications. Early adopters prove that the benefits manifest in delivering value faster to the customer, less operational costs and more productive teams. The interesting question is how to get there, especially if you cannot simply start over and get your current applications benched. Through numerous customer engagements we have learned that there is a pattern followed by companies that do this successfully. This talk show you:
- How to deploy faster without breaking things
- Start decoupling a monolith without breaking your business logic.
- Help developers build application using a new paradigm
- Dynamically scale your applications to save costs
- Manage highly dynamic larger-scale micro services without increasing operational costs
As we will walk through the journey we share learning covering challenges and possible solutions on the organizational, development and operational side. As a company that has gone through this transformation itself while onboarding over 500 new customers we have some interesting stories to share.
While “cf push” is the center of it all, there are many more things that various individuals can do with the Cloud Foundry platform. They can monitor, scale and upgrade those deployed apps. And also deploy, monitor, scale and upgrade the platform itself. Further, to operationalize the platform in an enterprise there are quotas, security groups, route services, environment variable groups and many other “knobs” that may also be tuned, and there are various roles and permission structures to govern these. In this session Cornelia will take a holistic view of the Cloud Foundry “control plane” and map the key functions to IT roles (perhaps with some redefinition), and she’ll show which entitlements allow which configurations. Ultimately the goal is to understand how Cloud Foundry can be effectively used to optimize the development and operations (Devops) in your organization. Participants will leave with a concrete framework for transforming current IT practices, roles and responsibilities using the Cloud Foundry platform.
No one can predict the direction of the television industry or the ephemeral whims of the consumer. However, any corporation seeking to survive in the ever changing media industry must have the technical capability to be immediately responsive to the needs of the business. As the convergence of linear and digital advertising has reshaped the industry, NBC Universal evolved to a CI/CD methodology and became extremely disciplined in the way that product is formulated, prototyped, and iterated upon. Find out more about how their microservices infrastructure and the new way they approach software development has equipped them to make better, data-driven decisions about their product investment.
Route Services make it possible for developers to transform or process network level requests before they reach an application. Operators gain the ability to offer their developers a curated, self-service menu of route services, deflecting one-off requests. Route Services are also designed with APIs in mind, making it easy to add security, authentication, and caching to requests.
Learn from Apigee's experience building one of the first Service Brokers to leverage route services! You’ll walk away with some powerful insights about how to build and deploy a full-featured API management platform as a route service and learn how to use Apigee features including quota enforcement, spike arrests, and content caching.
In this talk, Eitan Suez will explore the question: Where does Geode fit in an organization's system architecture? Geode is a unique and feature-rich product that perhaps hasn't seen as much adoption as it deserves. Today's apps are no longer the straightforward, database-backed web applications we used to build a few years ago. Applications have become more sophisticated, as they've had to meet the need to scale, to be reliable, fault-tolerant, and to integrate with other systems. In this talk, Eitan will suggest one particular fit for Geode in the context of a CQRS architecture, and welcomes you to attend, and to contribute by sharing how you've put Geode to use in your organization.
The Cloud is a wild and dangerous place and can create seriously unpredictable traffic to your microservices. Without proper protection & monitoring, your microservices are vulnerable to hackers, self-inflicted denial of service attacks, and extremely high infrastructure costs. Furthermore, as internal data centers begin to mirror the Cloud itself, developers and architects need to rethink services monitoring and protection for both externalized microservice APIs and internal APIs. Attend this session to learn what is the right type of protection (OAuth / Throttling) and monitoring (e.g. bot monitoring) you need to put in place to avoid your microservices becoming a mega-disaster.
"It is not necessary to change. Survival is not mandatory.” -W. Edwards Deming
Work takes time to flow through an organization and ultimately be deployed to production where it captures value. It’s critical to reduce time-to-production. Software - for many organizations and industries - is a competitive advantage. Organizations break their larger software ambitions into smaller, independently deployable, feature -centric batches of work - microservices. In order to reduce the round-trip between stations of work, organizations collapse or consolidate as much of them as possible and automate the rest; developers and operations beget “devops,” cloud-based services and platforms (like Cloud Foundry) automate operations work and break down the need for ITIL tickets and change management boards. But velocity, for velocity’s sake, is dangerous. Microservices invite architectural complexity that few are prepared to address. In this talk, we’ll look at how high performance organizations like Ticketmaster, Alibaba, and Netflix make short work of that complexity with Spring Boot and Spring Cloud.
As described in this announcement I made on the Spring blog , it is now easy to create a Spring Boot application using Kotlin.
Thanks to a sample Geospatial messenger application , I will show how Spring Boot and Kotlin share the same pragmatic, innovative and opinionated mindset to allow you to build simple but powerful projects.
This talk will provide an opportunity to show how to use a relational database without JPA in order to use advanced PostgreSQL functionalities (like its powerful spatial database extender PostGIS or native JSON support) while keeping a lightweight stack.
Cloud Foundry is a powerful structured platform. For many organizations their first experience with Cloud Foundry feels like jumping in a time machine and emerging in a world where the automations are done and--even more surprising--they work! But that’s just the beginning.
Cloud Foundry is a trustworthy, capable foundation you can build upon. It’s power lies in the flexibility provided through a structured, clear framework for extension. That’s what I want to show you in this talk.
There are several supported mechanisms for extending the platform. In this talk we’ll consider each method and which problem areas they address well. We’ll cover everything from user-provided services to first class services managed by BOSH.
You may be extending the platform to provide unique, new services to your users; or to bridge cloud-native applications running on Cloud Foundry with existing data centers and tools. No matter your use case you’ll gain a valuable understanding of the extensibility of the platform itself to truly make it your own.
Cloud Foundry gives platform operators and platform engineers an incredible framework for delivering transformative value to application developers. Learn how in this talk.
It's true! I've pair programmed full time since 2000, and have remote pair programmed full time since 2010. You've got questions. I've got answers.
I've given presentations ranging from Agile, to Android, to Product Management at many conferences, companies, and Meetups. Once I inevitably mention pair programming the presentation grinds to a halt as I'm peppered with questions about pair programming.
Ok, then -- let's do this thing!
What is pair programming? Does pair programming make software twice as expensive or take twice as long to develop? Do I pair with the same person every day? Who owns the code? How do performance reviews work? What do I do if my pair is sick? What do I do if I HATE my pair? What do I do if I LOVE my pair?
I'll answer any and all questions about pair programming and remote pair programming, from the poignant to the silly. Are you a pair programming yourself? Speak up and contribute some answers of your own!
Ask me anything!
Spring Boot, the new convention-over-configuration centric framework from the Spring team at Pivotal, marries Spring's flexibility with conventional, common sense defaults to make application development move swiftly and enjoyable. It's ideally suited for building microservices and distributed systems and makes streamlining devops practices simple. Join Spring Boot contributor Eddú Meléndez Gonzales for a look at what Spring Boot is, why it's turning heads, why you should consider it for your next application (REST, web, batch, big-data, integration, whatever!) and how to get started.
As in many mid-to-large size organizations, you may have traditional Java enterprise applications, which are considered heavy and cumbersome, in terms of development, deployment and operations. You are thinking about migrating legacy applications for a long time but migration is a complex puzzle and there are many missing pieces. At Ontario Teachers’ Pension Plan, one of the world’s largest institutional investors, we have successfully solved many puzzle pieces with migrating traditional Java enterprise applications using Spring Boot, Spring Cloud and Cloud Foundry. This presentation will benefit many of you who may be in the same shoes as we were. Learn how we:
- solved dependency management issues
- accelerated application development and deployment
- monitored and checked application status
- migrated monolithic apps to microservices using Spring Cloud
- leveraged Platform as a Service
The flexibility promised by cloud computing is something that hasn't been fully available in many use cases yet. Most application models are still based on long running containers, robbing users of that very flexibility. Spring Cloud Task, a new project in the Spring portfolio provides both functional and non-functional capabilities for building short lived, cloud-native, microservices. This talk will introduce the project as well as look at example applications. Since we're in Vegas, we're going to put that on demand processing to good use by demonstrating how we used it to generate a March Madness NCAA Men's Basketball Tournament bracket. We'll review how it worked, why Spring Cloud Task was the best fit for this type of application, and how we did this past March!
Four years, over 25,000 DevOps data points, and some science... What did we find? Well, the headline is that IT does matter if you do it right. With a mix of technology, processes, and a great culture, IT contributes to organizations' profitability, productivity, and market share. We also found that using continuous delivery and lean management practices not only makes IT better -- giving you throughput and stability without tradeoffs -- but it also improves quality and security outcomes and makes your work feel better -- making your organizational culture better and decreasing burnout. Dr. Nicole Forsgren will share these findings as well as tips and tricks to help make your own DevOps.
This talk will give a broad overview of the new features introduced in the latest Spring Data release trains. We will cover recent additions and improvements in Spring Data Commons - the module that's shared amongst the store specific ones. We'll then delve into the latest and greatest features of individual store modules, like JPA, MongoDB, Redis, and the community ones as well.
Come learn how Merrill Corporation is solving real business challenges and transforming their business directly from Merill's product and architecture leaders. By partnering with Pivotal and Microsoft Merill can rapidly deliver software as Java microservices deployed to Pivotal Cloud Foundry running on Microsoft Azure.
In a post-unicorn era of DevOps, as “donkeys” start to adopt and use DevOps, what’s working and not working? This talk with present my current observations and advice on the topic, as well as a quick assessment of “the state of DevOps.”
In the past two years, DevOps has clearly gone mainstream which is creating all sorts of interesting experiments to observe as “normal” companies, outside of technology, adopt DevOps practices. These companies are often beguiled by the core berries to DevOps adoption - a corporate culture and processes that are built around slow, project-mindset driven application delivery - but are also encountering problems unique to “normals” like dealing with legacy code, audit and compliance, and managers who don’t quite seem to get how computers work.
I’ve been studying these stories over recent years and will present what I’ve observed organized into best and worst practices. My goal is always to give helpful advice that can actually be put into practice once the audience goes back to work. As a preview of the type of content, see the tail-end of my DevOpsDays talks from 2015 (http://cote.io/2015/09/08/201598day-of-the-donkey-devopsdays-chicago/) and a recent my recent “how not to screw up your cloud strategy” series (http://cote.io/2015/10/09/cloud-native-journey/).
- Why DevOps - the demand from business to do more with custom IT
- The roll-out of DevOps so far - it's going mainstream
- Putting together the case to implement DevOps
- Practices and strategies for getting started and building moment.
- Common barriers and how to address them
What people will learn
This talk briefly explains why DevOps is "a thing," driven by very real business need and covers recent adoption trends (a sort of "state of the union" for DevOps). It then reviews the challenges organizations face adopting it and, based on real world examples, goes over how to address those issues. Attendees who are interested in learning "how to do the DevOps" in their organization when they return to work will find this talk valuable (any why "how to do the DevOps" is a wickedly piece of semiotics.)
Technology can be viewed as a disruptive force, but for Liberty Mutual it has been an enabler; an enabler of the collaborative nature and the customer centricity which has always been a part of the company. Learn more about how technology was used in the transformation of a storied organization with more than one hundred years of success. Understand why Liberty Mutual chose to partner with Pivotal, ultimately architecting and implementing a solution without 3rd party help. Find out about how developers are freed from the operational aspects of code creation to be more creative, productive, and do more fulfilling work.
Development of Apache Tomcat continues at a strong pace. This presentation will cover:
- Future development plans (features, timing)
- Current work
- Overview of new features available now in Tomcat 9 / Tomcat 8.5
- OpenSSL based TLS
- OAuth (via JASPIC)
- Why do we need Tomcat 8.5?
- Migrating from older versions
- End-of-life plans for older versions
- Progress towards a Servlet 4.0 implementation
As a result of attending this presentation, the audience will gain an understanding of the new features available now or soon to be available in Tomcat 9 and how they can best utilize these features in their applications.
How can we build data pipelines that are resilient to change? Data usually outlives application code, and we have to be prepared to deploy streams that can cope with the evolution of that data that is in motion. This talk will discuss the approach and supporting patterns to write resilient data microservices with Spring Cloud Stream and Spring Cloud Dataflow. We will discuss the role of a centralized Schema repository, and how can we work with different data models and protocols to achieve schema evolution. A centralized schema service will also help us understand what kind of data is currently being served and consumed by the different parts of our distributed system.
Samples for the presentation can be found here: https://github.com/viniciusccarvalho/schema-evolution-samples
DataStax Enterprise (DSE) is a distributed database built on Apache Cassandra with support for Spark, Solr and graph database. Bringing DSE support to the Pivotal Cloud Foundry application platform allows developers and operators to self-service provision DSE clusters and easily connect them to Spring Boot apps running in and managed by PCF. In this session we’ll start with the use cases for on-demand, dedicated DSE clusters, cover the solution design, and demo the system. The creation of on-demand clusters takes full advantage of BOSH 2.0 and we’ll go just a little bit under the covers to show you how these new BOSH features rock this use case. Finally, we’ll complete the story by looking at the support that Spring has for Cassandra.
Comcast is embarking on a multi-year application modernization and transformation journey to achieve application resiliency, velocity and cost optimization at enterprise scale. We will discuss how we are addressing significant technical architecture, engineering, and delivery challenges faced in transformation of Comcast’s Enterprise Services Platform (ESP) from SOA architecture to Cloud Native architecture using Microservices, DevOps, and PaaS.
The term "machine learning" is increasingly bandied about in corporate settings and cocktail parties, but what is it, really? In this session we'll answer that question, providing an approachable overview of machine learning concepts, technologies, and use cases. We'll then take a deeper dive into machine learning topics such as supervised learning, unsupervised learning, and deep learning. We'll also survey various machine learning APIs and platforms. Technologies including Spring and Cloud Foundry will be leveraged in the demos. You'll be the hit of your next party when you're able to express the near-magical inner-workings of artificial neural networks!
The ability to provide your organization with multiple data services on a platform like Pivotal Cloud Foundry is very powerful, and increases the agility of the organization as a whole, when developers are able to provision data services on demand, and all of this is completely transparent to the system operators. This session will cover a very brief overview of Pivotal Cloud Foundry, and will then deep dive into running MongoDB as a managed service on this platform. The MongoDB service for Pivotal Cloud Foundry leverages the capabilities of Bosh 2.0 for on-demand-dynamic provisioning for services while maintaining an integration with MongoDB's Cloud Ops Manager, to provide the best of both - Pivotal Cloud Foundry and MongoDB.
Redis is one of the most popular Open Source Key Value Stores these days. Spring Data Redis Lead Christoph Strobl takes you on a tour through high availability and cluster scenarios. He explains Object Hash Mapping and Secondary Indexes as well as the Spring Data Repository abstraction that let’s you seamlessly interact with Redis.
Platforms like Pivotal Cloud Foundry (PCF) can be viewed as contracts between applications and the people who build, operate, and deploy them. At the root of these contracts is a core premise: if your application checks off a few boxes, the platform can provide enormous amounts of power and enable capabilities that wouldn't otherwise be possible.
In this talk, I'll argue that every platform makes a contract to this effect (sometimes implicitly, especially in the case of proprietary in-house platforms). We'll examine the ways in which these contracts manifest themselves in different platforms, the kinds of contracts that exist in PCF, and how to assess whether a given platform makes a good tradeoff.
The value of embracing microservices, containers, and continuous delivery is powerful only when brought together in logical, scalable, and portable ways. When used incorrectly it’s increasingly easy to make things much worse for you and your team, and do it at scale. For example, while microservices can be used to effectively isolate functionality, increase the speed of delivery, and help scale your team it can also be a way to inefficiently duplicate functionality and create single points of failure. I’ll share anti-patterns and corresponding best practices based on my experience building application infrastructure and platforms, as well as the applications which are deployed to them.
Your team is excited about getting started with Spring Boot and Cloud Native, but you're not entirely sure you're ready to have the team continuously delivering to prod using cf push from their local desktops. The freedom of cloud native development can be very empowering for developers, but it shouldn't be something that terrifies the operations and security teams. We'll discuss how you can setup a fast and reliable deployment process, as well as some interesting things to thing about in the future. One of the most well known descriptions of these new paradigms is the Twelve Factor App (12factor.net), which describes elements of cloud native applications. Many of these needs are squarely met through the Spring Framework, others require support from other systems. In this session we will examine each of the twelve factors and present how Spring, and platforms such as Cloud Foundry satisfy them, and in some cases we’ll even suggest that responsibility should shift from Spring to platforms. At the conclusion you will understand what is needed for cloud‐native applications, why and how to deliver on those requirements.
The Internet of Things (IoT) continues to provide value and hold promise for both the consumer and enterprise alike. To succeed, any IoT project must concern itself with (1) how to ingest data, (2) build actionable models, and (3) react in real-time.
In this talk, Chris describes approaches to addressing these concerns through a deep-dive into an interactive demo centered around classification of human activities. See the guts of such applications and learn about the tools that will enable you to build an application like this yourself!
These include: (1) collecting streaming smartphone data, (2) the process of training and building machine learning models in real-time, and (3) an application that scores real-time. For each of these he will cover the necessary components of the entire IoT stack of ingesting, storing, and processing big data - all in real-time using the open-source Pivotal Cloud Foundry and Big Data Suite.
Reactive provides developers with an elegant model for constructing applications out of communicating components that improves code readability, eases concurrent programming and supports fine-grained unit testing.
In this talk, we'll see how this model is a natural fit for building resilient microservices. Specifically, we'll see how to:
- Abstract the outside world behind Reactive interfaces
- Split a microserivce into Reactive subsystems
- Ease unit testing with Reactive components
- Introduce concurrency to improve service performance
- Use back-pressure to manage service load and increase resilience
Attendees should be familiar with basic Reactive concepts such as publishers and subscriber but need not have any real-world experience building Reactive systems.
Whether you are running Spring Apps on Tomcat or Spring Boot on Cloud Foundry, Google Cloud Platform allows you to deploy all of your applications on the same global infrastructure that allows Google to return billions of search results in milliseconds, serve six billion hours of YouTube video per month, and provide storage for almost a billion Gmail users. Join the Google team as they illustrate how Google's cloud was built for the enterprise.
Over the years, the Java Experience team has worked hard to ensure that Cloud Foundry was the best place to run Java applications in the cloud. As that support has matured we’ve turned our attention to the developer experience. In this session, you’ll hear from the lead developer of the buildpack about the new support for JMX access, debugging, and profiling. Rounding out this session will be a short tour of other production features added recently.
Like many companies, Dish has a large number of SOA services that have been built using previous generations of technology. In this session we will discuss the challenges faced in converting legacy services to cloud native applications and the different approaches we considered for resolving the conflicts. We will then dive deeper into the approach that we chose to modernize our services and put us on a track towards a microservices based architecture running on Cloud Foundry.
Spring Cloud allows to implement cloud native application across different cloud platforms. Spring Cloud has also a dedicated support for running applications on the Amazon Web Service platform. This talk will introduce common patterns and best-practices to run the application the AWS cloud and how to use the platform provided services efficiently.
Is your team disruption proof? What would happen if your key developer went on medical leave or left the company?
I’ll explain one way to enable your team to not only survive, but thrive through abrupt changes in team composition. By following the practices of sustainable software development your team can dramatically improve its bus count.
I’ll recount a story about how my team continued to deliver through chaotic times. This ten person team slowly lost most of its developers yet still delivered the product successfully. In the end, 22 developers worked on the 43 week project.
I’ll dig into the reasons that enabled this team to continue to turn the development crank, week after week, and month after month.
By implementing practices that removed knowledge silos and technical debt, your team can succeeded in the face of disruption.
Unikernel – an executable image that can run natively on a hypervisor without the need for a separate operating system – are rapidly gaining momentum. To integrate unikernels into the eco-system, cloud-computing platforms as a service are required to provide unikernels with the same services they provide for containers. Here we present Unik, an orchestration system for unikernels. Unik handles the compilation of libraries and applications for running on AWS, manages their scheduling, and ensures their health. To provide the user with a seamless PaaS experience, Unik is integrated as a backend to Cloud Foundry runtime. In the session we will cover: an overview of Unikernel, UniK and the integration with Cloud Foundry followed by a demo.
gRPC is a high performance, open source, general RPC framework that puts mobile and HTTP/2 first. gRPC is based on many years of Google's experience in building distributed systems - it is designed to be low latency, bandwidth and CPU efficient, to create massively distributed systems that span data centers, as well as power mobile apps, real-time communications, IoT devices and APIs. It's also interoperable between multiple languages.
But beyond that fact that it's more efficient than REST, we'll look into how to use gRPC's streaming API, where you can establish server-side streaming, client-side streaming, and bidirectional streaming! This allows developers to build sophisticated real-time applications with ease.
In addition to learning about gRPC and HTTP/2 concepts with code and demonstrations, we'll also deep dive into integration with existing build systems such as Maven and Gradle, but also frameworks such as Spring Boot and RxJava.
- Writing/using a Spring Boot starter to run gRPC server
- Configuring projects to generate gRPC stub code
- Integrating w/ RxJava's observable sequences, which matches very well with gRPC's Stream Observable constructs
Apache Hadoop is the most powerful and popular platform for ingesting, storing and processing enormous amounts of “big data”. However, due to its original roots as a batch processing system, doing interactive business analytics with Hadoop has historically suffered from slow response times, or forced business analysts to extract data summaries out of Hadoop into separate data marts. This talk will discuss the different options for implementing speed-of-thought business analytics and machine learning tools directly on top of Hadoop including Apache Hive on Tez, Apache Hive on LLAP, Apache HAWQ and Apache MADlib.
While Domain Driven Design is supposed to take care of complexity in the very core of software, REST is usually treated a plain remoting technology. In this talk we're going to explore some commonalities of the two when it comes to the design of both the domain and resources. We're going to discover how a good domain design is essential to build a great REST API in the first place and which means REST provides to make your APIs more domain driven. From all of the building blocks of DDD, the talk identifies the ones most important when it comes to building a good REST API: we're going to look at aggregates as natural boundaries for representations, repositories as the backing foundation for collection resources and how hypermedia allows to make domain specific state transitions explicit.
The Domain Model pattern is a great way to develop complex business logic.
Unfortunately, a typical domain model is a tangled, birds nest of classes.
It can’t be decomposed into microservices.
Moreover, business logic often relies on ACID transactions to maintain consistency.
Fortunately, there is a solution to this problem: aggregates.
An aggregate is an often overlooked modeling concept from the must read book Domain Driven Design.
In this talk you will learn how aggregates enable you to develop business logic for the modern world of microservices and NoSQL.
We will describe how to use aggregates to design modular business logic that can be partitioned into microservices. You will learn how aggregates enable you to use eventual consistency instead of ACID.
We will describe the design of a microservice that is built using aggregates, and Spring Cloud.
Releases are hard for many large organizations with complex systems. Challenges like manual processes, change approvals, compliances, legacy systems, varying deployment targets, and scheduled downtimes prevent companies from releasing fast and frequently. Many of us know that when Continuous Delivery is embraced and microservices architecture is done right, those challenges can become things of the past. Some high performing companies like Netflix have successfully demonstrated the concept. Now it's your turn. This presentation prepares you to build a microservices architecture that's not only reliable, resilient, and scalable but also addresses the challenges large organizations typically face.
One of the missions of Capital One's Security and Technology Analytics division is to improve detection and prevention of cyberattacks across all of the Capital One enterprise systems. We envision, create, deploy, and maintain critical security tools powered by streaming big data, state of the art machine learning, micro-services architecture, and beautiful visualizations both in the cloud and our data centers. We have a need to build, test, and release software fast and frequently with multiple teams in a reliable way. The security analysts and the data scientists frequently introduce new feature requirements and experiments in small batches. The presentation is based on our approach and experience.
We will dive into the technical details on how Spring Cloud empowers developers to build the patterns and components of microservices foundation quickly. The subtopics include:
- Core patterns and components of microservices architecture and their roles
- Identification of common challenges large organizations face and how microservices architecture addresses them
- Building a reusable, sharable, and portable microservices foundation
- Sample code and demos to show how easily developers can get started with building microservices architecture using Spring Cloud
We will conclude the presentation by realizing how feasible and realistic it is for your organization to be the next high velocity organization that leverages the benefits of microservices, powered by Spring Cloud.
Software companies large and small need to move fast, and that typically requires growing your product teams beyond the proverbial “two pizza” rule.
Finding and keeping great people is tougher than ever these days, but there is much more to scaling a product organization than just hiring! In this talk, Dan will walk through the challenges and opportunities encountered as product organizations grow from beyond the single agile team, based on real world experiences of Pivotal Tracker, a popular agile project management tool that’s been around for 10 years, as well as other fast growing product teams at Pivotal.
Topics discussed will include the importance of a strong culture, pair programming as a growth strategy, vertical vs horizontal team organization, the product manager role, how design fits into a product team at scale, and much more.
How do big shops like Netflix make it possible to deploy hundreds if not thousands of releases every single day? FInd out with a tour through the microservice, Spring Boot-based system known as Spinnaker. Spinnaker is the open source continuous deployment tool that supports multiple clouds, multiple languages, and multiple providers. See how to keep your arms around complex deployment processes, multiple targets, and diverse teams.
Historically it is difficult to store and configure secrets within applications. In the new age of microservices, it is also a challenge to register instances for discovery. Fortunately, Consul and Vault make securing secrets a breeze. Consul's Service Registration mechanism makes easy work of service discovery. When combined with Spring Boot's auto configuration we can leverage Consul and Vault by simply updating our classpath.
In this session we will discuss how to integrate Spring Boot applications with Consul and Vault for Service Discovery, Configuration, Secrets, Event Bus and more. We will show how Spring implements various api's using Consul and Vault including: Spring Cloud Discovery, Spring Environment & Spring Cloud Stream. Come ready to integrate your enterprise applications with Consul and Vault.
In this talk we will discuss ways to develop big data pipelines using Spring technologies. Learn how we can stream data into HDFS, run a Spark or a Hive job and extract the results from HDFS or Cassandra for presentation. The solution we develop will be a cloud-native pipeline that we will be able to run both locally and in the cloud.
The presentation focuses around the code for our solution and we also cover how to set up a test environment both locally and in the cloud. While building our solution using Spring Boot and Spring for Apache Hadoop we’ll cover how this app can be integrated in a larger context such as Spring Cloud Stream and Spring Cloud Data Flow. We will also discus configuration solutions for running our app in a variety of environments.
After attending this talk you will have an understanding of how a combination of Spring projects can help build Big Data solutions that incorporate and orchestrate many diverse technologies. You will also better understand how these solutions can be built to run in a cloud environment as well as locally on your development laptop.
In this talk we'll cover the host of new features that have been added to Spring Boot 1.4 to help with testing. We'll discuss how to unit test your code, how (and when) to involve Spring in your tests, and talk about the various tools and libraries that you should be using. Taking a simple application, we're going to add: - Unit tests for basic components - Integration Tests for JPA entities and queries - Tests for JSON marshalling and unmarshalling - Tests for Spring MVC controllers - Tests for remote RestTemplate calls (using mocking) - End-to-end integration tests (hitting a real HTTP endpoint) Well also look a little bit at the internals of Spring's testing support and pick apart how the magic actually works.
The Pivotal Team demonstrated the power of partnership during their engagement with the Comcast SPARROW Activation Team. Throughout the engagement, the SPARROW Team, leveraged every dimension of the Pivotal Teams capabilities from discussions of product strategy, architecture principles, design approaches, identifying areas of improvement, best practices and production deployment (standby support), this was truly a partnership. In parallel, Pivotal collaborated with the APS NTCE (New Technology Center of Excellence) to start educating our engineers on cloud technologies, micro-services, DevOps, Continuous Delivery & Deployment which was very helpful in enabling our engineers to change mindset. In fact, the relationship went significantly further then trying to sell software the relationship was focused on solving our business problems both technical and non-technical. The SPARROW Team was able to observe in production many of the design patterns that came out of the cloud-native transformation, we anticipate more than a 50% reduction in infrastructure systems, 30% improvement in productivity based on feedback from the development team during Iteration Planning & Retrospectives. In our early stage of production deployments we have seen 1% improvement in activation success already… This has been an unexpected journey.
If you’ve built a web app before, you know that security and user management is a royal pain. As great as Spring Security is, it still has its challenges, and doesn’t automate user management. And if you have to support multi-tenancy for different company customers, it’s even harder. Wouldn’t it be a dream to ignore these concerns and get back to writing your app?
In this talk, Les Hazlewood, Stormpath CTO and Apache Shiro Chair, will go beyond the traditional way to secure applications and deep dive into how Spring Security + Stormpath gives you an instant, highly-available and highly-secure user management system for Spring Boot applications. Topics covered include:
- No-code-required login, register, forgot password and logout
- Automated authorization using groups, roles, and fine-grained permissions
- Multi-tenancy user management
- Single sign-on across applications
- Social login with Facebook, Google, GitHub, and more
Are you starting a new application and wondering whether to go with a monolith or take the microservices path? Do you have an existing application that is getting too big to deliver business value with a predictable velocity? Ever wonder how to regain the agility you had when an application was smaller?
The current discussions around application architecture with microservices seem like an all or nothing journey without any stops along the way to catch your breath. This talk outlines questions to ask yourself to drive decisions along the way. It also demonstrates one possible path for future growth, complete with intermediate stops along the way where you can pause to evaluate your next step. This path avoids implementing too much complexity early in the process.
At the end of the journey you will not only have ideas to guide your own path, but tools that you can use to make the journey easier and less costly.