SlideShare una empresa de Scribd logo
1 de 103
Put iOS and Android on the
same Wavelength with
Serverless Microservices
AnDevCon - July 2017
Neil Power @neilpower (and Paul Cowles @paulrc)
https://github.com/neil-power-hs/aws-lambda-sample
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
INTRODUCTION
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
● Mobile Software Developer at Hootsuite.
● Live and work in Vancouver, BC, Canada.
● Previously worked in DevOps at Hootsuite before
moving to Mobile development.
Who Am I
Hootsuite is the world’s most widely
used social media management
platform.
15+ million users
800+ fortune 1000 companies
Nearly 1000 employees
across 10+ offices
Hootsuite is a centralized hub for all
things social.
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
● Core Mobile team facilitates mobile development at
Hootsuite.
● Dedicated iOS, Android, API and Services, Automation
teams.
● Continuous integration and delivery pipeline.
● iOS and Android teams focus on native
implementations (Swift/Obj-C and Java/Kotlin).
Our Team
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Library Driven Development
Core team focussed on library driven development
and being able to ‘slice’ our app into verticals.
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Library Driven Development
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
● Culture
○ To work out loud (#workoutloud)
○ Experimentation
○ Innersource / Open Source
○ Giving back to the community
Why Am I Here
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Culture of Experimentation
● A new mindset: We don’t do projects, we run
experiments.
● We build, measure, learn, and repeat.
● For product, change from feature based roadmaps to
problem based roadmaps.
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Managing Change
SERVERTOSERVERLESS
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Progression of Servers
● Physical Servers
● Virtual Servers
● Containers
● Serverless
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Physical Servers
● Servers in the Basement.
○ No Disaster Recovery 👎
○ High Maintenance Cost 👎
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Virtual Servers
● Servers managed by AWS.
○ Disaster recovery 👍
○ Lower maintenance cost 👍
○ Low utilization 👎
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Containers
● Servers still managed by AWS.
○ Disaster recovery 👍
○ Lower maintenance cost 👍
○ High utilization 👍
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Serverless
● Servers managed by AWS (fully hidden)
○ Disaster recovery 👍
○ Lowest maintenance cost 👍
○ Higher utilization 👍 (pay per use)
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Managing Change
APPEXPERIMENTS
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Past Experiments at Hootsuite
● Web Views
● Cordova/Phonegap
● React Native
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Web Views
● Many limitations. 👎
● Javascript 👎
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Cordova
● Great for quickly prototyping 👍
● Challenging for complex apps, responsiveness on
gestures and touch, and clean crisp animations and
transitions 👎
● Javascript 👎
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
React Native
● Ends up looking a lot like a fully native app 👍
● Needs to be stable, avoid temporary workarounds 👎
● Javascript 👎
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
What Should We Try Next?
● Service oriented architecture (SOA), microservices
inspired
● Focus lower down the stack, away from the interface
● Develop and debug local, run in the cloud
● Cross Platform - Android first, iOS second, Web third
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
THEEXPERIMENT
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Improved Twitter Search
● Hootsuite enables users to search Instagram and
Twitter and save those as streams for future use
○ One of our most popular stream types
● Twitter in particular provides an extensive search API
○ Unless you’re a developer, search syntax is arcane
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Twitter Search Syntax
● cats AND dogs AND (fish OR lizards)
filter:media -RT min_retweets:10
geocode:49.209389,-120.190909,15mi lang:en
-cows
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Add a Query Builder
● Query Builder allows Hootsuite users to create
complex Twitter searches using a simple graphical
interface.
● No longer have to learn and remember Twitter search
syntax.
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
/
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Why Keep it Out of the Client?
● Twitter could change search syntax.
○ We don’t want to redeploy the apps after such a
change.
● We want to avoid computation the app side.
● We want to avoid embedded ANTLR runtime in the
app.
(((Social OR socialmedia OR #SocialMedia) AND (monitoring OR
analytics OR “management tool" OR compliance OR listening OR
monitoring OR publishing OR engagement OR infrastructure OR
intelligence OR "Social Media Management")) AND
(recommendation OR recommendations OR suggestion OR
suggestions OR ideas OR thoughts OR suggest OR recommend OR
promote OR advice OR "Should use" OR anyone OR Friends OR
(What's AND Favorite))) AND -RT -http -from:FiftySocialMedia
Real Customer Search
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
The Tools we Used
● AWS Lambda
● API Gateway
● Terraform
● AWS CLI
● boto
● Gradle
● Jenkins
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
AWS Lambda
● AWS Lambda is an event-driven, serverless computing
platform provided by Amazon.
○ Allows you to run code in the cloud without
creating servers or containers.
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
API Gateway
● API Gateway is a tool for creating and managing APIs.
○ Can be easily integrated with Lambda functions.
○ Manage an API like a RESTful Endpoint.
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Terraform, AWS CLI, boto
● Terraform: a tool for Infrastructure as code. Build,
change, version infrastructure.
○ Terraform allows the testing and reproduction of
infrastructure changes.
● AWS CLI: tool for managing AWS resources through a
terminal.
● boto: Python wrapper for AWS CLI.
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Gradle
● Gradle is an open source build automation system.
○ Builds off the concepts of Ant and Maven.
○ Used frequently on Android, so natural fit for our
experiment.
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Jenkins
● Jenkins is a continuous integration application.
○ Used at Hootsuite to power our build pipelines.
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
HELLOLAMBDA
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Experiment Distillation
● A “hello world” for our experiment just for you!
● Available publicly on github.
● We’ve extracted the essence of this talk from our live
experiment so that you can play with it yourself after
the conference.
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
/
package com.hootsuite.example.lambda;
public class SampleLambda {
public static String invokeFunction(SampleRequest request) {
switch (request.getInput()) {
case 0: return "ZERO";
case 2: return "TWO";
case 3: return "THREE";
default: return "GREATER THAN ZERO";
}
}
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
How It Fits Together
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
How It Fits Together
Build Zip,
Upload to S3
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
How It Fits Together
Push artifact
from S3 to Lambda
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
How It Fits Together
Clients invoke
Lambda
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
How It Fits Together
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
How It Fits Together
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Test Locally
JUnit tests hit
the local code.
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Creating AWS Infrastructure
● Now we have an artifact built by Gradle
● We need to create the AWS Infrastructure
○ AWS Lambda Function
○ IAM resources to invoke and manage the function
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
resource "aws_lambda_function" "sample_lambda" {
filename = "../build/distributions/sample-lambda-1.0.0.zip"
function_name = "sampleLambda_${var.env}"
description = "A demonstration of AWS Lambda"
runtime = "java8"
timeout = 10
role = "${aws_iam_role.sample_lambda_role.arn}"
handler = "com.hootsuite.example.lambda.SampleLambda::invokeFunction"
}
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Terraform Plan
● After fully specifying the Infrastructure we need to
build it.
● Terraform uses the concept of a “plan” (a dry run)
● Planning allows you to see what changes will be made
before making them.
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Push Artifact to Lambda
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
End to End Testing
JUnit tests hit the
Lambda Function.
PERFORMANCE
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
What About Performance?
● Evaluated before committing to the approach
● Measured “Hello World” as Lambda - iOS and Android.
Consistent?
● Measured actual function as Local vs. Lambda.
Difference? Sub second?
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Platform Min. Time (ms) Mean Time (ms) Max. Time (ms) Std. Deviation (ms)
Android 73 120 410 13
iOS 70 130 330 24
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Environment Min. Time (ms) Mean Time (ms) Max. Time (ms) Std. Deviation (ms) CoV
Local 14 16 18 1.3 7.9%
Lambda 610 740 840 70 9.5%
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
MANAGINGCHANGE
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Client and Server Changes
● Older app builds in the wild, locked in time
● Changing server side APIs can break legacy app
experiences
● “Broken app until you upgrade, sorry!”
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
No App Left Behind
● Lambda supports versions and aliases
● Leverage both to safely support legacy clients while
still allowing ability to evolve
● Lock to alias, control mappings to versions
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
SDKs Versus API Gateway
● Started using API Gateway in iOS to reduce library
dependencies
● On Android, helped to lower method count in the app.
● Minimal increase in execution time.
Rest Client
Request
Lambda Function
Response
Rest Client
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
AUTOMATIONAND
INTEGRATION
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Start With Automation
● Manual deployment is tedious, automate early
● Other than deployment, nothing else to manage
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
xkcd: Is It Worth The Time? https://xkcd.com/1205/
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Continuous Deployment
● Manage deployment using Gradle and boto
● Jenkins for continuous integration and delivery
● Dashboards show Jenkins job results
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
LEARNINGS
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Development Experience
● The Good
○ Android developers immediately productive in Java.
○ Android developers finally get to use Java 8.
○ Much easier to manage Lambda than virtual server.
● The Challenges
○ Many different technologies (polyglot development).
○ Rather than compilation, Lambda code must be deployed.
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
The Sweet Spot
● Works well for complex “business logic”
● Adds safety when aggregating or integrating third party services
● Requires network availability, not a fit for offline experiences
● User experience that allows hiding latency by prefetching
● Cross platform requirement
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Downsides
● Latency to manage
● Offline use case not supported
● Investment up front to automate deployment hassles (devops)
● Fat AWS SDK on iOS makes REST interface highly desired
● Not a cross platform strategy for entire app, only layer(s)
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Benefits
● Sharing across Web and mobile
● If you’re already aligned with microservices, natural mental model
● No servers sitting idle costing you money
● Lambda ideal for low, uncertain or sporadically used services due
to pay per use however also endlessly scalable
● Sane way of versioning client server
● Low burden to support MANY versions at the same time
● Encourages encapsulation
● Easy to empower distributed teams
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
SUMMARY
https://github.com/neil-power-hs/aws-lambda-sample @NeilPower
Summary
● Download the sample repo yourself and run through front to
back, we use it as a workshop.
● The cross platform opportunity will continue to be a dream goal
and hotly contested in terms of how much it is worth chasing and
how to best achieve it.
● Physical servers -> Virtual Servers -> Containers -> Serverless is
an interesting journey.
● Cloud functions are a powerful enabler.
● Embrace experimentation as part of your culture.
● Share what you are doing #workoutloud!
Thanks!
Questions?

Más contenido relacionado

La actualidad más candente

Saturn 2014. Engineering Velocity: Continuous Delivery at Netflix
Saturn 2014. Engineering Velocity: Continuous Delivery at NetflixSaturn 2014. Engineering Velocity: Continuous Delivery at Netflix
Saturn 2014. Engineering Velocity: Continuous Delivery at Netflix
Dianne Marsh
 

La actualidad más candente (20)

The FaaS and the Furious
The FaaS and the FuriousThe FaaS and the Furious
The FaaS and the Furious
 
Dockerized apps on Kubernetes
Dockerized apps on KubernetesDockerized apps on Kubernetes
Dockerized apps on Kubernetes
 
Team Support in Concourse CI 2.0 #concourse_tokyo
Team Support in Concourse CI 2.0 #concourse_tokyoTeam Support in Concourse CI 2.0 #concourse_tokyo
Team Support in Concourse CI 2.0 #concourse_tokyo
 
Saturn 2014. Engineering Velocity: Continuous Delivery at Netflix
Saturn 2014. Engineering Velocity: Continuous Delivery at NetflixSaturn 2014. Engineering Velocity: Continuous Delivery at Netflix
Saturn 2014. Engineering Velocity: Continuous Delivery at Netflix
 
Reuse, Reduce, Recycle in Serverless World
Reuse, Reduce, Recycle in Serverless WorldReuse, Reduce, Recycle in Serverless World
Reuse, Reduce, Recycle in Serverless World
 
Software Quality in the Devops World: The Impact of Continuous Delivery on Te...
Software Quality in the Devops World: The Impact of Continuous Delivery on Te...Software Quality in the Devops World: The Impact of Continuous Delivery on Te...
Software Quality in the Devops World: The Impact of Continuous Delivery on Te...
 
Last year in AWS - 2019
Last year in AWS - 2019Last year in AWS - 2019
Last year in AWS - 2019
 
Serverless with Spring Cloud Function, Knative and riff #SpringOneTour #s1t
Serverless with Spring Cloud Function, Knative and riff #SpringOneTour #s1tServerless with Spring Cloud Function, Knative and riff #SpringOneTour #s1t
Serverless with Spring Cloud Function, Knative and riff #SpringOneTour #s1t
 
Concourse x Spinnaker #concourse_tokyo
Concourse x Spinnaker #concourse_tokyoConcourse x Spinnaker #concourse_tokyo
Concourse x Spinnaker #concourse_tokyo
 
Riga Dev Days: Building a Smart Security Camera with Raspberry Pi Zero, Node....
Riga Dev Days: Building a Smart Security Camera with Raspberry Pi Zero, Node....Riga Dev Days: Building a Smart Security Camera with Raspberry Pi Zero, Node....
Riga Dev Days: Building a Smart Security Camera with Raspberry Pi Zero, Node....
 
Spring Boot Omakase: A Fast-Paced “Chef’s Choice” Dive into Fun and Useful To...
Spring Boot Omakase: A Fast-Paced “Chef’s Choice” Dive into Fun and Useful To...Spring Boot Omakase: A Fast-Paced “Chef’s Choice” Dive into Fun and Useful To...
Spring Boot Omakase: A Fast-Paced “Chef’s Choice” Dive into Fun and Useful To...
 
When to use Serverless? When to use Kubernetes?
When to use Serverless? When to use Kubernetes?When to use Serverless? When to use Kubernetes?
When to use Serverless? When to use Kubernetes?
 
BETA: "Cloud Developers DHARMA: Redefining 'done' for Cloud applications"
BETA: "Cloud Developers DHARMA: Redefining 'done' for Cloud applications"BETA: "Cloud Developers DHARMA: Redefining 'done' for Cloud applications"
BETA: "Cloud Developers DHARMA: Redefining 'done' for Cloud applications"
 
GeeCon 2017 : Building a Smart Security Camera with Raspberry Pi Zero, Node.j...
GeeCon 2017 : Building a Smart Security Camera with Raspberry Pi Zero, Node.j...GeeCon 2017 : Building a Smart Security Camera with Raspberry Pi Zero, Node.j...
GeeCon 2017 : Building a Smart Security Camera with Raspberry Pi Zero, Node.j...
 
AWS Summit - Trends in Advanced Monitoring for AWS environments
AWS Summit - Trends in Advanced Monitoring for AWS environmentsAWS Summit - Trends in Advanced Monitoring for AWS environments
AWS Summit - Trends in Advanced Monitoring for AWS environments
 
Tempo’s Journey Into the Cloud
Tempo’s Journey Into the CloudTempo’s Journey Into the Cloud
Tempo’s Journey Into the Cloud
 
Agile Development with OSGi
Agile Development with OSGiAgile Development with OSGi
Agile Development with OSGi
 
Future of Development and Deployment using Docker
Future of Development and Deployment using DockerFuture of Development and Deployment using Docker
Future of Development and Deployment using Docker
 
How to use apolloJS on React ?
How to use apolloJS on React ?How to use apolloJS on React ?
How to use apolloJS on React ?
 
A peek at (one) Modern Infrastructure Development Environment
A peek at (one) Modern Infrastructure Development EnvironmentA peek at (one) Modern Infrastructure Development Environment
A peek at (one) Modern Infrastructure Development Environment
 

Similar a Put iOS and Android on the same Wavelength with Serverless Microservices

Building Open Source Communities for AWS Serverless Developer Tools
Building Open Source Communities for AWS Serverless Developer ToolsBuilding Open Source Communities for AWS Serverless Developer Tools
Building Open Source Communities for AWS Serverless Developer Tools
Amazon Web Services
 
DevOps Con 2015: Radical Agility with Autonomous Teams and Microservices in t...
DevOps Con 2015: Radical Agility with Autonomous Teams and Microservices in t...DevOps Con 2015: Radical Agility with Autonomous Teams and Microservices in t...
DevOps Con 2015: Radical Agility with Autonomous Teams and Microservices in t...
Henning Jacobs
 

Similar a Put iOS and Android on the same Wavelength with Serverless Microservices (20)

Building Serverless APIs on AWS
Building Serverless APIs on AWSBuilding Serverless APIs on AWS
Building Serverless APIs on AWS
 
Developing and deploying serverless applications (February 2017)
Developing and deploying serverless applications (February 2017)Developing and deploying serverless applications (February 2017)
Developing and deploying serverless applications (February 2017)
 
Docker and serverless Randstad Jan 2019: OpenFaaS Serverless: when functions ...
Docker and serverless Randstad Jan 2019: OpenFaaS Serverless: when functions ...Docker and serverless Randstad Jan 2019: OpenFaaS Serverless: when functions ...
Docker and serverless Randstad Jan 2019: OpenFaaS Serverless: when functions ...
 
Building Open Source Communities for AWS Serverless Developer Tools
Building Open Source Communities for AWS Serverless Developer ToolsBuilding Open Source Communities for AWS Serverless Developer Tools
Building Open Source Communities for AWS Serverless Developer Tools
 
Serverless Frameworks on AWS
Serverless Frameworks on AWSServerless Frameworks on AWS
Serverless Frameworks on AWS
 
Cloud and agile software projects: Overview and Benefits
Cloud and agile software projects: Overview and BenefitsCloud and agile software projects: Overview and Benefits
Cloud and agile software projects: Overview and Benefits
 
Is Serverless The New Swiss Cheese? - AWS Seattle User Group
Is Serverless The New Swiss Cheese? - AWS Seattle User GroupIs Serverless The New Swiss Cheese? - AWS Seattle User Group
Is Serverless The New Swiss Cheese? - AWS Seattle User Group
 
Platform engineering 101
Platform engineering 101Platform engineering 101
Platform engineering 101
 
Building Serverless APIs (January 2017)
Building Serverless APIs (January 2017)Building Serverless APIs (January 2017)
Building Serverless APIs (January 2017)
 
OpenFaaS - zero serverless in 60 seconds anywhere with case-studies
OpenFaaS - zero serverless in 60 seconds anywhere with case-studiesOpenFaaS - zero serverless in 60 seconds anywhere with case-studies
OpenFaaS - zero serverless in 60 seconds anywhere with case-studies
 
Public PaaS Throwdown!
Public PaaS Throwdown!Public PaaS Throwdown!
Public PaaS Throwdown!
 
Running Containerized Applications on Modern Serverless Platforms
Running Containerized Applications on Modern Serverless PlatformsRunning Containerized Applications on Modern Serverless Platforms
Running Containerized Applications on Modern Serverless Platforms
 
Continuous Deployment @ AWS Re:Invent
Continuous Deployment @ AWS Re:InventContinuous Deployment @ AWS Re:Invent
Continuous Deployment @ AWS Re:Invent
 
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
 
How to build an event-driven, polyglot serverless microservices framework on ...
How to build an event-driven, polyglot serverless microservices framework on ...How to build an event-driven, polyglot serverless microservices framework on ...
How to build an event-driven, polyglot serverless microservices framework on ...
 
From Zero to Hadoop: a tutorial for getting started writing Hadoop jobs on Am...
From Zero to Hadoop: a tutorial for getting started writing Hadoop jobs on Am...From Zero to Hadoop: a tutorial for getting started writing Hadoop jobs on Am...
From Zero to Hadoop: a tutorial for getting started writing Hadoop jobs on Am...
 
Portable Multi-cloud Microservices with Dapr .pptx
Portable Multi-cloud Microservices with Dapr .pptxPortable Multi-cloud Microservices with Dapr .pptx
Portable Multi-cloud Microservices with Dapr .pptx
 
Run Code, Not Servers: AWS Lambda
Run Code, Not Servers: AWS LambdaRun Code, Not Servers: AWS Lambda
Run Code, Not Servers: AWS Lambda
 
DevOps on AWS: Accelerating Software Delivery with the AWS Developer Tools
DevOps on AWS: Accelerating Software Delivery with the AWS Developer ToolsDevOps on AWS: Accelerating Software Delivery with the AWS Developer Tools
DevOps on AWS: Accelerating Software Delivery with the AWS Developer Tools
 
DevOps Con 2015: Radical Agility with Autonomous Teams and Microservices in t...
DevOps Con 2015: Radical Agility with Autonomous Teams and Microservices in t...DevOps Con 2015: Radical Agility with Autonomous Teams and Microservices in t...
DevOps Con 2015: Radical Agility with Autonomous Teams and Microservices in t...
 

Último

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 

Último (20)

AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...How to Choose the Right Laravel Development Partner in New York City_compress...
How to Choose the Right Laravel Development Partner in New York City_compress...
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 

Put iOS and Android on the same Wavelength with Serverless Microservices