Lano is on a mission to help companies everywhere grow their global teams. They provide all the tools required to compliantly hire and pay a global workforce in one smart platform. With Lano, companies can hire full-time employees in 150+ countries, manage a network of freelancers or contractors worldwide, and consolidate payroll for all their international offices. Learn more at www.lano.io.
Lano’s infrastructure and tooling setup
Lano’s applications are hosted on GCP, mainly using GKE. They use Bitbucket for CI and a wide array of databases ranging from Postgres to ArangoDB. They store their images with Docker Container Registry and have Redis, Elastic and MariaDB running in cluster with Route53 to manage DNS. Before adopting Humanitec, Lano managed their applications with a Helm-based configuration as code approach.
Lano’s key challenges
As Covid hit and many teams shifted to a partially or fully remote setup, Lano’s customer base exploded. Though already an established business then, they were suddenly growing their team at double percentage points month over month. The infrastructure and technical setup were not prepared for this growth, leading to scaling issues, a poor developer experience, and a longer time to market.
- Complex deployment setup: At scale, the GitOps-Helm combination was hard to debug, maintain, and operate for developers. Kubernetes was hard to use and slowed teams down.
- Ops bottleneck: Key person dependencies slowed overall delivery and led to ticket ops. Waiting times for databases, environments, and other resources blocked development.
- Prod outage: The deployment failure rate increased due to faulty dependencies on the test-infrastructure.
- Slow onboarding: Getting new developers up to speed was highly time-consuming and inefficient. At their growth rate, this blocked a lot of resources.
Lano designed their platform following Humanitec’s GCP reference architecture. They opted for Score as an interface, complemented by the Orchestrator UI. The platform team configured the baseline configs for applications and built reusable infrastructure templates using Humanitec’s open-source drivers.
"As we rapidly scaled, Ops came under massive pressure. Since we enabled developer self-service with Humanitec, Ops aren't a bottleneck anymore and we are shipping features 4x faster!"
By building their Internal Developer Platform with Humanitec, Lano’s platform team was able to orchestrate their cloud-native toolchain and enable developer self-service. They set clear baseline configs and designed golden paths for the rest of the engineering team. Developers autonomously self-serve the tech and tools they need in fully provisioned, dynamic environments:
- Simplified deployment process across apps and environments, leading to a 4X increase in deployment frequency through developer self-service.
- Streamlined application configuration so developers don’t need to touch Helm charts, completely removing Kubernetes complexity.
- Developers can now spin up fully provisioned environments or provision resources such as databases, file storage, and DNS without using the GCP console.
Humanitec erased bottlenecks and dependencies, reduced pressure on operations, simplified maintenance, and reduced waiting times. As a result, deployment frequency skyrocketed, and the change failure rate dropped.
"The speed at which we are deploying today would have frankly not been possible without Humanitec."
The initial evaluation was against a self-built setup with ArgoCD, estimated to take 6+ months to build with an investment of 500k+.
- POC: 7 working days
- Integration: 3.5 weeks
- Onboarding per new developer: 30 minutes