4. lastminute.com
We sell Travel Services
to more than 10 million customers per year
across 35 countries in 15 languages
Every month, we touch 45 million users across
all of our websites and mobile apps
4
8. Multi-cloud governance is hard
Platform team need to keep costs under control; access should also be restricted
to specific roles, while letting team have the freedom and speed to experiment
on their own and evolve the product.
8
But every vendor has its own
implementation to achieve this...
Inevitably, conflicts arise
9. Sample use case
A new project with high business impact but also high volatility
We needed to…
● Iterate very fast and often
● Feedback from our application
Metrics and logs were not enough
9
10. Not fast enough for business
Going cloud was an idea but value was not delivered fast enough
Slowness was related to...
● No tooling to work with cloud
● Poor cloud services knowledge
● Missing team ownership
10
11. Not fast enough for developers
“Platform is a bottleneck!”
Because humans don’t scale...
● Provisioning is locked down
● Support for changes once live
● Stakeholders requests
11
13. A new approach
Let the teams manage infrastructure themselves!
With just a few constraints:
● 100% auditable
● Common language
● Single scope
● Supervised by Platform
13
14. Implementation
IaC to the rescue
Terraform + Golang + GitLab + Git
● Software to manage software
● Fast, consistent and repeatable
● Scales on multiple projects
● Minimizes cognitive load
14
16. A safe playground for teams
Infrastructure has started to be a part of a developer’s work
Through experiments, failures and successes we...
● Became faster
● Reduced Big Upfront Design
● Choose Quality, Time and Cost
16
17. There was still a wall
Cloud is an enabler to break this barrier but is it enough?
Barriers between dev and ops...
● tools do not solve alone
● need best practices
17
18. Improving collaboration
18
We can scale on multiple projects with
zero additional overhead for Platform.
A new, more effective way of communicating is born, project ownership is shared.
Cloud management best-practices are propagated through code:
● Permission management
● Resources usage optimizations
20. Devs make it better
Dev teams take care of enhancing their environments
Infrastructure is part of the daily dev work
Team ownership drives quality at 360°
Less process more actions
20
21. Devs make it faster
21
Jun Jul Aug Sep Oct
IaC Feature v1
IaC Feature v2
Feature
Feature
Feature
22. Devs make it cheaper
22
Closeto zero
Oct Nov Dec Jan
2,2k
1,8k
300
24. Future improvements
● CI pipelines to test changes
● Adopt for all clouds, all projects
● Simpler onboarding for new hires
● Make it self-service
● More customisations
● Non product stakeholders access
24
26. Use case
AS a Service Manager (Auditing responsibilities)
I WANT TO know how the user changed the production configuration
SO I can understand if there is a correlation between an incident and a
configuration change
26
27. Make it happen
● Create new project in Google Cloud called lmn-avv-2019-example
● Template gcp-base (our std project with access to GCP APIs)
● Carlo’s team will be the owner
● Kotlin application to load auditing data on BigQuery
27