16 West Adams Street
Beyond all the excellent content at SpringOne Tour, we’ve got a lot planned all around town! Expect to see VMware Tanzu folks around the city during the week, everywhere from executive events to meetups.
Hi, Spring fans! Spring Framework 6 and Spring Boot 3 imply a new baseline, bringing the Spring ecosystem in line with the needs of tomorrow‘s workloads. A huge part of that is the new baselines of Jakarta EE and Java 17 and the new support for GraalVM native images, based on the work of Spring Native. Join Spring Developer Advocate Dashaun Carter (@dashaun) as he explores the implications of this exciting new technology for your Spring Boot applications and services.
We‘ll look at things like using the GraalVM AOT compiler to produce native images that take up a markedly smaller memory footprint and start up in 10s or maybe hundreds of milliseconds. We‘ll look at how to containerize those workloads. We‘ll look at how to tame the GraalVM compiler when something goes wrong. And we‘ll look at how to teach GraalVM about your custom workloads.
For more info on the meetup including how to register, please visit: https://www.meetup.com/ChicagoJUG/events/283784010/.
Lead/Forward at SpringOne Tour is an invite-only executive event. The series will dive into why the developer experience is critical to your business needs. For more information, please reach out to VMware Tanzu Field Marketing.
Mainframes have been the engine for data processing for over 50 years, but we've reached that time where we move our applications off of the mainframe to new infrastructure, to the cloud, or a hybrid approach. But what tools do we have at our disposal to migrate our COBOL applications from the mainframe to these new platforms? This is where the Spring ecosystem provides the tools to help with this migration. In this discussion, we'll show you how Spring and its ecosystem can help with migrating applications from the mainframe to your new platform. Projects such as Spring Batch, Spring Cloud, and Spring Boot can be used to simplify this migration process. This is where the Spring ecosystem provides the tools to help with this migration. In this discussion, we'll show you how Spring and its ecosystem can help with migrating applications from the mainframe to your new platform. Projects such as Spring Batch, Spring Cloud, and Spring Boot can be used to simplify this migration process.
Learn how developers can focus on building great applications that deliver value to customers, and with the new Azure Spring Apps Enterprise Tier (now in preview), you get even more advanced capabilities and support.
Learn how Azure Spring Apps Enterprise can help:
Azure Spring Apps, a fully managed service from Microsoft and VMware, solves the challenges of running Spring apps at cloud scale by removing the need to worry about infrastructure, application lifecycle, monitoring, container intricacies, and Kubernetes."
In this short talk, we'll show you how to use VMware Tanzu Community Edition to easily get set up with a Kubernetes cluster on your local machine that includes additional useful packages to enhace your experience deploying and rnning applications.
How will change data capture (CDC) help transform your enterprise data architecture? What is CDC for? Is it for everyone? Let's tackle this and more in this Lightning Talk. This talk will provide a peek into the nature and intention of this architectural concept, but also some frameworks that let us take advantage of it now.
Despite our best efforts, many software projects don’t end with champagne and cake. While some blame a bad technology choice, more often than not, the issues boil down to people problems. Traditional computer science education focuses on algorithms and languages while largely ignoring the human aspect of software and the sociology of organizations. Fear not friends, there are patterns and approaches that can help you win trust quickly, create allies, set expectations and effectively communicate during the ups and downs of project life.
Dodging the pitfalls of software implementation can be taxing. How do we navigate the existing social complexity and interpersonal dynamics found in every organization? How do we earn trust, maintain rapport and turn clients into advocates? This talk will explore the challenges of building and maintaining software using examples from within and beyond the software industry to help give you the tools to chart a path to more than just a successful launch but a team that enjoys the journey.
By now, your organization has planted a flag in “the Cloud” and it is up to you to figure out just what that means to your application portfolio. Should everything be a microservice? Wait, what *is* a microservice anyway? How do you deal with massively distributed applications? How can event storming fix the gap between your business problems and domain model?
Optimizing Spring applications for Kubernetes can be challenging. This session will discuss the various "gotchas" you need to take into account when developing Spring applications to be production-ready on Kubernetes.
What is a declarative HTTP client vs. an imperative one? Why are they useful and why should I care? We’ll talk about options that are available in the Spring portfolio and what’s coming on the horizon. In this session, we’ll look at the history of declarative clients in Spring via Spring Cloud OpenFeign. We’ll also dive into upcoming options that are coming to Spring and the advantages that these new technologies bring to the developer experience.
WaffleCorp is a .NET shop, whilst Waverley’s Waffles utilizes the power of Spring with Java. Now developers from both tech stacks are coming together as a team.
Layla is a .NET developer and has no idea of all the great and useful things that Spring has to offer. Jakub will be sharing his knowledge of Spring and dependency injection, covering IoC, Spring core, Spring tests, Spring Boot, and more. Through a collection of live demos, Jakub and Layla will guide you through some Spring fundamentals, why they're important, and when to use them (and when not to).
VMware Tanzu Application Platform is a next-generation Platform-as-a-Service, with a big focus on Spring. It can run on any Kubernetes infrastructure and is meant to boost developer productivity and the path to production. In this session, we'll do a live demo on how to take a Spring Boot application from conception, inner-loop development on a local machine, and all the way up to production.
WaffleCorp is a major provider of breakfast products available direct to consumer or through our strategic partnerships. The current implementation of the e-commerce platform is a monolithic Spring MVC application that serves data through a collection of REST APIs.
Currently, the only provider of the REST API is our e-commerce web application. We've been tasked with opening up our APIs to our new iOS and Android apps, partner microservices, and IoT applications.
The issue we ran into is that a REST API is not a one-size-fits-all approach. We need a more flexible solution to meet the requirements of all of our client applications. This is a perfect use case for the speed and flexibility of GraphQL.
GraphQL is a query language for APIs and a runtime for fulfilling those queries with your existing data. GraphQL provides a complete and understandable description of the data in your API, gives clients the power to ask for exactly what they need and nothing more, makes it easier to evolve APIs over time, and enables powerful developer tools.
In this session, you’ll learn what GraphQL is and why you should consider it in your next project. You’ll learn how to use GraphQL in your Spring Boot applications by leveraging the Spring for GraphQL project. By the end of this session, you’ll understand how to stand up a GraphQL endpoint and request the data you need, and nothing more.
Spring Framework 6 and Spring Boot 3 imply a new baseline. They bring the Spring ecosystem in line with the needs of tomorrow's workloads. Spring now provides ahead of time (AOT) compilation support for compiling Spring applications to native executables using GraalVM.
Native images can provide cheaper, more sustainable delivery for a range of workloads. These include microservices, function workloads, well suited to containers and Kubernetes.
In this session, we will look at Spring Boot 3 with a focus on using AOT with GraalVM. We will produce native images with smaller footprints and faster startup times. We will then discuss how native images can be used across your organization, from development to production.
The Spring team has been preparing a new generation of the core framework for 2023 and beyond: Spring Framework 6 comes with a Java 17 and Jakarta EE 9 baseline and introduces first-class support for AOT processing and native executables, as well as early support for virtual threads ("Project Loom"). This talk focuses on key design decisions and upgrade considerations, summarizes the feature set of the Spring Framework 6.0 release, and presents an early roadmap towards 6.1.
Deploying and running complex distributed applications involves a trade-off; we want to maximise performance and availability, and at the same time make responsible use of finite and costly compute resource.In this talk we will look at the features and tools that Kubernetes provides to help manage this trade-off, particularly those features provided by the Kubernetes Scheduler. We'll also take a brief look at how the scheduler can be extended for custom use-cases.We will look at how we can define different levels of coupling between our application components, how we can scale those components dynamically, and how we can observe an application's performance. We will also show that Kubernetes can provide a way for application owners to express the runtime requirements of their applications in a way that operations and platform teams can easily consume as those teams design and build platforms.
Data doesn’t magically appear in our data centers. There are usually several phases and several storage locations along its journey throughout your organization. New architectural patterns, such as microservices, and new technology, such as Kubernetes are changing how we can think about and manage the large volumes of data coming at us. In this talk we will begin by quickly introducing the architecture and technology and how they make our lives better. From there it’s live demo time combining Java microservices, a processing caching service, a messaging layer, and a relational database all running in Kubernetes . This application will be handling frequently updated data, generating alerts on specific data events, and simultaneously populating a system of record. Come for the discussion, hands-on demo, and witty banter!
Noticing your customers receive 503’s every now-and-then?
Do they spike when you’re updating your app or rotating your k8s cluster nodes?
Maybe you used to have this problem — then you added some strange settings and it’s mostly working now...
What most people need from K8s regarding web-traffic is a repeatable but under-documented combo of esoteric, non-default options.
We’ll walk through the basic needs of shaping traffic and apply that knowledge to the states of compute, rollout, and canonical networking we see with k8s.
Expect tidbits about CRI, CNI, Ingress, and the design trade-offs present in Kubernetes.
You’ll leave knowing how to keep your apps serving successful requests for a myriad of edge-cases.
If you’re working with just a few containers, managing them isn't too complicated. But what if you have hundreds or thousands? Think about having to handle multiple upgrades for each container, keeping track of container and node state, available resources, and more. That’s where Kubernetes comes in. Kubernetes is an open source container management platform that helps you run containers at scale. This talk will cover Kubernetes components and show how to run applications on it.
Spring is all about helping developers get to production quickly and safely. These days, “production” is all but guaranteed to mean Kubernetes, and Spring has you covered. Join me, Spring Developer Advocate Josh Long (@starbuxman), and we‘ll look at how Spring Boot makes writing blisteringly fast, cloud native, and scalable services more effortless than ever.
You know what’s fun? Automating the ever livin’ heck out of infrastructure! Slaying that YAML! Nobody wants to painstakingly build something then spend weeks trying to write the YAML to describe it to the infrastructure. Thankfully, Kubernetes provides composability through abstractions like operators, controllers, and custom resource definitions. These days, it’s trivial to extend Kubernetes with a Spring Boot application, turn it into a GraalVM native image that runs in a Docker container, and then deploy that. Join us, and we’ll learn how to extend and automate Kubernetes with Spring Boot and Spring Native-powered custom operators and eliminate that ever-so pesky YAML.
One is the new hotness and the other might be seen as old and stuffy - yet both Kubernetes and RDBMS are two powerful tools to have in your data scientist toolbox (or to help give to the data scientists you support). PostgreSQL will be the particular database we discuss but most of the points apply to any modern RDMS. There have been a lot of overlooked features added to PostgreSQL that will bring joy to data scientists. The goal of this talk is to help you appreciate all the ways that adding Kubernetes and PostgreSQL to your team’s tools can improve everyone’s lives by:
By the end you will understand why both your data scientists, your ops people, and even your application developers will love bringing these two well known tools together to do a majority of their work. Come for the questions, feedback, and fun banter.
What is Knative Serving, and how does it help you simplify and enhance the way that your application runs on Kubernetes? How does it work? What components are at play? In what ways is running an app on Knative superior to running it directly on Kubernetes? Join in the conversation as Whitney Lee discusses (and draws!) the answers to these questions and more!
Every great app starts somewhere. Can you really call something “minimum viable product“ if it doesn't include security? In this session, we‘ll cover the value of starting with security included. We‘ll create a Spring Boot application and explore options for authentication and authorization, from simple to social and Oauth2.
In this presentation, we’ll explore the basics of the three pillars and what Spring has to offer to implement them for logging (SLF4J), metrics (Micrometer), and distributed tracing (Spring Cloud Sleuth, Zipkin/Brave, OpenTelemetry).
I’ll also talk about how to take your system to the next level, and what else you can find in Spring and related technologies to look under the hood of your running system (Spring Boot Actuator, Logbook, Eureka, Spring Boot Admin, Swagger, Spring HATEOAS) and what our future plans are.
What exactly is DevSecOps? Come and find out.
Most Ops groups can’t give developers what they need. Ops is limited by traditional service delivery mindset and tools. Stability and reliability are now table stakes when you’re releasing software daily. What developers need now from Ops is innovation. Operations rarely takes this innovation-driven, product approach to providing services and instead focuses on delivering to specification and limiting SLAs. As with development, Ops creates value with continuous operations, product managing their platforms, and releasing frequently. This talk covers how Ops groups are transforming from a service delivery mindset to a platform-as-a-product approach. With examples from Discover Financial Services, Rabobank, the U.S. Air Force, and others, the talk covers the concept, technologies, and tools commonly used, along with Ops tactics needed to kick off a platform-as-a-product strategy.
What is progressive delivery? This new industry term encompasses the mechanisms, culture, and strategy needed to shape and analyze traffic for safer app deployments. This includes traffic shifting, dark deploys, feature flagging, and A/B testing!
Come join this session to learn about the prerequisites of retained RED metrics and SRE practices, as well as tools that can orchestrate this exciting deployment technique.
Microservice architectures simplify the individual components that comprise our applications, but they introduce new complexity in managing a high number of distributed APIs. With so many moving parts, how can you provide a simplified experience for consumers and ensure that your system is resilient and secure?
Centralized gateways have been a long-standing solution for managing APIs, but microservices demand a new generation of lightweight micro-gateway applications. Spring Cloud Gateway is one such solution. It provides a simple yet flexible API to add the routing, resilience, and control you need to protect the edge layer of your applications. Built on Spring WebFlux, it also ensures an inherently nonblocking mechanism for efficiently routing and manipulating requests.
In this talk, we'll review the motivation for Spring Cloud Gateway and demonstrate a variety of features, such as weighted routing, circuit breakers, rate limiters, and more.
Apache Pulsar is a streaming platform designed to bring Integration to the fingertips of the enterprise. This talk will go over a typical integration exercise, using Datastax Luna as the target deployment system.
These days, you can’t swing a dry erase marker without hitting someone talking about microservices. Developers are studying Eric Evans' prescient book, Domain-Driven Design. Teams are refactoring monolithic apps, looking for bounded contexts and defining a ubiquitous language. And although there have been countless articles, videos, and talks to help you convert to microservices, few have spent any appreciable time asking if a given application should be a microservice. In this talk, I‘ll show you a set of factors you can apply to help you decide if something deserves to be a microservice or not. We’ll also look at what we need to do to maintain a healthy micro(services)biome.
This session covers the basic mechanics of WebAssembly—what does it look like, how do you create one, and how do you run it?—and shows some examples of the newest, coolest server-side use cases. The aim will be to run untrusted code (a user-defined function) in a Spring Boot application, enabling the application and its deployment to be completely separated from the business logic. In a true serverless fashion, the application becomes the platform. It will be demonstrated that there are immediate uses for such a pattern in Spring Cloud Data Flow and Spring Cloud Gateway.
Git alone provides a pretty mediocre inner-loop for deployment to a cluster — Git is powerful for collaboration, but it’s not a debugger.
However, git platforms can still add value for debugging!
Roles and group membership are usually weaved into the habits teams build around git repos. This can be combined within the authentication and authorization systems used in a multi-cluster Kubernetes platform!
In this live demo, Leigh will show how the incredibly flexible, open-source combo of Flux (fluxcd.io), Pinniped (pinniped.dev), and Dex (dexidp.io) can empower a team to leave a traceable solution during a production incident. Let’s explore effective team debugging habits with Kubernetes and git :)
Creating new apps based on company standards is harder than it should be. Furthermore, incrementally adding new features to that project over time is even harder with developers often cutting-and-pasting code from various sources to solve the problem at hand. In this talk, we introduce a new CLI for Spring developers that will help you accelerate your development all while following best practices and keeping the tooling open for change and extension by individual teams and people.
Spring Cloud Gateway is a developer-centric API gateway. An API gateway is an abstraction over a distributed systems architecture. The API Gateway is a natural place to provide cross-cutting concerns such as security, resiliency, and transformation. In this talk, we'll discuss practical use cases that you may encounter. Some recipes we'll discuss include: securing gateway with OAuth 2 and Spring Security and relaying tokens to services, rate-limiting using Spring Security and the logged-in user, implementing a backend for frontend using a scatter-gather technique, and more.
What is a declarative HTTP client vs an imperative one? Why are they useful and why should I care? We’ll talk about options that are available in the Spring Portfolio and what is coming on the horizon.
In this session we will look at the history of declarative clients in Spring via Spring Cloud OpenFeign. We will also dive into upcoming options that are coming to Spring and the advantages that these new technologies bring to developer experience.
With globally distributed applications (and teams!), the job of software architect isn’t getting any easier; applications are growing increasingly complex and architects are spread thin. You can’t be involved with every decision—you must empower your teams while ensuring they're making good choices. How do you do that? How can frameworks like Spring not only make your life easier but help your teams deliver robust applications to production? Spring Cloud has a veritable plethora of sub projects, from circuit breakers to functions, that simplify the task of building cloud native applications while making it easy for developers to adhere to best practices. At the same time, it can be overwhelming to get your head wrapped around all the features Spring offers. This talk will show how Spring allows architects to focus on the critical design decisions they need to make while ensuring developers are empowered to implement critical business use cases. Today’s cloud native applications have similar pitfalls; luckily Spring is here to help you resolve them!
Spring Framework 6 and Spring Boot 3 imply a new baseline. They will bring the Spring ecosystem in line with the needs of tomorrow's workloads. Spring Native provides support for compiling Spring applications to native executables using GraalVM.Native images can provide cheaper, more sustainable delivery for a range of workloads. These include microservices, function workloads, well suited to containers, and Kubernetes.In this session, we will look at the GraalVM AOT compiler. We will produce native images with smaller footprints and faster startup times. We'll look at how to containerize those workloads. We'll look at how to tame the GraalVM compiler when something goes wrong. And we'll look at how to teach GraalVM about your custom workloads.Explore how Spring Native delivers valuable outcomes, today.
Creating new apps based on company standards is harder than it should be. Furthermore, incrementally adding new features to that project over time is even harder with developers often cut-n-pasting code from various sources to solve the problem at hand. In this talk we introduce a new CLI for Spring developers that will help you accelerate your development all while following best practices and keeping the tooling open for change and extension by individual teams and people.
A sidecar isn’t a drink and you won’t find TAP at a bar. In this session, we’ll explore infrastructure architecture and how to create sidecars for your organization that help standardize access to functionality on VMware Tanzu Application Platform. We'll use many projects from the Spring portfolio.
In this session, we'll look at how to combine HTTP, RSocket, and GRPC using Spring Cloud Function, RSocket Broker, Spring Cloud Gateway, and more to offer standard remote interfaces in a polyglot architecture. This can be built using Spring Boot and Spring Native and deployed via Cartographer on Tanzu Application Platform.
The Kubernetes ecosystem has a rich set of solutions for various stages of CI/CD. Tools like Flux, Tekton, kpack, Knative, ArgoCD, and more each enable big steps forward in establishing a modern path to production. And yet, the teams and organizations that adopt these tools still struggle with complex, DIY snowflake pipelines. The challenge can be creating and maintaining imperative scripts; orchestrating the flow of information between tools; driving reusability; adopting GitOps practices; and enabling proper separation of concerns.
Cartographer is an exciting new OSS project that elegantly addresses these challenges, providing the backbone for a modern application platform built on top of Kubernetes. Rooted in the concept of declarative supply chain choreography, it focuses on creating composable, reusable roadmaps to drive source code to production. It provides an abstraction layer that facilitates the adoption and integration of existing and emerging CI/CD tools, while clearly delineating developer and operator ownership. It complements the existing ecosystem, filling an important gap to ease use, maintenance, and scalability.
In this talk, we’ll discuss supply chain choreography as a model for CI/CD and use Cartographer to explore how you can create secure and comprehensive pipelines, sustainably and at scale.
As developers, we want to be able to iterate and develop our applications while having to jump through the fewest hoops possible. With Spring Boot, we're able to do just that! Unfortunately, if you then want to deploy that Spring Boot app to Kubernetes, everything can come to a screeching halt quicky—you're suddenly knee deep in YAML as you struggle to not only deploy your application, but debug and test it as well. VMware Tanzu Application Platform is a developer-friendly Kubernetes platform that makes getting your app deployed to Kubernetes quick and painless. In a matter of minutes with a basic Git repo containing your code, you can have your app up and running on Kubernetes! Not only that, but you get an automated build pipeline that will continuously build and deploy your application and give you the ability to debug it right from your IDE! In this session, we'll show you everything you need to know about how to leverage Tanzu Application Platform to get to production on Kubernetes faster than you ever imagined!
Getting started with Test Driven Development (TDD) can be very challenging. It requires a different mindset and approach to writing and developing code. However, once in that mindset, it is very difficult not to write tests first. But why bother writing tests first? In this session, we will go through the reasons for writing tests before coding, look at architecture and design principles, such as SOLID and see how it all comes together to create a more testable and maintainable application. I will show you how to get started writing tests first with practical examples on how to reprogram a T800 series Terminator so you can start using TDD in your own applications (or killer robots from the future). Hasta La Vista badly-written code!
Traditional approaches to integration testing—using shared, local, or in-memory databases—fall short for today's modern developer.
Developers today are building cloud native distributed microservices and taking advantage of a rich variety of backing services. This explosion of applications and backing services introduces new challenges in creating the necessary environments for integration testing. To be useful and effective, these environments must be easy to create and they must resemble production as closely as possible. New solutions are needed to make this need a reality.
Testcontainers is a Java library that supports JUnit tests and makes it incredibly easy to create lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.
In this talk, you will learn when and how to use Testcontainers. We will cover the fundamentals and walk through a step-by-step example using a Spring Boot application that we build from scratch. As a bonus, we'll highlight some new features in Spring Boot 3.0 along the way!
Traditional approaches to integration testing—using shared, local, or in-memory databases—fall short for today's modern developer.
Developers today are building cloud native distributed microservices and are taking advantage of a rich variety of backing services. This explosion of applications and backing services introduces new challenges in creating the necessary environments for integration testing. To be useful and effective, these environments must be easy to create and they must resemble production as closely as possible. New solutions are needed to make this need a reality.
Testcontainers Java is a library that supports JUnit tests and makes it incredibly easy to create lightweight, throwaway instances of common databases, Selenium web browsers, or anything else that can run in a Docker container.
In this talk, you'll learn when and how to use Testcontainers for Java. We'll cover the fundamentals and walk through examples to illustrate various ways you can apply Testcontainers to your applications.
“TDD leads to a great design,” they said. “Mocking is bad,” they said. “Integration testing is slow,” they said. “Testable architecture to the rescue,” they said. “If you don’t test, don’t call yourself a developer,” they said. “Code coverage must be 100%,” they said. And so on and so forth.
In this talk, we’ll tackle some of the testing gotchas. There will be live coding, architecture rants, some slides, and (hopefully) much fun. Both senior and junior developers should find something interesting in that testing example.
Although Knative has been community-maintained since 2018, there has been buzz around the project lately because Knative has recently been accepted to the Cloud Native Computing Foundation (CNCF) as an incubating project.
Cool! But what is Knative, exactly?
Simply put, Knative is a technology that streamlines and enhances the way that applications run on Kubernetes.
This talk is for people who are excited about this value proposition and want to dig deeper. How does it work? What components are at play? In what ways is running an app on Knative superior to running it directly on Kubernetes?
Instead of presenting slides, Whitney will diagram the fundamental concepts of Knative, explaining how they work in simple, relatable terms. She will then drive deeper understanding with a live coding demo that gives context to the main points. With spiders and rainbows. You know, a real-life, straightforward, run-of-the-mill use case.
Attend this talk to gain a high-level understanding of Knative, its main components, and how it simplifies and improves the way that apps run on Kubernetes.
Who should use Kubernetes? Like, who is Kubernetes for? Kubernetes can be difficult to install and complicated to use and manage. What are the benefits of Kubernetes, and at what point do these benefits outweigh the operational complexity? Join in the conversation as Whitney Lee discusses (and draws!) the answers to these questions and more!
Adib Saikali is a global field principal solutions engineer at VMware Tanzu, focused on helping VMware’s largest customers design and build cloud native applications and platforms using Spring and Kubernetes. Adib is the author of “Securing Cloud Applications” a book that teaches application developers the fundamental security technologies and protocols required to secure cloud native applications. Over the past 25 years Adib has worked at startups and global enterprises on numerous software systems in a variety of roles, from software developer, architect, agile coach, and CTO. He has developed a 360-degree view of what it takes to build software systems quickly, efficiently, and economically. Adib’s favourite quote is “live like you are going to die tomorrow, learn like you are going to live forever” attributed to Mahatma Gandhi.
Cora Iberkleid is a Developer Advocate for Modern Applications at VMware Tanzu, helping developers and enterprises navigate modern practices and technologies, focusing on cloud native architecture, modern CI/CD, Spring, and Kubernetes.
Prior to joining VMware, Cora was an Advisory Solutions Engineer at Pivotal. She also spent nearly a decade at Sun Microsystems and Oracle, helping customers design and build enterprise integration applications. Through this experience, she developed an understanding and empathy for complex organizational challenges, and she strives to incorporate this empathy into her everyday work.
Dan Vega is a Spring Developer Advocate at VMware Tanzu. He has been developing software for the web for over 20 years and his superpower is problem-solving. Dan is a blogger, YouTuber, course creator, and speaker. He is a lifelong learner and his passion is sharing his knowledge with the developer community. Dan lives near Cleveland Ohio with his beautiful wife and 2 daughters. When he isn’t writing code or teaching he enjoys spending time with his family, lifting weights, running, or reading a good book.
DaShaun is a husband, father of four, volunteer, struggling athlete and Spring Developer Advocate at VMware Tanzu. Deliberately practicing to build better software, faster.
Founder of Spring Cloud, Spring Boot, Spring Batch, and an active contributor to Spring Integration, Spring Framework, Spring AMQP, Spring Security.
As a VMware engineer, Glenn Renfro is a core committer for Spring Cloud Task, Spring Batch, and Spring Cloud Data Flow. He has 14 years of experience in designing, building, and delivering enterprise-level applications in Java and 21 years total of software development experience.
Jakub Pilimon is a Staff Technologist at VMware, blogger, programmer, and trainer. His main duty is to tackle complex enterprises with Domain-Driven Design and to propose a model and architecture that solves a problem. Sometimes he is involved in refactoring projects. When he isn’t coding, you can find him riding his bike, reading, or practicing kitesurfing.
Jakub’s pet projects can be found at https://github.com/ddd-by-examples.
Jonatan Ivanov is an enthusiastic Software Engineer working in the Spring Cloud Team, one of the leaders of the Seattle Java User Group, speaker, author, certified dragon trainer. He has hands-on experience in developing and shipping innovative, production-ready software for industry-leader companies. He likes Distributed Systems, Production, Open Source, Math, Linux, Cloud environments; he is passionate about the Java Ecosystem and the Java Community. He is an Open Source contributor, writes a “develotters”-focused blog (https://develotters.com), sometimes can be found on Twitter (@jonatan_ivanov) and in the Seattle area but he is originally from Hungary.
Josh (@starbuxman) has (officially) been a Spring developer advocate since 2010. Josh is a Java Champion, author of six books (including Cloud Native Java: Designing Resilient Systems with Spring Boot, Spring Cloud, and Cloud Foundry (O’Reilly Media, 2017) and the upcoming (self-published) Reactive Spring, as well as the creator of numerous best-selling training videos, including Building Microservices with Spring Boot Livelessons with Spring Boot co-founder Phil Webb. He is also an open source contributor (Spring Boot, Spring Integration, Spring Cloud, Activiti, and Vaadin), a podcaster (A Bootiful Podcast), and a screencaster.
Juergen Hoeller is co-founder of the Spring Framework open source project and has been serving as the project lead and release manager for the core framework since 2003. Juergen is an experienced software architect and consultant with outstanding expertise in code organization, transaction management and enterprise messaging.
Layla is a Developer Advocate at VMware serving the .NET community. She is a Live Coder on Twitch, a Microsoft MVP, A GitHub Star, and founder of the #WomenOfDotNet Initiative. Layla loves sharing knowledge whilst having fun. No question is stupid and beginners are always welcome.
Leigh is an empathetic speaker and developer with niches in cloud native systems and security. Leigh comes from a background of building software to manage infrastructure. He contributes to Kubernetes and Flux and is frequently working on his next software demo
Mark Pollack is a software engineer with VMware and is the lead of the Spring Cloud Data Flow project. He has been a contributor to many Spring projects dating back to the Spring Framework in 2003 as well as founding the Spring.NET and Spring Data projects.
Mario is a principal technologist at VMware with more than 20 years of experience in software development and software architecture. He is co-author of Pro Spring Integration (Apress, 2011). He’s helped organizations large and small build service-based architectures in a number of different runtimes and platforms over the decades, but adopting Spring in 2004, and using it whenever possible since, was a no-brainer that culminated in joining the Spring team in 2017. As a Spring developer advocate, Mario loves to engage and inspire developers and businesses in the Pivotal ecosystem.
Michael Coté studies how large organizations get better at building software to run better and grow their business. His books Changing Mindsets, Monolithic Transformation, and The Business Bottleneck cover these topics. He’s been an industry analyst at RedMonk and 451 Research, done corporate strategy and M&A, and was a programmer. He also co-hosts several podcasts, including Software Defined Talk. Cf. cote.io, and is @cote on Twitter. Texas Forever!
Nathaniel T. Schutta is a software architect focused on cloud computing and building usable applications. A proponent of polyglot programming, Nate has written multiple books and appeared in various videos. He is a seasoned speaker, regularly presenting at conferences worldwide, No Fluff Just Stuff symposia, meetups, universities, and user groups. In addition to his day job, Nate is an adjunct professor at the University of Minnesota where he teaches students to embrace (and evaluate) technical change. Driven to rid the world of bad presentations, Nate co-authored the book Presentation Patterns (O’Reilly Media, 2016) with Neal Ford and Matthew McCullough. He also recently published Thinking Architecturally (O’Reilly Media, 2018), available as a free download from VMware.
Oded Shopen is a Lead Specialist Solution Engineer at VMware, spreading the message of Cloud-Native development, Tanzu and App Transformation. He helped design large-scale, cloud-native microservices using Tanzu, Spring Boot, and Spring Cloud.
Oleg Šelajev is a developer advocate at AtomicJar working integration tests with Testcontainers better for everyone in the community. VirtualJUG leader. In 2017 became a Java Champion.
Olga Maciaszek-Sharma is a Senior Software Engineer in the Spring Cloud Team at VMware, where she works primarily on Spring Cloud LoadBalancer, Spring Cloud Contract (of which she was the first user and one of the first contributors), Spring Cloud OpenFeign and Spring Cloud Netflix projects. She also works on native image support for Spring Cloud projects and contributes to RSocket Broker projects from time to time. She programs mostly using Java and Groovy.
Exploring new languages, frameworks, and technologies, and then sharing what he’s learned, has always come naturally to Ryan. Even when it wasn’t his day job, Ryan has always been driven by his passion, spending his time and energy educating his friends, colleagues, or anyone else that would listen. Currently, Ryan is working as a software engineer as part of the Spring Cloud team. Ryan has a passion for sharing what he learns via social media, including Twitter and his blog, as well as in person at conferences. When he’s not coding, Ryan likes spending time with his daughter, ice fishing, running obstacle course races, and watching the Red Sox.
Scott Rosenberg has been working in the IT field since 2014, starting as a VMware Infra admin and then pivoting to the Cloud and Cloud Native ecosystem. Since 2018 Scott has been leading the Cloud practice at TeraSky, leading innovative solutions and implementing them on a global scale for all of the company’s customers. Scott is active in the Kubernetes project as well as many ecosystem tools surrounding Kubernetes such as Pinniped, ClusterAPI, Carvel, and KubeApps.
Spencer Gibb is a software engineer at VMware focusing on Spring Cloud. Spencer’s interests include distributed systems, JVM languages, web services frameworks, message-driven architectures, and making software development simpler. He loves to create software to solve a pain point (for example, by creating a tool to automate workstation setup in his free time). Spencer’s industry experience has taken him from early e-commerce platforms to government and nonprofit organizations to business intelligence startups. He has extensive experience in Java and other languages such as Scala and Python. His database experience runs from Oracle and MySQL to Riak and Cassandra. You can find out more on his blog.
Tiffany is a senior developer advocate at VMware and is focused on Kubernetes. She previously worked as a software developer and developer advocate (nerd whisperer) for containers at Amazon. She also formerly worked at Docker and Intel. Prior to that, she graduated from Georgia Tech with a degree in electrical engineering. In her free time she likes to spend time with her fiancé, family, and friends, as well as dabble in photography. You can find her on Twitter @tiffanyfayj.
Tony is a Staff Field Engineer in the VMware Tanzu team, helping customers build, manage, and run great infrastructure platforms for their applications.
Tony has spent his career designing and operating large distributed systems, and is especially interested in the reliability, performance, and observability of those systems.
He has been working with Linux for over 20 years and with Kubernetes since 2015.
He is a strong advocate for Open Source to build both collaborative communities and great software.
Tony currently lives in Yorkshire. He loves listening to music and is never happier than when browsing in a record store.
Whitney traveled the scenic route but is absolutely chuffed to have found her way to Kubernetes and cloud technologies. She began her professional career as a fine artist before owning her own photography business for over a decade. Then, after a year-long tour playing keys and singing harmonies in the band Mutual Benefit, Whitney went back to school to learn full-stack web development. Shortly after graduation Whitney was employed by IBM as a cloud developer, using none of the skills she had just learned at school. However Whitney quickly developed an insatiable appetite for all things cloud, and a passion for teaching others as she acquired knowledge herself. She has made many light board videos for IBM Cloud, from topics ranging from creating a Pod in Kubernetes, to event-driven architecture, to cloud native API solutions. At VMware Whitney’s contagious excitement drives her to continue to explore, collaborate, teach, and play!
Yuri is a highly experienced software development executive, with a proven ability to lead employees and managers with determination to achieve goals and continuously improve work processes and deliver high-quality projects in accordance with the business strategy.
He has extensive Experience in Developing complex and mission critical IT systems, using AGILE and Devops Methodologies with a demonstrated history of leading big R&D units, complex operational teams, applications, products, services, production, infrastructure and P&L.