Going from prototyping to production, one has many options to choose from to develop their IoT project. Yocto and other open source build systems such as Buildroot provide an automated, reliable and reproducible way to generate custom distribution images. Additionally, choosing a build system gives you complete control of the software and you can configure it to do anything you wish. It enables the developer to be more innovative and bring about a desired change that is not otherwise so easy to do with other approaches.
Some build systems are easier to use and are purposed differently. For example, Buildroot is primarily focused on building root filesystem images and it is relatively easier and quicker to install, configure and generate target images. Comparably, the Yocto Project is a bit more complex because it can completely create custom Linux distribution by creating each component (toolchain, bootloader, kernel, root filesystem) as a binary package and then combined together to make the filesystem image. With Yocto, you can install a package manager in the root filesystem image to enable package updates at runtime.
If you are using Yocto check out Mender Hub tutorials on related topics on Yocto.
Learn more in this tutorial on how to prepare the Yocto Project environment from scratch.