Engineering29
Stay up-to-date with the latest tips and best practices for cloud-native software development, from commit to release.
![Developer C sits at a desk working on an advanced-level project](https://ctf-cci-com.imgix.net/viYGJWazT0Q4kLAn2r4z3/ddb341525e87e41f09773945d4e14fe4/Tutorial-Advanced-C.jpg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
Tips for optimizing Docker builds
![Angel Rivera](https://ctf-cci-com.imgix.net/1Rhp9Nebp4K4jKGw9YG584/afaa8e5a1dcb4d8eae695a091369b951/angel-rivera2.jpg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
Developer Advocate, CircleCI
![Developer B sits at a desk working on an advanced-level project.](https://ctf-cci-com.imgix.net/4wcFcrXEs3WD2rILK6gwUp/8da5fbebc266c1c40b28387fa2d55698/Tutorial-Advanced-B.jpg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
Building Docker images for multiple operating system architectures
![Angel Rivera](https://ctf-cci-com.imgix.net/1Rhp9Nebp4K4jKGw9YG584/afaa8e5a1dcb4d8eae695a091369b951/angel-rivera2.jpg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
Developer Advocate, CircleCI
![Developer C sits at a desk working on a beginning-level project.](https://ctf-cci-com.imgix.net/5yx4R4xvrT9DA6C142jlfI/920f0f0b727ad0971ce311d693d33e66/Tutorial-Beginner-C.jpg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
Adding test coverage to your continuous integration pipeline
![James Kessler](https://ctf-cci-com.imgix.net/1CClELlxuWCnGcLdBAsdwE/f555bd73ccd8da693833e558e0235206/james-kessler.jpg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
CTO of American Field
![CircleCI+DeployHub](https://ctf-cci-com.imgix.net/39y7q6nfnEOOwwo3VRV4Lo/12ca27911fca12b369bc6b5d64d78f4a/CircleCI_DeployHub.png?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
CI pipelines for testing microservices with DeployHub and CircleCI
![Tracy Ragan](https://ctf-cci-com.imgix.net/1s4NrxqjWlA5wVypGjFj3x/f2cb6c1b852f83836d2aa57f4e8bb1b7/tracy-ragan.jpg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
CEO at DeployHub
![Monitors with stylized lines of code on a grid scattered with geometric shapes.](https://ctf-cci-com.imgix.net/45PA6DDhlhTlOdmqfDwiAk/186f7cf9a55d523d4385b2d2dd1682e2/Default-Abstract-GreenBG-v2.jpg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
Do I really need Kubernetes?
![Ron Powell](https://ctf-cci-com.imgix.net/1ykjZ6GjLIFziqBYnZwdRY/4651ae44f9a0a87c008f85b8e3c8da81/ron-powell.jpeg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
Senior Manager, Marketing Insights and Strategy
![Developer B sits at a desk working on a beginner-level project.](https://ctf-cci-com.imgix.net/2OXKoGVBa9I1hOe838e6Yr/71da311f3eee94b772e7da73c46844b4/Tutorial-Beginner-B.jpg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
Continuous integration for AdonisJS APIs
![Fikayo Adepoju](https://ctf-cci-com.imgix.net/6wCBzYlpXsjQ3HPTj7qHoK/10e449a2459399b3b312fd2f8bac35e3/fikayo-adepoju.jpg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
Fullstack Developer and Tech Author
![Developer RP sits at a desk working on an intermediate-level project.](https://ctf-cci-com.imgix.net/2JbzjMah0Oqun3vNePlwoJ/ca93a1b54ee9be5c1e2499df684b042d/Tutorial-Intermediate-RP.jpg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
Continuous deployment for Next.js applications
![Fikayo Adepoju](https://ctf-cci-com.imgix.net/6wCBzYlpXsjQ3HPTj7qHoK/10e449a2459399b3b312fd2f8bac35e3/fikayo-adepoju.jpg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
Fullstack Developer and Tech Author
![Developer C sits at a desk working on a beginning-level project.](https://ctf-cci-com.imgix.net/5yx4R4xvrT9DA6C142jlfI/920f0f0b727ad0971ce311d693d33e66/Tutorial-Beginner-C.jpg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
Adding approval jobs to your CI pipeline
![Travis Depuy](https://ctf-cci-com.imgix.net/4dm5qdokYiMnsbedwe56un/0aa210e36ce34ffb3985fc9bd3aaa5d7/travis-depuy.jpg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
Product Evangelist at xMatters
![Developer RP sits at a desk working on a beginner-level project.](https://ctf-cci-com.imgix.net/yreoQeXQhUjDj9JhApNfp/b87c367b03e3fec297747e442427a78c/Tutorial-Beginner-RP.jpg?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
Getting started with Kubernetes: how to set up your first cluster
![Sander Knape](https://ctf-cci-com.imgix.net/DC7nR1aPieUmPlYDELKSv/1c005ee28f6169dd61eb9cc06731b12e/sander-knape.png?ixlib=rb-3.2.1&w=2000&auto=format&fit=max&q=60)
ContentLab Author, Cloud Engineer