tanzu.vmware.com
Open in
urlscan Pro
2a02:26f0:7100:18c::2ef
Public Scan
Submitted URL: https://tanzu.vmware.com/developer/springone-tour/2022/chicago/#cloud-native-architectures
Effective URL: https://tanzu.vmware.com/developer/springone-tour/2022/chicago/
Submission: On April 22 via api from US — Scanned from DE
Effective URL: https://tanzu.vmware.com/developer/springone-tour/2022/chicago/
Submission: On April 22 via api from US — Scanned from DE
Form analysis
2 forms found in the DOMGET /developer/search
<form id="searchheaderform" action="/developer/search" accept-charset="utf-8" method="get"><input name="utf8" type="hidden" value="✓">
<input type="text" name="q" id="searchheaderinput" autocomplete="off" placeholder="Search for guides, videos, code samples, posts, and more...">
<input type="submit" id="searchheadersubmit" data-disable-with="">
</form>
<form class="form-inline"><input type="hidden" name="chargeValue" value="150">
<input type="hidden" name="tourCity" value="[Convene 16 West Adams Street Chicago, IL]">
<div class="form-row">
<div class="col-sm-3 s1t-form-col"><input type="text" class="form-control" name="firstName" placeholder="First name" maxlength="50" aria-required="First name" required=""></div>
<div class="col-sm-3 s1t-form-col"><input type="text" class="form-control" name="lastName" placeholder="Last name" maxlength="50" aria-required="Last name" required=""></div>
<div class="col-sm-6 s1t-form-col"><input type="email" class="form-control" name="email" id="email" placeholder="Email" aria-required="Email address" required=""></div>
</div>
<div class="form-row">
<div class="col-sm-6 s1t-form-col"><input type="text" class="form-control" name="jobTitle" required="" aria-required="Job Title" placeholder="Job title"></div>
<div class="col-sm-6 s1t-form-col"><input type="text" class="form-control" name="company" required="" aria-required="Company" placeholder="Company" maxlength="50"></div>
</div>
<div class="form-row">
<div class="col-sm-6 s1t-form-col"><select class="form-control country-select" name="country" aria-selected="None" required="">
<option value="None" selected="" disabled="">Country</option>
<option value="United States">United States</option>
<option value="Afghanistan">Afghanistan</option>
<option value="Åland Islands">Åland Islands</option>
<option value="Albania">Albania</option>
<option value="Algeria">Algeria</option>
<option value="American Samoa">American Samoa</option>
<option value="Andorra">Andorra</option>
<option value="Angola">Angola</option>
<option value="Anguilla">Anguilla</option>
<option value="Antarctica">Antarctica</option>
<option value="Antigua and Barbuda">Antigua and Barbuda</option>
<option value="Argentina">Argentina</option>
<option value="Armenia">Armenia</option>
<option value="Aruba">Aruba</option>
<option value="Australia">Australia</option>
<option value="Austria">Austria</option>
<option value="Azerbaijan">Azerbaijan</option>
<option value="Bahrain">Bahrain</option>
<option value="Bahamas">Bahamas</option>
<option value="Bangladesh">Bangladesh</option>
<option value="Barbados">Barbados</option>
<option value="Belgium">Belgium</option>
<option value="Belize">Belize</option>
<option value="Benin">Benin</option>
<option value="Bermuda">Bermuda</option>
<option value="Bhutan">Bhutan</option>
<option value="Bolivia, Plurinational State of">Bolivia, Plurinational State of</option>
<option value="Bonaire, Sint Eustatius and Saba">Bonaire, Sint Eustatius and Saba</option>
<option value="Bosnia and Herzegovina">Bosnia and Herzegovina</option>
<option value="Botswana">Botswana</option>
<option value="Bouvet Island">Bouvet Island</option>
<option value="Brazil">Brazil</option>
<option value="British Indian Ocean Territory">British Indian Ocean Territory</option>
<option value="Brunei Darussalam">Brunei Darussalam</option>
<option value="Bulgaria">Bulgaria</option>
<option value="Burkina Faso">Burkina Faso</option>
<option value="Burundi">Burundi</option>
<option value="Cambodia">Cambodia</option>
<option value="Cameroon">Cameroon</option>
<option value="Canada">Canada</option>
<option value="Cape Verde">Cape Verde</option>
<option value="Cayman Islands">Cayman Islands</option>
<option value="Central African Republic">Central African Republic</option>
<option value="Chad">Chad</option>
<option value="Chile">Chile</option>
<option value="China">China</option>
<option value="Christmas Island">Christmas Island</option>
<option value="Cocos (Keeling) Islands">Cocos (Keeling) Islands</option>
<option value="Colombia">Colombia</option>
<option value="Comoros">Comoros</option>
<option value="Congo">Congo</option>
<option value="Congo, the Democratic Republic of the">Congo, the Democratic Republic of the</option>
<option value="Cook Islands">Cook Islands</option>
<option value="Costa Rica">Costa Rica</option>
<option value="Côte d'Ivoire">Côte d'Ivoire</option>
<option value="Croatia">Croatia</option>
<option value="Cuba">Cuba</option>
<option value="Curaçao">Curaçao</option>
<option value="Cyprus">Cyprus</option>
<option value="Czech Republic">Czech Republic</option>
<option value="Denmark">Denmark</option>
<option value="Djibouti">Djibouti</option>
<option value="Dominica">Dominica</option>
<option value="Dominican Republic">Dominican Republic</option>
<option value="Ecuador">Ecuador</option>
<option value="Egypt">Egypt</option>
<option value="El Salvador">El Salvador</option>
<option value="Equatorial Guinea">Equatorial Guinea</option>
<option value="Eritrea">Eritrea</option>
<option value="Estonia">Estonia</option>
<option value="Ethiopia">Ethiopia</option>
<option value="Falkland Islands (Malvinas)">Falkland Islands (Malvinas)</option>
<option value="Faroe Islands">Faroe Islands</option>
<option value="Fiji">Fiji</option>
<option value="Finland">Finland</option>
<option value="France">France</option>
<option value="French Guiana">French Guiana</option>
<option value="French Polynesia">French Polynesia</option>
<option value="French Southern Territories">French Southern Territories</option>
<option value="Gabon">Gabon</option>
<option value="Gambia">Gambia</option>
<option value="Georgia">Georgia</option>
<option value="Germany">Germany</option>
<option value="Ghana">Ghana</option>
<option value="Gibraltar">Gibraltar</option>
<option value="Greece">Greece</option>
<option value="Greenland">Greenland</option>
<option value="Grenada">Grenada</option>
<option value="Guadeloupe">Guadeloupe</option>
<option value="Guam">Guam</option>
<option value="Guatemala">Guatemala</option>
<option value="Guernsey">Guernsey</option>
<option value="Guinea">Guinea</option>
<option value="Guinea-Bissau">Guinea-Bissau</option>
<option value="Guyana">Guyana</option>
<option value="Haiti">Haiti</option>
<option value="Heard Island and McDonald Islands">Heard Island and McDonald Islands</option>
<option value="Holy See (Vatican City State)">Holy See (Vatican City State)</option>
<option value="Honduras">Honduras</option>
<option value="Hong Kong">Hong Kong</option>
<option value="Hungary">Hungary</option>
<option value="Iceland">Iceland</option>
<option value="India">India</option>
<option value="Indonesia">Indonesia</option>
<option value="Iran, Islamic Republic of">Iran, Islamic Republic of</option>
<option value="Iraq">Iraq</option>
<option value="Ireland">Ireland</option>
<option value="Isle of Man">Isle of Man</option>
<option value="Israel">Israel</option>
<option value="Italy">Italy</option>
<option value="Jamaica">Jamaica</option>
<option value="Japan">Japan</option>
<option value="Jersey">Jersey</option>
<option value="Jordan">Jordan</option>
<option value="Kazakhstan">Kazakhstan</option>
<option value="Kenya">Kenya</option>
<option value="Kiribati">Kiribati</option>
<option value="Korea, Democratic People's Republic of">Korea, Democratic People's Republic of</option>
<option value="Korea, Republic of">Korea, Republic of</option>
<option value="Kuwait">Kuwait</option>
<option value="Kyrgyzstan">Kyrgyzstan</option>
<option value="Lao People's Democratic Republic">Lao People's Democratic Republic</option>
<option value="Latvia">Latvia</option>
<option value="Lebanon">Lebanon</option>
<option value="Lesotho">Lesotho</option>
<option value="Liberia">Liberia</option>
<option value="Libya">Libya</option>
<option value="Liechtenstein">Liechtenstein</option>
<option value="Lithuania">Lithuania</option>
<option value="Luxembourg">Luxembourg</option>
<option value="Macao">Macao</option>
<option value="Macedonia, the Former Yugoslav Republic of">Macedonia, the Former Yugoslav Republic of</option>
<option value="Madagascar">Madagascar</option>
<option value="Malawi">Malawi</option>
<option value="Malaysia">Malaysia</option>
<option value="Maldives">Maldives</option>
<option value="Mali">Mali</option>
<option value="Malta">Malta</option>
<option value="Marshall Islands">Marshall Islands</option>
<option value="Martinique">Martinique</option>
<option value="Mauritania">Mauritania</option>
<option value="Mauritius">Mauritius</option>
<option value="Mayotte">Mayotte</option>
<option value="Mexico">Mexico</option>
<option value="Micronesia, Federated States of">Micronesia, Federated States of</option>
<option value="Moldova, Republic of">Moldova, Republic of</option>
<option value="Monaco">Monaco</option>
<option value="Mongolia">Mongolia</option>
<option value="Montenegro">Montenegro</option>
<option value="Montserrat">Montserrat</option>
<option value="Morocco">Morocco</option>
<option value="Mozambique">Mozambique</option>
<option value="Myanmar">Myanmar</option>
<option value="Namibia">Namibia</option>
<option value="Nauru">Nauru</option>
<option value="Nepal">Nepal</option>
<option value="Netherlands">Netherlands</option>
<option value="New Caledonia">New Caledonia</option>
<option value="New Zealand">New Zealand</option>
<option value="Nicaragua">Nicaragua</option>
<option value="Niger">Niger</option>
<option value="Nigeria">Nigeria</option>
<option value="Niue">Niue</option>
<option value="Norfolk Island">Norfolk Island</option>
<option value="Northern Mariana Islands">Northern Mariana Islands</option>
<option value="Norway">Norway</option>
<option value="Oman">Oman</option>
<option value="Pakistan">Pakistan</option>
<option value="Palau">Palau</option>
<option value="Palestine, State of">Palestine, State of</option>
<option value="Panama">Panama</option>
<option value="Papua New Guinea">Papua New Guinea</option>
<option value="Paraguay">Paraguay</option>
<option value="Peru">Peru</option>
<option value="Philippines">Philippines</option>
<option value="Pitcairn">Pitcairn</option>
<option value="Poland">Poland</option>
<option value="Portugal">Portugal</option>
<option value="Puerto Rico">Puerto Rico</option>
<option value="Qatar">Qatar</option>
<option value="Réunion">Réunion</option>
<option value="Romania">Romania</option>
<option value="Rwanda">Rwanda</option>
<option value="Saint Barthélemy">Saint Barthélemy</option>
<option value="Saint Helena, Ascension and Tristan da Cunha">Saint Helena, Ascension and Tristan da Cunha</option>
<option value="Saint Kitts and Nevis">Saint Kitts and Nevis</option>
<option value="Saint Lucia">Saint Lucia</option>
<option value="Saint Martin (French part)">Saint Martin (French part)</option>
<option value="Saint Pierre and Miquelon">Saint Pierre and Miquelon</option>
<option value="Saint Vincent and the Grenadines">Saint Vincent and the Grenadines</option>
<option value="Samoa">Samoa</option>
<option value="San Marino">San Marino</option>
<option value="Sao Tome and Principe">Sao Tome and Principe</option>
<option value="Saudi Arabia">Saudi Arabia</option>
<option value="Senegal">Senegal</option>
<option value="Serbia">Serbia</option>
<option value="Seychelles">Seychelles</option>
<option value="Sierra Leone">Sierra Leone</option>
<option value="Singapore">Singapore</option>
<option value="Sint Maarten">Sint Maarten</option>
<option value="Slovakia">Slovakia</option>
<option value="Slovenia">Slovenia</option>
<option value="Solomon Islands">Solomon Islands</option>
<option value="Somalia">Somalia</option>
<option value="South Africa">South Africa</option>
<option value="South Georgia and the South Sandwich Islands">South Georgia and the South Sandwich Islands</option>
<option value="South Sudan">South Sudan</option>
<option value="Spain">Spain</option>
<option value="Sri Lanka">Sri Lanka</option>
<option value="Sudan">Sudan</option>
<option value="Suriname">Suriname</option>
<option value="Svalbard and Jan Mayen">Svalbard and Jan Mayen</option>
<option value="Swaziland">Swaziland</option>
<option value="Sweden">Sweden</option>
<option value="Switzerland">Switzerland</option>
<option value="Syrian Arab Republic">Syrian Arab Republic</option>
<option value="Taiwan, Province of China">Taiwan, Province of China</option>
<option value="Tajikistan">Tajikistan</option>
<option value="Tanzania, United Republic of">Tanzania, United Republic of</option>
<option value="Thailand">Thailand</option>
<option value="Timor-Leste">Timor-Leste</option>
<option value="Togo">Togo</option>
<option value="Tokelau">Tokelau</option>
<option value="Tonga">Tonga</option>
<option value="Trinidad and Tobago">Trinidad and Tobago</option>
<option value="Tunisia">Tunisia</option>
<option value="Turkey">Turkey</option>
<option value="Turkmenistan">Turkmenistan</option>
<option value="Turks and Caicos Islands">Turks and Caicos Islands</option>
<option value="Tuvalu">Tuvalu</option>
<option value="Uganda">Uganda</option>
<option value="Ukraine">Ukraine</option>
<option value="United Arab Emirates">United Arab Emirates</option>
<option value="United Kingdom">United Kingdom</option>
<option value="United States Minor Outlying Islands">United States Minor Outlying Islands</option>
<option value="Uruguay">Uruguay</option>
<option value="Uzbekistan">Uzbekistan</option>
<option value="Vanuatu">Vanuatu</option>
<option value="Venezuela, Bolivarian Republic of">Venezuela, Bolivarian Republic of</option>
<option value="Vietnam">Vietnam</option>
<option value="Virgin Islands, British">Virgin Islands, British</option>
<option value="Virgin Islands, U.S.">Virgin Islands, U.S.</option>
<option value="Wallis and Futuna">Wallis and Futuna</option>
<option value="Western Sahara">Western Sahara</option>
<option value="Yemen">Yemen</option>
<option value="Zambia">Zambia</option>
<option value="Zimbabwe">Zimbabwe</option>
</select>
<script>
const countries = [{
name: 'United States'
}, {
name: 'Afghanistan'
}, {
name: 'Åland Islands'
}, {
name: 'Albania',
gdpr: !0
}, {
name: 'Algeria'
}, {
name: 'American Samoa'
}, {
name: 'Andorra'
}, {
name: 'Angola'
}, {
name: 'Anguilla'
}, {
name: 'Antarctica'
}, {
name: 'Antigua and Barbuda'
}, {
name: 'Argentina'
}, {
name: 'Armenia'
}, {
name: 'Aruba'
}, {
name: 'Australia'
}, {
name: 'Austria',
gdpr: !0
}, {
name: 'Azerbaijan'
}, {
name: 'Bahrain'
}, {
name: 'Bahamas'
}, {
name: 'Bangladesh'
}, {
name: 'Barbados'
}, {
name: 'Belgium',
gdpr: !0
}, {
name: 'Belize'
}, {
name: 'Benin'
}, {
name: 'Bermuda'
}, {
name: 'Bhutan'
}, {
name: 'Bolivia, Plurinational State of'
}, {
name: 'Bonaire, Sint Eustatius and Saba'
}, {
name: 'Bosnia and Herzegovina'
}, {
name: 'Botswana'
}, {
name: 'Bouvet Island'
}, {
name: 'Brazil'
}, {
name: 'British Indian Ocean Territory'
}, {
name: 'Brunei Darussalam'
}, {
name: 'Bulgaria',
gdpr: !0
}, {
name: 'Burkina Faso'
}, {
name: 'Burundi'
}, {
name: 'Cambodia'
}, {
name: 'Cameroon'
}, {
name: 'Canada',
gdpr: !0
}, {
name: 'Cape Verde'
}, {
name: 'Cayman Islands'
}, {
name: 'Central African Republic'
}, {
name: 'Chad'
}, {
name: 'Chile'
}, {
name: 'China'
}, {
name: 'Christmas Island'
}, {
name: 'Cocos (Keeling) Islands'
}, {
name: 'Colombia'
}, {
name: 'Comoros'
}, {
name: 'Congo'
}, {
name: 'Congo, the Democratic Republic of the'
}, {
name: 'Cook Islands'
}, {
name: 'Costa Rica'
}, {
name: "Côte d'Ivoire"
}, {
name: 'Croatia',
gdpr: !0
}, {
name: 'Cuba'
}, {
name: 'Curaçao'
}, {
name: 'Cyprus',
gdpr: !0
}, {
name: 'Czech Republic'
}, {
name: 'Denmark',
gdpr: !0
}, {
name: 'Djibouti'
}, {
name: 'Dominica'
}, {
name: 'Dominican Republic'
}, {
name: 'Ecuador'
}, {
name: 'Egypt'
}, {
name: 'El Salvador'
}, {
name: 'Equatorial Guinea'
}, {
name: 'Eritrea'
}, {
name: 'Estonia',
gdpr: !0
}, {
name: 'Ethiopia'
}, {
name: 'Falkland Islands (Malvinas)'
}, {
name: 'Faroe Islands'
}, {
name: 'Fiji'
}, {
name: 'Finland',
gdpr: !0
}, {
name: 'France',
gdpr: !0
}, {
name: 'French Guiana',
gdpr: !0
}, {
name: 'French Polynesia'
}, {
name: 'French Southern Territories'
}, {
name: 'Gabon'
}, {
name: 'Gambia'
}, {
name: 'Georgia'
}, {
name: 'Germany',
gdpr: !0
}, {
name: 'Ghana'
}, {
name: 'Gibraltar'
}, {
name: 'Greece',
gdpr: !0
}, {
name: 'Greenland'
}, {
name: 'Grenada'
}, {
name: 'Guadeloupe',
gdpr: !0
}, {
name: 'Guam'
}, {
name: 'Guatemala'
}, {
name: 'Guernsey'
}, {
name: 'Guinea'
}, {
name: 'Guinea-Bissau'
}, {
name: 'Guyana'
}, {
name: 'Haiti'
}, {
name: 'Heard Island and McDonald Islands'
}, {
name: 'Holy See (Vatican City State)'
}, {
name: 'Honduras'
}, {
name: 'Hong Kong'
}, {
name: 'Hungary',
gdpr: !0
}, {
name: 'Iceland',
gdpr: !0
}, {
name: 'India'
}, {
name: 'Indonesia'
}, {
name: 'Iran, Islamic Republic of'
}, {
name: 'Iraq'
}, {
name: 'Ireland',
gdpr: !0
}, {
name: 'Isle of Man'
}, {
name: 'Israel'
}, {
name: 'Italy',
gdpr: !0
}, {
name: 'Jamaica'
}, {
name: 'Japan'
}, {
name: 'Jersey'
}, {
name: 'Jordan'
}, {
name: 'Kazakhstan'
}, {
name: 'Kenya'
}, {
name: 'Kiribati'
}, {
name: "Korea, Democratic People's Republic of"
}, {
name: 'Korea, Republic of'
}, {
name: 'Kuwait'
}, {
name: 'Kyrgyzstan'
}, {
name: "Lao People's Democratic Republic"
}, {
name: 'Latvia',
gdpr: !0
}, {
name: 'Lebanon'
}, {
name: 'Lesotho'
}, {
name: 'Liberia'
}, {
name: 'Libya'
}, {
name: 'Liechtenstein',
gdpr: !0
}, {
name: 'Lithuania',
gdpr: !0
}, {
name: 'Luxembourg',
gdpr: !0
}, {
name: 'Macao'
}, {
name: 'Macedonia, the Former Yugoslav Republic of',
gdpr: !0
}, {
name: 'Madagascar'
}, {
name: 'Malawi'
}, {
name: 'Malaysia'
}, {
name: 'Maldives'
}, {
name: 'Mali'
}, {
name: 'Malta',
gdpr: !0
}, {
name: 'Marshall Islands'
}, {
name: 'Martinique'
}, {
name: 'Mauritania'
}, {
name: 'Mauritius'
}, {
name: 'Mayotte',
gdpr: !0
}, {
name: 'Mexico'
}, {
name: 'Micronesia, Federated States of'
}, {
name: 'Moldova, Republic of'
}, {
name: 'Monaco'
}, {
name: 'Mongolia'
}, {
name: 'Montenegro',
gdpr: !0
}, {
name: 'Montserrat'
}, {
name: 'Morocco'
}, {
name: 'Mozambique'
}, {
name: 'Myanmar'
}, {
name: 'Namibia'
}, {
name: 'Nauru'
}, {
name: 'Nepal'
}, {
name: 'Netherlands',
gdpr: !0
}, {
name: 'New Caledonia'
}, {
name: 'New Zealand'
}, {
name: 'Nicaragua'
}, {
name: 'Niger'
}, {
name: 'Nigeria'
}, {
name: 'Niue'
}, {
name: 'Norfolk Island'
}, {
name: 'Northern Mariana Islands'
}, {
name: 'Norway',
gdpr: !0
}, {
name: 'Oman'
}, {
name: 'Pakistan'
}, {
name: 'Palau'
}, {
name: 'Palestine, State of'
}, {
name: 'Panama'
}, {
name: 'Papua New Guinea'
}, {
name: 'Paraguay'
}, {
name: 'Peru'
}, {
name: 'Philippines'
}, {
name: 'Pitcairn'
}, {
name: 'Poland',
gdpr: !0
}, {
name: 'Portugal'
}, {
name: 'Puerto Rico'
}, {
name: 'Qatar'
}, {
name: 'Réunion'
}, {
name: 'Romania',
gdpr: !0
}, {
name: 'Rwanda'
}, {
name: 'Saint Barthélemy'
}, {
name: 'Saint Helena, Ascension and Tristan da Cunha'
}, {
name: 'Saint Kitts and Nevis'
}, {
name: 'Saint Lucia'
}, {
name: 'Saint Martin (French part)'
}, {
name: 'Saint Pierre and Miquelon'
}, {
name: 'Saint Vincent and the Grenadines'
}, {
name: 'Samoa'
}, {
name: 'San Marino'
}, {
name: 'Sao Tome and Principe'
}, {
name: 'Saudi Arabia'
}, {
name: 'Senegal'
}, {
name: 'Serbia',
gdpr: !0
}, {
name: 'Seychelles'
}, {
name: 'Sierra Leone'
}, {
name: 'Singapore'
}, {
name: 'Sint Maarten'
}, {
name: 'Slovakia',
gdpr: !0
}, {
name: 'Slovenia',
gdpr: !0
}, {
name: 'Solomon Islands'
}, {
name: 'Somalia'
}, {
name: 'South Africa'
}, {
name: 'South Georgia and the South Sandwich Islands'
}, {
name: 'South Sudan'
}, {
name: 'Spain',
gdpr: !0
}, {
name: 'Sri Lanka'
}, {
name: 'Sudan'
}, {
name: 'Suriname'
}, {
name: 'Svalbard and Jan Mayen'
}, {
name: 'Swaziland'
}, {
name: 'Sweden',
gdpr: !0
}, {
name: 'Switzerland'
}, {
name: 'Syrian Arab Republic'
}, {
name: 'Taiwan, Province of China'
}, {
name: 'Tajikistan'
}, {
name: 'Tanzania, United Republic of'
}, {
name: 'Thailand'
}, {
name: 'Timor-Leste'
}, {
name: 'Togo'
}, {
name: 'Tokelau'
}, {
name: 'Tonga'
}, {
name: 'Trinidad and Tobago'
}, {
name: 'Tunisia'
}, {
name: 'Turkey',
gdpr: !0
}, {
name: 'Turkmenistan'
}, {
name: 'Turks and Caicos Islands'
}, {
name: 'Tuvalu'
}, {
name: 'Uganda'
}, {
name: 'Ukraine'
}, {
name: 'United Arab Emirates'
}, {
name: 'United Kingdom',
gdpr: !0
}, {
name: 'United States Minor Outlying Islands'
}, {
name: 'Uruguay'
}, {
name: 'Uzbekistan'
}, {
name: 'Vanuatu'
}, {
name: 'Venezuela, Bolivarian Republic of'
}, {
name: 'Vietnam'
}, {
name: 'Virgin Islands, British'
}, {
name: 'Virgin Islands, U.S.'
}, {
name: 'Wallis and Futuna'
}, {
name: 'Western Sahara'
}, {
name: 'Yemen'
}, {
name: 'Zambia'
}, {
name: 'Zimbabwe'
}];
countries.forEach(a => {
$('select.country-select').append(`<option value="${a.name}">${a.name}</option>`)
})
</script>
</div>
<div class="col-sm-6 s1t-form-col"><select id="dietaryRestrictions" name="dietaryRestrictions" class="form-control" required="">
<option value="" selected="" disabled="">Dietary restrictions</option>
<option value="None">None</option>
<option value="Vegetarian">Vegetarian</option>
<option value="Vegan">Vegan</option>
<option value="Gluten-Free">Gluten-free</option>
<option value="Kosher">Kosher</option>
<option value="Halal">Halal</option>
<option value="Custom">Other/Allergies</option>
</select></div>
</div>
<div class="form-row">
<div class="col-sm-6 s1t-form-col"><select name="tshirtSize" class="form-control" required="">
<option value="" selected="" disabled="">T-shirt size (Unisex)</option>
<option value="xss">XX Small</option>
<option value="xs">X Small</option>
<option value="s">Small</option>
<option value="m">Medium</option>
<option value="l">Large</option>
<option value="xl">X Large</option>
<option value="xxl">XX Large</option>
<option value="xxxl">XXX Large</option>
</select></div>
<div class="col-sm-6 s1t-form-col"><input name="dietaryCustom" class="form-control dietary-custom" type="text" placeholder="Enter custom dietary restrictions." style="display:none"></div>
</div>
<div id="card-errors" class="s1t-form-col" role="alert">
<p></p>
</div>
<div id="card-container" class="form-row">
<div class="col-12 s1t-form-col">
<div id="card-element" class="stripe-card-element"></div>
</div>
</div>
<div class="form-row">
<div class="col-sm-6 col-12 mt-1 s1t-form-col">
<div class="row">
<div class="col-9 p-0"><input type="text" class="form-control" name="discountCode" id="discount-code" placeholder="DISCOUNT CODE"></div>
<div class="col-3 text-right"><button id="discount-btn" type="button" class="btn-apply">Apply</button></div>
</div>
<div class="row">
<p class="discount-notice" style="display:none"></p>
</div>
</div>
<div class="col-sm-6 text-left s1t-form-col">
<div class="row">
<div class="col-6 p-0">
<p class="charge-label">Charge total:</p>
</div>
<div class="col-3 pr-0 text-right">
<p class="charge-total">$0</p>
</div>
<div class="col-3">
<p class="charge-currency">USD</p>
</div>
</div>
<div class="row discount-details">
<div class="col-6 p-0">
<p class="discount-label">After discount:</p>
</div>
<div class="col-3 pr-0 text-right">
<p class="discount-total"></p>
</div>
<div class="col-3">
<p class="discount-currency">USD</p>
</div>
</div>
</div>
</div>
<div id="s1t-tac-container" class="mt-4">
<div class="col-12 justify-content-start s1t-form-col">
<div class="form-check"><input type="checkbox" class="form-check-input" id="s1t-tac-consent" name="tacAccepted" value="true" aria-required="true" required="">
<label class="form-check-label ml-3" for="s1t-tac-consent">I agree to SpringOne Tour's <a href="/developer/springone-tour//terms" target="_blank">Terms & Conditions.</a></label>
</div>
</div>
</div>
<div class="covid-attestation-container mt-3">
<div class="col-12 justify-content-start s1t-form-col">
<div class="form-check"><input type="checkbox" name="COVID19VaccinationAttestation" id="COVID-19-vaccination-attestation" class="form-check-input" value="true" aria-required="true" required="">
<label class="form-check-label ml-3" for="COVID-19-vaccination-attestation">I attest that I am fully vaccinated against COVID-19 as defined
by <a href="https://www.cdc.gov/coronavirus/2019-ncov/vaccines/fully-vaccinated.html#vaccinated" target="_blank">CDC</a>/<a href="https://www.who.int/news-room/feature-stories/detail/vaccine-efficacy-effectiveness-and-protection" target="_blank">WHO</a>.</label>
</div>
</div>
</div><small class="s1t-form-col" style="margin-left:2.25rem">*COVID-19 Vaccination: VMware requires that all attendees affirm that they have been fully vaccinated (as defined by the CDC/WHO) as a precursor to attending this event. Per
<a href="https://www.cdc.gov/coronavirus/2019-ncov/vaccines/fully-vaccinated.html#vaccinated" target="_blank">CDC</a>/<a href="https://www.who.int/news-room/feature-stories/detail/vaccine-efficacy-effectiveness-and-protection" target="_blank">WHO</a>,
people are considered fully vaccinated if they are ≥2 weeks following receipt of the second dose in a 2-dose vaccine series or ≥2 weeks following receipt of a single-dose vaccine.</small>
<div id="privacy-consent-container" class="mt-3">
<div class="col-12 justify-content-start s1t-form-col">
<div class="form-check"><input type="checkbox" name="vmwarePrivacyPolicy" id="vmware-privacy-policy" class="form-check-input" value="true" aria-required="true">
<label class="form-check-label ml-3" for="vmware-privacy-policy">I agree to VMware's <a href="https://www.vmware.com/help/privacy.html" target="_blank">Privacy Policy</a>.</label>
</div>
</div>
</div>
<div id="gdpr-consent-container" style="display:none" class="mt-3">
<div class="col-12 s1t-form-col">
<div class="form-check"><input type="radio" class="form-check-input" id="gdpr-yes" name="gdprPreference" value="yes">
<label class="form-check-label ml-3" for="gdpr-yes">Yes, I would like to receive communications from VMware and/or its affiliates regarding products and services, newsletters, and events.</label>
</div>
</div>
<div class="col-12 s1t-form-col">
<div class="form-check"><input type="radio" class="form-check-input" id="gdpr-no" name="gdprPreference" value="no">
<label class="form-check-label ml-3" for="gdpr-no">No, I would not like to be contacted by VMware and/or its affiliates regarding products and services, newsletters, and events.</label>
</div>
</div>
</div>
<div id="nongdpr-consent-container" class="mt-3" style="display:none">
<div class="col-12 justify-content-start s1t-form-col">
<div class="form-check"><input type="checkbox" name="nongdprConsent" id="nongdpr-consent" class="form-check-input" value="true">
<label class="form-check-label ml-3" for="nongdpr-consent">Yes, I would like to receive communications from VMware and/or its affiliates regarding products and services, newsletters, and events.</label>
</div>
</div>
</div>
<div id="response-error-message" class="s1t-form-col" role="alert">
<p></p>
</div>
<div class="form-row">
<div class="col-12 s1t-form-col text-right"><button type="submit" id="submit" class="btn" disabled="" aria-disabled="true">
<div class="spinner-border spinner-border-sm" id="payment-spinner" style="display:none"></div><span id="payment-btn-text">Submit</span>
</button></div>
</div>
</form>
Text Content
* Learn * Tanzu.TV * Community * Search * * * By Category Modern Applications Modern App Basics Modernizing Legacy Applications Agile Transformation and Practices Application Development Building Modern Applications Deploying Modern Applications Managing and Operating Applications Kubernetes Platform Building Kubernetes Runtime Managing and Operating Kubernetes Securing Kubernetes By Type Guides Learning Paths Workshops Samples Videos Blog Tanzu Practices Data * All Shows Tanzu Tuesdays Enlightning .NET in the Wild Cloud Native Crew .NET Beyond TGIK Between Chair and Keyboard Code Cloud Stream by VMware Tanzu Talk Spring Live * Overview Advocates Team SpringOne Tour * Learn * By Category * Modern Applications * Modern App Basics * Modernizing Legacy Applications * Agile Transformation and Practices * Application Development * Building Modern Applications * Deploying Modern Applications * Managing and Operating Applications * Kubernetes Platform * Building Kubernetes Runtime * Managing and Operating Kubernetes * Securing Kubernetes By Type * Guides * Learning Paths * Workshops * Samples * Videos * Blog * Tanzu Practices * Data * Tanzu.TV * All Shows * Tanzu Tuesdays * Enlightning * .NET in the Wild * Cloud Native Crew * .NET Beyond * TGIK * Between Chair and Keyboard * Code * Cloud Stream by VMware * Tanzu Talk * Spring Live * Community * Overview * Advocates * Team * SpringOne Tour * Search 1. SpringOne Tour 2. Chicago CHICAGO APRIL 26–27, 2022 Convene 16 West Adams Street Chicago, IL Register Now REGISTER FOR CHICAGO × CountryUnited StatesAfghanistanÅland IslandsAlbaniaAlgeriaAmerican SamoaAndorraAngolaAnguillaAntarcticaAntigua and BarbudaArgentinaArmeniaArubaAustraliaAustriaAzerbaijanBahrainBahamasBangladeshBarbadosBelgiumBelizeBeninBermudaBhutanBolivia, Plurinational State ofBonaire, Sint Eustatius and SabaBosnia and HerzegovinaBotswanaBouvet IslandBrazilBritish Indian Ocean TerritoryBrunei DarussalamBulgariaBurkina FasoBurundiCambodiaCameroonCanadaCape VerdeCayman IslandsCentral African RepublicChadChileChinaChristmas IslandCocos (Keeling) IslandsColombiaComorosCongoCongo, the Democratic Republic of theCook IslandsCosta RicaCôte d'IvoireCroatiaCubaCuraçaoCyprusCzech RepublicDenmarkDjiboutiDominicaDominican RepublicEcuadorEgyptEl SalvadorEquatorial GuineaEritreaEstoniaEthiopiaFalkland Islands (Malvinas)Faroe IslandsFijiFinlandFranceFrench GuianaFrench PolynesiaFrench Southern TerritoriesGabonGambiaGeorgiaGermanyGhanaGibraltarGreeceGreenlandGrenadaGuadeloupeGuamGuatemalaGuernseyGuineaGuinea-BissauGuyanaHaitiHeard Island and McDonald IslandsHoly See (Vatican City State)HondurasHong KongHungaryIcelandIndiaIndonesiaIran, Islamic Republic ofIraqIrelandIsle of ManIsraelItalyJamaicaJapanJerseyJordanKazakhstanKenyaKiribatiKorea, Democratic People's Republic ofKorea, Republic ofKuwaitKyrgyzstanLao People's Democratic RepublicLatviaLebanonLesothoLiberiaLibyaLiechtensteinLithuaniaLuxembourgMacaoMacedonia, the Former Yugoslav Republic ofMadagascarMalawiMalaysiaMaldivesMaliMaltaMarshall IslandsMartiniqueMauritaniaMauritiusMayotteMexicoMicronesia, Federated States ofMoldova, Republic ofMonacoMongoliaMontenegroMontserratMoroccoMozambiqueMyanmarNamibiaNauruNepalNetherlandsNew CaledoniaNew ZealandNicaraguaNigerNigeriaNiueNorfolk IslandNorthern Mariana IslandsNorwayOmanPakistanPalauPalestine, State ofPanamaPapua New GuineaParaguayPeruPhilippinesPitcairnPolandPortugalPuerto RicoQatarRéunionRomaniaRwandaSaint BarthélemySaint Helena, Ascension and Tristan da CunhaSaint Kitts and NevisSaint LuciaSaint Martin (French part)Saint Pierre and MiquelonSaint Vincent and the GrenadinesSamoaSan MarinoSao Tome and PrincipeSaudi ArabiaSenegalSerbiaSeychellesSierra LeoneSingaporeSint MaartenSlovakiaSloveniaSolomon IslandsSomaliaSouth AfricaSouth Georgia and the South Sandwich IslandsSouth SudanSpainSri LankaSudanSurinameSvalbard and Jan MayenSwazilandSwedenSwitzerlandSyrian Arab RepublicTaiwan, Province of ChinaTajikistanTanzania, United Republic ofThailandTimor-LesteTogoTokelauTongaTrinidad and TobagoTunisiaTurkeyTurkmenistanTurks and Caicos IslandsTuvaluUgandaUkraineUnited Arab EmiratesUnited KingdomUnited States Minor Outlying IslandsUruguayUzbekistanVanuatuVenezuela, Bolivarian Republic ofVietnamVirgin Islands, BritishVirgin Islands, U.S.Wallis and FutunaWestern SaharaYemenZambiaZimbabwe Dietary restrictionsNoneVegetarianVeganGluten-freeKosherHalalOther/Allergies T-shirt size (Unisex)XX SmallX SmallSmallMediumLargeX LargeXX LargeXXX Large Apply Charge total: $0 USD After discount: USD I agree to SpringOne Tour's Terms & Conditions. I attest that I am fully vaccinated against COVID-19 as defined by CDC/WHO. *COVID-19 Vaccination: VMware requires that all attendees affirm that they have been fully vaccinated (as defined by the CDC/WHO) as a precursor to attending this event. Per CDC/WHO, people are considered fully vaccinated if they are ≥2 weeks following receipt of the second dose in a 2-dose vaccine series or ≥2 weeks following receipt of a single-dose vaccine. I agree to VMware's Privacy Policy. Yes, I would like to receive communications from VMware and/or its affiliates regarding products and services, newsletters, and events. No, I would not like to be contacted by VMware and/or its affiliates regarding products and services, newsletters, and events. Yes, I would like to receive communications from VMware and/or its affiliates regarding products and services, newsletters, and events. Submit We look forward to seeing you soon! 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. DAY 1 DAY 2 8:00 AM CDT Registration & Breakfast 9:00 AM CDT OMGDEVSECOPSBBQ MICHAEL COTÉ 9:25 AM CDT Cloud Native Architectures NATE SCHUTTA 10:10 AM CDT Do the Login Page First DASHAUN CARTER 11:00 AM CDT Break 11:15 AM CDT Testing: Love, Hate, Love JAKUB PILIMON 12:00 PM CDT Change Data Capture: A Primer MARIO GRAY 12:35 PM CDT Lunch 1:30 PM CDT Intro to Kubernetes TIFFANY JERNIGAN 2:15 PM CDT Kubernetes Native Java JOSH LONG 3:20 PM CDT Break 3:40 PM CDT Canz U Tanzu? CORA IBERKLEID DASHAUN CARTER 4:20 PM CDT Tanzu Sandbox Time and Q&A 8:00 AM CDT Registration & Breakfast 9:00 AM CDT More Maintainable, Testable Applications with Dependency Injection in Spring Boot JAKUB PILIMON LAYLA PORTER 9:45 AM CDT Spring Cloud Gateway Recipes SPENCER GIBB 10:30 AM CDT Break 10:45 AM CDT Getting Started with GraphQL in Spring Boot DAN VEGA 11:30 AM CDT Platform as a Product MICHAEL COTÉ 12:35 PM CDT Lunch 1:30 PM CDT Observability: Beyond the Three Pillars with Spring JONATAN IVANOV 2:15 PM CDT Doing Progressive Delivery with Your Team LEIGH CAPILI 3:00 PM CDT Break 3:20 PM CDT Path to Production Using Supply Chain Choreography CORA IBERKLEID 4:25 PM CDT What is Knative Serving? WHITNEY LEE Responsible Microservices 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/. Responsible Microservices 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. OMGDEVSECOPSBBQ What exactly is DevSecOps? Come and find out. More Maintainable, Testable Applications with Dependency Injection in Spring Boot 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). Do the Login Page First 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. Change Data Capture: A Primer 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. Kubernetes-Native Java 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. Sidecars with Spring on TAP 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. Intro to Kubernetes 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. Who Should Use 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! Canz U Tanzu? 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 enhance your experience deploying and running applications. Cloud Native Architectures 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? Platform as a Product 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. Getting Started with GraphQL in Spring Boot 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. Observability: Beyond the Three Pillars with Spring 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). We‘ll also talk about how to take your system to the next level, 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. Bootiful Kubernetes Operators 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. Path to Production Using Supply Chain Choreography 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. What is Knative Serving? 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! Doing Progressive Delivery with Your Team 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. Testing: Love, Hate, Love “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. Spring Cloud Gateway Recipes 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. CORA IBERKLEID 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. GLENN RENFRO 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. DAN VEGA 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 CARTER DaShaun is a husband, father of four, volunteer, struggling athlete and Spring Developer Advocate at VMware Tanzu. Deliberately practicing to build better software, faster. JAKUB PILIMON 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 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 LONG 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. LAYLA PORTER 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 CAPILI 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 MARIO GRAY 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É 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! NATE SCHUTTA 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. Nate’s presentations cover a variety of topics, ranging from architecture fundamentals to mobile design, usability, cloud computing, JavaScript, and everything in between. His current slate of talks can be found in Talk Abstracts, however additional presentations can also be found at his NFJS Speaker Page. If you are interested in having Nate speak at your event, please reach out. SPENCER GIBB 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 JERNIGAN 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. WHITNEY LEE 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! MEETUP As a part of the citywide takeover, Spring Developer Advocate DaShaun Carter will be presenting his talk, “Bootiful GraalVM,” at the Chicago Java User Group on Monday, April 25, at 7 PM. Learn more. LEAD/FORWARD 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. SPONSORS GOLD Questions? Contact the SpringOne Tour Team • Code of Conduct Report an issue VMware Tanzu © 2022 VMware, Inc Terms of Use Privacy Policy Your California Privacy Rights Cookie Settings * * * * * We use cookies to provide you with the best experience on our website, to improve usability and performance and thereby improve what we offer to you. Our website may also use third-party cookies to display advertising that is more relevant to you. By clicking on the “Accept All” button you agree to the storing of cookies on your device. If you want to know more about how we use cookies, please see our Cookie Policy. Cookie Settings Accept All Cookies COOKIE PREFERENCE CENTER GENERAL INFORMATION ON COOKIES GENERAL INFORMATION ON COOKIES When you visit our website, we use cookies to ensure that we give you the best experience. This information does not usually directly identify you, but it can give you a more personalized web experience. Because we respect your right to privacy, you can choose not to allow some types of cookies by clicking on the different category headings to find out more and change your settings. However, blocking some types of cookies may impact your experience on the site and the services we are able to offer. Further information can be found in our Cookie Policy. * STRICTLY NECESSARY STRICTLY NECESSARY Always Active Strictly Necessary Strictly necessary cookies are always enabled since they are essential for our website to function. They enable core functionality such as security, network management, and website accessibility. You can set your browser to block or alert you about these cookies, but this may affect how the website functions. For more information please visit www.aboutcookies.org or www.allaboutcookies.org. Cookie Details * PERFORMANCE PERFORMANCE Performance Performance cookies are used to analyze the user experience to improve our website by collecting and reporting information on how you use it. They allow us to know which pages are the most and least popular, see how visitors move around the site, optimize our website and make it easier to navigate. Cookie Details * FUNCTIONAL FUNCTIONAL Functional Functional cookies help us keep track of your past browsing choices so we can improve usability and customize your experience. These cookies enable the website to remember your preferred settings, language preferences, location and other customizable elements such as font or text size. If you do not allow these cookies, then some or all of these services may not function properly. Cookie Details * ADVERTISING ADVERTISING Advertising Advertising cookies are used to send you relevant advertising and promotional information. They may be set through our site by third parties to build a profile of your interests and show you relevant advertisements on other sites. These cookies do not directly store personal information, but their function is based on uniquely identifying your browser and internet device. Cookie Details * SOCIAL MEDIA SOCIAL MEDIA Social Media Social media cookies are intended to facilitate the sharing of content and to improve the user experience. These cookies can sometimes track your activities. We do not control social media cookies and they do not allow us to gain access to your social media accounts. Please refer to the relevant social media platform’s privacy policies for more information. Cookie Details Back Button ADVERTISING COOKIES Filter Button Consent Leg.Interest Select All Vendors Select All Vendors Select All Hosts Select All * REPLACE-WITH-DYANMIC-HOST-ID View Third Party Cookies * Name cookie name Clear Filters Information storage and access Apply Confirm My Choices Allow All