Sr Software Engineer, Stateful Container Platform
Uber
Software Engineering
Aarhus, Denmark · Central Denmark Region, Denmark
Posted on Friday, April 28, 2023
About The RoleWe build Uber’s infrastructure to deploy and run all database engines and other stateful systems such as MySQL, Schemaless, Redis, ZooKeeper, Kafka and HDFS globally for all of Uber worldwide. Our mission is to run all Uber's storage solutions at scale, with high-availability, low cost, and a high level of automation. All changes are automated (or self-healing) such as doing kernel upgrades, handling host failures, or growing storage clusters.What You Will DoWe manage around 100,000 hosts, millions of containers and exabytes of storage across multiple geographical regions with availability zones in both Uber’s own data centers and multiple cloud vendors. Databases are dockerized and co-located on hosts with intelligent placement to optimize utilization and failure domain anti-affinity to improve efficiency and reliability. Services are written in Go, focusing on clean, readable code with unit and integration test coverage. All code changes are peer-reviewed.We have phenomenal opportunities ahead to extend the integrations with the different database engines and to increase fleet-wide efficiency by optimizing scheduling, auto-scaling and resource forecasting. We strive to automate all operations currently handled by on-call engineers with the goal of having a fully self-healing system - without compromising on availability or reliability.Our team comprises a balanced combination of junior and senior engineers with a broad range of experiences across the industry. We value ideas over hierarchy, getting things done, and having a measurable impact on the business. We work closely with our partner teams in San Francisco, Sunnyvale, Seattle, New York, and Bangalore.
Basic QualificationsA typical engineer in our team fits the following profile. We expect you to have similar traits.
- 3+ years of professional software development experience
- BS, MS or PhD degree in computer science, similar technical field of study or equivalent practical experience
- Background in multiple programming languages, e.g., C/C++, Python, Go, etc.
- Attention to detail, particularly around software engineering fundamentals, testing methodologies, and quality
- Experience with Linux development
- Experience with large distributed systems.
- Experience with containerization software such as Kubernetes, Docker, Mesos.
- Comfortable working with on-prem and cloud-based infrastructure (AWS, GCP).
- Experience with database and storage technologies and know the tradeoffs between them
- Experience using data science to build data driven solutions
See more open positions at Uber
Something looks off?