The move to the cloud calls for rethinking how systems are built and run. The unprecedented scale of the cloud together with the demand for extremely high availability pose many challenges. It also creates an opportunity to build systems stacks afresh without the burden of legacy. We address these challenges by combining verification, to detect errors before they can affect availability, with implementations of high level abstractions that reduce the number of errors by simplifying programming, while leveraging hardware-software co-design to achieve exceptional performance and efficiency targets. Our work spans distributed systems, storage, operating systems, networking, verification, hardware offload, and other areas of systems.