Sometimes we have many vendors participating in a configuration change or even creating various templates from scratch. We have vendors such as Arista, Cisco (IOS, NXOS), and Juniper that participate in network design in different layers. While dealing with situations such as this we need to be clear which layer each of the vendors is working on and create dynamic templates for each type of vendor involved.
Taking a scenario in which we know the hardware platform and the role of the device (such as access layer, core layer, or top of rack (TOR) layer; we can generate configs quickly with very basic parameters.
If a device is in production, we can use the SNMP protocol to fetch information for that device and create dynamic values based upon the return type of devices.