From lights and switches to people and cars, SmartThings aims at communicating with everyday devices through a smartphone. With the availability of the SmartThings API, developers can add similar functionality with third party applications to create a more automated world. Although SmartThings strongly believes in the power of smart and mobile devices, it believes the inherent intelligence of smart devices will remain limited. Accordingly, SmartThings exists to transfer the “intelligence” of such devices to the application layer, and away from the physical device itself.
Uber recently abandoned its monolithic codebase in favour of a modular, flexible and scalable microservices architecture. As this ecosystem of Uber microservices has grown, Emily Reinhold explains some of the design and architectural decisions Uber engineers made, and what they mean to the company.