Traditionally, embedded software is often written for a chosen application-specific hardware platform because of the limited computing capabilities and memory availability. Hence embedded software implementation is mainly dependent on the target hardware platform. The speed of embedded software development is slower than other development domains like web and mobile applications. Though the embedded platforms have become more powerful, the development process has not changed much from the past. In this era of digitization and rapid change where IoT is a critical component, improving the pace of development will be greatly beneficial to reduce the time to market.