- October Meetup
Please email me ([masked]) or message me via Meetup with your email address so that Adobe can add everyone to their building system. Thanks!! Agenda 6:00 Networking | Food | Drink 6:30 Welcome + Announcements 6:30 - 8:30 Talks! Talk 1: Jeremy Likness @jeremylikness of Microsoft - Code First in the Cloud: Going Serverless Serverless takes traditional Platform-as-a-Service (PaaS) to the next level by empowering developers to focus on their code first. Learn how to abstract away servers, build event-driven code that scales quickly and saves costs while seamlessly integrating into the DevOps workflow. Focusing on business logic means getting apps to market, faster. Discover for yourself the power of serverless with examples in Node.js that leverage Azure’s Functions and Logic App services. Talk 2: Pieter Humphrey @PieterHumphrey of Pivotal - Why Spring <3 Cloud Foundry What makes Cloud Foundry the best place to run Java microservices? Looking beyond the Java buildpack -- we'll examine what makes a distributed platform such a perfect fit for distributed applications. How can BOSH managed microservice infrastructure make life easier for DevOps teams once a service has been deployed? What could operational automation look like for critical functions like service discovery, circuit breaker monitoring, and configuration services? Application and operations-focused developers will walk away with a solid introduction to what makes Spring Boot, Spring Cloud, and Spring Cloud Data Flow workloads exciting on Cloud Foundry. TALK 3: Daniel Lopez - @bitnami - Building Serverless Application Pipelines The serverless paradigm is bringing a new type of applications to the forefront of application architecture. Distributed, containerized, scalable, event-driven and ephemeral with fine grained billing. In this talk we will go through several application use-cases that are driving the serverless movement (e.g data processing, IoT, mobile-backends,machine learning) and demonstrate how these applications can be developed and deployed on top of Kubernetes using an open source serverless solution called kubeless. Through live demos and examples, we will show that Kubernetes with its rich and stable core API is the perfect platform to build FaaS solutions.
- September Meetup
Come join us for 3 great talks! Agenda: 6:00 - 6:30pm: Networking and Food/drinks 6:30 - 8:15pm: Sponsor intro and talks! Speaker bios and talk abstracts! Thomas Hunter of Open Table @tlhunter (https://twitter.com/tlhunter?lang=en) HTTP API Design Part 2: In this continuation from last months talk we'll look at how to design data payloads to make our API consistent and intuitive for consumers. We'll cover some existing standards for designing API's such as JSON API, JSON RPC, GraphQL, and even look at MessagePack, a way to encode JSON in binary. Anand Patel of MuleSoft @MuleSoft (https://twitter.com/MuleSoft?lang=en) Reactive Microservices: While there are many who claim adopting a microservices architecture will yield several benefits, it usually takes more work for those benefits to be fully experienced. This is especially true with monolith-to-microservices migrations, where developers still think in an synchronous REST mindset. In this talk, we'll discuss what is required to move to async services and how adopting an event-driven architecture can promote self-healing, rapid prototyping, and graceful degradation and tradeoffs associated with this kind of move. Mark McBride CEO at Turbine Labs Inc @mccv (https://twitter.com/mccv?lang=en) Beyond Ingresses - Better Software Releases in Kubernetes: While Ingresses provide a simple description of how to route traffic for a domain to multiple services, they don’t help much with software releases. Label and content aware routing lets us create more reliable, flexible, and faster release and test processes. We’ll cover incremental blue/green deploys, testing in production, and service refactoring."
- August Meetup
Agenda 6:00 Networking | Food | Drink 6:30 Welcome + Announcements • 6:30 - 7:00pm: Thomas Hunter, @tlhunter (https://twitter.com/tlhunter), Software Engineer at OpenTable (https://www.opentable.com/start/home) HTTP API Design Part 1 In this talk we'll take a deep look at HTTP, explore the different HTTP Methods, learn how to represent our data using collection and resource endpoints, and abstract our business logic so all operations can be represented as CRUD operations. We'll also look at different HTTP Status codes as well as request and response headers. • 7:00 - 7:30pm: Waldemar Quevedo, @wallyqs (https://twitter.com/wallyqs?lang=en), Senior Software Engineer at Apcera (https://www.apcera.com/) Simplified messaging for microservices with the NATS project The NATS Server hit its v1.0 milestone last month and there is still a lot in the horizon, specially with the NATS Streaming project which enables at-least-once delivery guarantees gaining increasing popularity. The NATS project from its foundations has had simplicity and performance in mind, and in this talk we'll share about the evolution of the project, its community and how it can help you have a lean microservices architecture. • 7:30 - 7:45pm: Anthony Romano, @coreos (https://twitter.com/coreos?lang=en), software engineer at CoreOS (https://coreos.com/) zetcd: Serving ZooKeeper requests with etcd3 A reliable distributed system can have no single point of failure. Since fault tolerance is often regarded as difficult to engineer, usually some general off-the-shelf consensus system does the work of reliably managing data and coordinating processes. These consensus systems typically have similar key-value store semantics but each has a custom API. At CoreOS we designed and implemented a powerful multi-versioned key-value store for etcd3, the latest major version of our open source etcd distributed data store. Since its initial release in 2013, etcd has become a cornerstone of distributed services for networking, service discovery, configuration management, and load balancing. However, a great deal of critical infrastructure which conceptually could use etcd is locked into other APIs, Apache ZooKeeper being the most popular. Porting these applications to an etcd backend ranges from easy to impractical. Being too impatient for native backend support, etcd's zetcd proxy instead emulates ZooKeeper. The zetcd proxy is a stateless ZooKeeper frontend; it serves a ZooKeeper client port backed by etcd, letting unmodified ZooKeeper applications run on top of etcd. This talk outlines how zetcd translates ZooKeeper operations to etcd requests and describes how zetcd checks its emulation matches an authentic ZooKeeper cluster. Email [masked] if you have a suggestion for a topic/talk or if your company would like to sponsor a SF Microservices Meetup!!
- Cloud+Data NEXT Conference - Silicon Valley
Hey Micros! The team from NEXTCON, wanted to extend an invitation to the whole Microservices Meetup community to attend the Cloud+Data NEXT conference in Santa Clara for a discounted ticket price. The speakers look pretty rad, let me know if you're able to attend! You can use the code sfmicroservices15 to get 15% off the price of your ticket. Cloud+Data NEXT conference is two days conference features workshop, keynote speech and deep diving breakout tracks. It brings together technical engineers, practitioners, influential technologist and data scientists to share their solutions and practical experience in tackling the pressing problems with the power of cloud and data. So we can learn lessons and best practices from experts, exchange ideas with peers, more importantly, apply to our daily work or adopt in the near future Date: July 15-16th, 2017, 8:00am-5:30pm Venue: Silicon Valley (Santa Clara Convention Center) Website: http://www.cdnextcon.com (http://www.cdnextcon.com/) The conference features workshop, keynote and six breakout tracks, also happy hours, networking activities, job fair, fun activities, etc... Tracks: * Architecture for scalability * Microservice best practice * Container technology * SRE and DevOps * Machine learning * Data infrastructure and analytics
- July Meetup
Agenda 6:00 Networking | Food | Drink 6:30 Welcome + Announcements 6:30 - 8:30 Talks! Talk 1: Jason Swartz (https://twitter.com/swartzrock?lang=en), Engineering Manager at ClassPass (https://classpass.com/) Title: Why You Need To Think Functionally About Your Data Details: As developers building services, we can choose from a wide range of languages and methodologies. When it comes to persistence data, however, it's worthwhile to stick to the principles of functional programming and immutable data. In this talk we'll look at why & how to take a more functional approach to persistence with databases, from considering immutable table rows, window functions, and event-source persistence. Talk 2: Skip Hovsmith (https://twitter.com/SkipHovsmith?lang=en), growth hacker at CriticalBlue (https://www.criticalblue.com/) Title: An Overview of OWASP’s Latest Category - API Underprotection Details: OWASP’s 2017 top ten adds a new category called 'underprotected APIs', reflecting the growth of RESTful Web APIs, richer front-end clients, and the potential for API abuse. We’ll walk through API protection techniques such as static API keys, rate limiting, OAuth2 user authorization, pinned TLS, and app anti-tamper approaches. We’ll combine some of these techniques to demonstrate improved API security by removing secrets hidden in a mobile app. Talk 3: Alex Miłowski (https://twitter.com/alexmilowski?lang=en), PhD of Orange Silicon Valley (http://www.orangesv.com/) Title: Going Serverless with Flask : Experiences with AWS Lambda and OpenWhisk Details: Deploying applications via serverless infrastructure may require some changes in architecture and assumptions. This talk will walk through experiences deploying Flask-based services on AWS Lambda and OpenWhisk with minimal changes, demo supporting libraries, enumerate some of the challenges, and address practical outcomes derived from the promises of serverless deployment.
- June Microservices Meetup
Hi All - excited to see you on June 6th at OpenTable for three great talks! Agenda: 6:00 - 6:30pm: Food/drinks networking 6:30 - 7:00: Mason Jones, staff software engineer at Credit Karma (https://www.creditkarma.com/): A Secure Docker Build Pipeline for Microservices When beginning our shift to a microservices architecture, Credit Karma's engineering organization needed to find a way to meet security and compliance needs while enabling development teams to be self-service, independent, and agile. Infrastructure Services lead Mason Jones will describe the build pipeline we put in place to accomplish this, and how you can balance security and efficiency in your environment. 7:00 - 7:30 Jacob Lee, software engineer at StdLib (http://stdlib.com): How to Move Faster With FaaS Function as a service (FaaS) platforms can use technologies like AWS Lambda to turn functions into infinitely scalable, highly available endpoints accessible from anywhere. These endpoints can be used to add pieces of functionality to existing monolithic architecture or as building blocks to create entire cloud-based microservice architectures. They provide great organizational benefits to projects, but also create difficulties when different services interact. This talk will discuss one approach to standardizing and organizing the way services communicate: an open-source specification called FaaSlang (Function as a Service Language). FaaSlang encourages simple conventions around microservice documentation and consumption, and includes type-safety mechanisms for inputs and outputs. 7:30 - 8:00 Kasun Indrasiri (https://twitter.com/kasunindrasiri), director of Integration Architecture at WSO2: Integration Microservices: Bridging Microservices, Integration and API Management" Microservices is becoming so popular and a lot of enterprises has segregated their monolithic applications to fine-grained services. However, now most of them facing the issue of how to integrate/orchestrate among those microservices and create composite services. While the traditional ESB architecture is not an option, there’s a real need to have a framework for building ‘integration microservices’.
- Microservices with Martin Fowler
Kubernetes or Cloud Foundry? Learn React Native or jump into Swift? Which techniques are hot and which are not? Join us for an interactive evening of bites, drinks and exploration of how technologists can grapple with these questions and make smart choices about the tools, techniques, frameworks, and languages they use in their web projects. Martin Fowler (https://twitter.com/martinfowler) will talk about the themes behind the Spring 2017 Edition of the Technology Radar (https://www.thoughtworks.com/radar), which compiles years of experience across different domains to provide well thought-out opinions on many of the trends that are coming and going today. The second half of the event is workshop-style – you'll learn how to build your own Technology Radar and how to use it as a tool to help your career as well as your organization. For more information, see Build Your Own Technology Radar (http://t.sidekickopen68.com/e1t/c/5/f18dQhb0S7lC8dDMPbW2n0x6l2B9nMJW7t5XZs1qg3LjW1p1xzb63RyynW7dSptd56dTNcf2F0tX602?t=https%3A%2F%2Fwww.thoughtworks.com%2Finsights%2Fblog%2Fbuild-your-own-technology-radar&si=5451140585488384&pi=53ff844b-a181-4175-e364-c5e6a1b5ac3f). 4:00 - 4:30 - Registration & refreshments 4:30 - 4:45 - Welcome & Introduction to the Tech Radar Concept 4:45 - 5:00 - Theme Speakers 5:00 - 5:20 - Instructions on how to build the radar / vote / what the “trial & assess” rings mean. 5:20 - 6:50 - Build the Radar! 6:00 - Empanadas arrive 6:50- 7:30ish - Synthesis, cake(!), and more conversation. There's no cost to attend the event, and we encourage you to invite anyone you think might be interested in this discussion.
- May Microservices Meetup
Agenda: 6:00 - 6:30: Pizza / Beer / Networking 6:30 - 7:00: Victor Romero, Software Architect, and Conor Curlett, Principal Architect at MuleSoft (https://www.mulesoft.com/): Leveraging messaging for Asynchronous Microservices: Going beyond REST. This talk will cover the dos and don'ts for applying messaging patterns to use cases in a microservices architecture. We'll go through a variety of brokers and protocols available, and by the end of the talk, you'll be able to recognize the value in the asynchronous style to messaging queues. 7:00 - 7:30: Eduard Borges, Developer at NGINX (https://www.nginx.com/): Adapting the 12-Factor App Model for Microservices Learn about how to adapt the core ideas in The Twelve‑Factor App to a general‑purpose microservices architecture that is optimized for continuous delivery. 7:30 - 8:00: Matt Billock @matt_billock (https://twitter.com/matt_billock?lang=en), Director of Product Management at Backand (https://www.backand.com/): Building a Test Harness for AWS Lambda In this discussion, we'll walk through the task of building a local debug harness for Node.JS AWS Lambda functions. We'll cover a brief history of Lambda, some of the caveats you run into while working with Lambda, and designing the test harness itself. Upon completion of this presentation, you'll have sufficient knowledge of the AWS Lambda invocation pattern to emulate its input locally. 8:00 - 8:15: The awesome team at O'Reily (https://www.oreilly.com/) will be raffling a Bronze Velocity Conference Pass (https://conferences.oreilly.com/velocity/vl-ca) ($1,545 value!) to one lucky attendee in our audience! Make sure to enter the raffle during our networking time to be eligible.
- March Microservices Meetup
Hi everybody, I'm excited to announce our March meetup for SF Microservices! Last month, we were hosted by Weaveworks (https://www.weave.works/) in Potreo Hill (for the second time!), and we had an awesome night. Thank you again to Weave, as well as to all of our February speakers. This month, we will be hosted by Apcera (https://www.apcera.com/), and we're looking forward to a great night of talks, empanadas, and drinks! Agenda 6:00 PM- Doors Open 6:30 PM- Talks Begin 8-8:30 PM- Questions, Socializing, Networking Speakers Thomas Hunter,@tlhunter (https://twitter.com/tlhunter), Software Engineer at OpenTable (https://www.opentable.com/start/home) Node and Redis This talk will follow the evolution of a simple application, beginning with a naive approach of storing data in memory, an explanation of why this fails when using multiple service instances (e.g. with Node cluster), and finally a revamped version storing state in Redis. We'll also look at performing ato1mic operations using both the simple MULTI/EXEC commands, and the more complex EVAL/EVALSHA commands. David Wells, @DavidWells (https://twitter.com/davidwells?lang=en), Senior Software Engineer at Serverless (https://serverless.com/) Building Serverless Microservices David will explore different use cases for building microservices with Serverless technology. The talk will include examples from companies and other open source projects. David will also present a new open source project that is built with AWS Serverless technology. Ben Horowitz, Technical Architect at NGNIX (https://www.nginx.com/resources/wiki/) Adapting the Twelve‑Factor App for Microservices The Twelve‑Factor App is a set of general principles for creating useful web apps. NGINX has extended the Twelve‑Factor App with our own additions and microservices‑ specific modifications. Learn about how to adapt the core ideas in The Twelve‑Factor App to a general‑purpose microservices architecture that is optimized for continuous delivery.
- February Microservices Meetup
Hi everyone, After a long wait, I'm happy to announce our February meetup for SF Microservices! Last month, we were graciously hosted by Google (http://google.com) in their San Francisco office, and we really enjoyed ourselves! Thank you again to Google, as well as to all of our December speakers. This month, we're takin' it back to Weaveworks (https://www.weave.works/)' Potrero Hill office, since our last meetup with them was such a success. Agenda 6:00 PM- Doors Open 6:30 PM- Talks Begin 8-8:30 PM- Questions, Socializing, Networking Speakers -Jaime Piña, @variadico (https://twitter.com/variadico), Software Engineer at Apcera Debugging Network Issues Microservice issues are networking issues. Fixing code in your app is easy, but the hard part of using microservices is the networking. How do you actually know if you're sending what you think you are? Why does this request fail in my app, but not when I use curl? Is this service very slow or is it up at all? This talk will help demystify some common problems you might experience while building out your collection of microservices. Once you can find the issue, it becomes way easier to fix. -Nathan Murthy, @natemurthy (https://twitter.com/natemurthy), Software Engineer at Tesla/SolarCity A Brief History of Containers What did the world look like before Docker? In this talk Nathan examines the history of container technologies -- starting with chroot in the 1970s to containers in the cloud today -- in an effort to uncover the essence of containerization software. Many software teams are jumping onto these technologies without unlocking their intended benefits. How much of the hype is real, much less understood? -Noah Zoschke, @nzoschke (https://twitter.com/nzoschke), CTO at Convox Bootstrapping Microservices There's a lot to get right in setting up all those production microservices. For example-- What is the unit of development vs deployment? Should the API service be deployed separately from the worker service? What are the dependencies between the microservices? Can one service discover the network and authentication information to talk to another service? Do the microservices have a health check endpoints? Are health checks used during service roll out and automatically rolled back if not passing? Are containers that fail the health check automatically replaced? Does the microservice use periodic tasks? How are all these configured and managed across deploys? Does the microservice need a persistent filesystem? How is the data shared between all the microservice containers? How does it persist across instance replacements? Luckily the effort to set all this up correctly can be minimized by using open-source software to set up cloud services correctly. Here we will demonstrate the techniques the open-source Convox uses to set up microservices correctly from day one. We'll demonstrate some simple Docker Compose configuration files that describe common microservice patterns. Then we'll demonstrate how this configuration is translated into a fully-automated production-ready microservice architecture on AWS.