(API): Implementing an Internet-Scale API Gateway


Pat Patterson
Citrix, Director of Developer Evangelism

Pat Patterson has been working with Internet technologies since 1997, building software and communities at Sun Microsystems, Salesforce, StreamSets, and now Citrix. At Sun, Pat was the community lead for the OpenSSO open source project. As a developer evangelist at Salesforce, Pat focused on identity, integration and the Internet of Things, with a switch to big data and data integration in his role of director of evangelism at StreamSets. Now Director of Developer Evangelism at Citrix, Pat is leading developer engagement through the transition from on-premise products to cloud services. When he isn't speaking at conferences, writing technical content or hanging out on Slack, Pat likes to run far, having completed several ultra-marathons.


Standing up an API on the internet is straightforward – many tools and services exist to bring up a functional endpoint. The picture gets more complicated, however, as scope inevitably begins to creep. Sooner or later, every service provider has to consider requirements such as routing requests to multiple backend services, rate-limiting to protect the service from badly-behaved API clients, and consolidating cross-cutting functions such as authentication. Not only that, but, as clients adopt its API, and usage increases, the service provider must avoid becoming a victim of its own success, and collapsing under the load. In building a cloud platform to host and administer services such as Citrix Workspace and Citrix Virtual Apps & Desktops, the Citrix Developer Ecosystem team implemented an API Gateway, providing third-party developers with a secure, uniform interface to a range of backend services. In this session, Director of Developer Evangelism Pat Patterson will share the lessons that the Developer Ecosystem team learned as it built the API Gateway. Pat will explain how the team selected tools for the gateway, created an authentication service to provide a consistent experience to API consumers, and worked with product teams inside Citrix to onboard their services.