5:30pm - Networking and pizza. Pizza and soft drinks provided by Maddie Spilman of TEKsystems. Beer and water provided by Trevor Richards of PeerSource.
6:00pm - Announcements
6:05 - 7:05pm - SyncServerII - Christopher Prince
SyncServerII ( https://github.com/crspybits/SyncServerII ) is an open-source system with main goals of storing a mobile app users data in their cloud storage, and enabling safe sharing of that data. The system has three components: A server, client interface(s), and mobile apps using that client interface. All components are currently written in Apple’s new open-source language, Swift. The server uses IBM’s Kitura multithreaded server framework, and mySQL for database support. A beta version server instance has been deployed as an EC2 Ubuntu instance on AWS. “SharedImages”, an open-source Apple iPhone/iPad app using SyncServerII, is also in beta testing and enables users to save images to their Google Drive accounts, and invite other Google users to share their data in read-only, read-write, or read-write-admin modes. Plans for SyncServerII include adding other cloud storage support (e.g., Dropbox and Onedrive), enabling Facebook account support for sharing invitations, and using it to revise and open-source a new version of an iPhone app currently on the Apple App store. Dreams include creating an Android client interface and open-sourcing Android apps using that interface.
Christopher Prince previously was a computer science professor at the University of Minnesota Duluth. A few years back he gained dual Canadian-American citizenship, moved to Colorado, and switched careers to industry. He lives with his wife and their cats in Broomfield. Favorite activities include cycling and (in his wayward past) flying sailplanes (gliders).
7:05 - 7:15pm - Break
7:15 - 8:15pm - Microservice API Gateways with NGINX - Geoffrey Filippi
(NGINX is pronounced "engine x".)
Microservices are a popular architectural solution. Clients of microservices may experience some difficulty keeping track of the various instances and endpoints they have to call. An API gateway can help manage large numbers of microservices and hide the infrastructure complexity from your clients. We will review a microservice architecture before and after the addition of an API gateway.
An API gateway is a reverse proxy. A reverse proxy handles incoming requests from clients and calls a service to get the data to satisfy that request. The reverse proxy returns that data to the client. Many developers write these proxies by hand in custom code, not realizing there better solutions available. We will mention a number of popular solutions, some open source and some cloud-based services. For this talk, we will focus on NGINX, a popular open source reverse proxy and API Gateway. (NGINX also sells an enterprise offering, NGINX Plus, but this talk will only cover the features available in the open-source version.)
We will show how to set up NGINX as an API Gateway. We will dive into the configuration and operation of NGINX.
Geoff is a Senior Architect at DISH Network, serving a large group of developers implementing microservices. Prior to his work at DISH, he was an Application Architect at Oildex, an oil and gas data service company. He also spent 12 years at Time Warner Cable, where he was a Senior Engineer. At TWC, he lead the team that built the video streaming web application, TWCTV.
Geoff was awarded "Best Overall Architecture" in the Architecture Kata competition at the 2017 O'Reilly Software Architecture Conference in New York. He holds BS and MS degrees in Computer Engineering from Virginia Tech. His master’s thesis is “A High-Availability Architecture for the Dynamic Domain Name System" (2008). In his thesis, he describes the application of software defined networks and NoSQL to improve the resilience of the Internet. He holds several patents related to high-availability, architecture, wireless networks and cable systems. He is a co-organizer for the HTML5 Denver meetup and is a member of the International Association of Software Architects (IASA).
Geoff is focused on API design, continuous deployment, domain-driven design, containers, and cloud-native architectures. He has been using microservices, API Gateways and NGINX for five years. (However, he is not affiliated with NGINX in any way.)
Geoff lives in Denver, CO.
8:15pm - JetBrains license giveaway.