At Microsoft, employees choose mobile apps from a diverse library to help complete work activities, such as reporting vacation time, finding an available meeting room, or commending a colleague. While apps make it easy to complete tasks, they don’t always have a consistent UI design. Developers and designers use PowerApps to create a consistent user interface for some common activities at Microsoft and unify the experience for employees through a company dashboard.


Microsoft Core Services Engineering and Operations uses PowerApps to improve the employee experience during common activities. For example, Thrive, our company dashboard app, uses PowerApps to unify the corporate app experience with a consistent user interface (UI) across traditional lines of business. For the engineers who are building this experience, PowerApps offers easy-to-design app components and a single point of configuration and control. PowerApps makes it easy to incorporate our existing apps with the Thrive experience to build new productivity solutions for employees.

Understanding mobile apps at Microsoft

At Microsoft, employees can access apps that allow them to do hundreds of tasks. From tracking and reporting vacation hours, to checking meeting room availability, to acknowledging the outstanding effort of a colleague, our app ecosystem is broad and diverse.

Over the past few years, cloud adoption has been the catalyst for an explosion of different web and mobile apps that enable our employees to work wherever they are. As this app ecosystem has grown, so has the number of developers who are creating apps and business groups that champion app usage. The result has been poor discoverability (particularly from a mobile device) and inconsistent user experiences, which has contributed to low adoption of these apps.

We’ve made plans to offer a better web and mobile app experience for our employees. As part of this, we have some important goals to increase employee engagement and productivity. These goals include:

  • Putting users at the center of the experience and erasing traditional boundaries around how we use apps.
  • Providing a consistent UI that integrates data and navigation across apps.
  • Using existing technology to accelerate the development progress.
  • Delighting users with apps that anticipate their needs and help them reach their goals.

Choosing PowerApps

We selected PowerApps as the target platform for our app unification project. PowerApps gives us the flexibility to merge apps into a single experience, offer a user-friendly and attractive UI, and integrate common cloud and mobility data sources.

PowerApps is a collection of software services that offers a more direct, simple way to develop and integrate apps. It connects to existing cloud services and data sources and helps to quickly build apps to meet specific needs. PowerApps also offers enterprise-grade capabilities combined with easy-to-use authoring. PowerApps consists of four major components:

  • This is the portal where you manage and share the apps you build.
  • PowerApps Studio. You use PowerApps Studio to build powerful apps with easy-to-use visual tools.
  • PowerApps Mobile. Apps developed in PowerApps run on mobile devices using PowerApps Mobile. Use PowerApps Mobile to run apps on Windows, iOS, and Android devices.
  • PowerApps admin center. Use to administer PowerApps environments and other components.

Enterprise design and implementation

Our design and implementation process centers on users. We look at metrics from our internal portals and Helpdesk tickets to learn what users search for and the problems they encounter with our apps. When we find a candidate for the mobile experience, we identify any required design changes as well as application programming interfaces (APIs) that might be needed. We focus on keeping our APIs as simple and reusable as possible.

Thrive architecture

We deliver Thrive as a collection of PowerApps, with Thrive Home as the hero app for easier discoverability. Using Logic Apps and event-based processes, we use an internal service built on Azure called Enterprise Card Services (ECS), to create notifications and information streams for our various groups and solutions:

  • Information cards display content and may link to web pages or other apps.
  • Alert cards are content cards that stay at the top of the stream, which we use for important notifications, like a building closure or an important event at Microsoft.
  • Task cards appear in the stream but also show up on the Tasks tab and are dismissed only after the task is finished.

The Thrive Home app also has an Apps tab, populated by all the apps that are available and connected through APIs. Our internal business PowerApps act similarly upon launch, except that they call specific business APIs in addition to the platform APIs. Action within an app may revoke a task card or generate new cards, depending on transactional events.

Security and privacy

Each layer of Thrive was built with security in mind. Our access and authentication methods begin immediately after installation of the Thrive app and continue throughout the Thrive experience. With Thrive, security was a primary consideration throughout design and implementation—not an afterthought. We use Azure AD and its features such as multi-factor authentication and touch ID. Single sign-on is the default authentication method, so users have the simplest authentication experience possible while maintaining high standards for user and data protection.

Current state

Our employees use Thrive to read company news, get alerts about company events and priority items, or subscribe to content channels. Thrive can notify people about key transactions they may be unaware of, such as time off that they might be forfeiting, approving time away, viewing holidays around the world, and adding holidays to their calendar. Employees can also offer peer-to-peer kudos, manage their employment data, manage their profile, book time off and notify their team. Thrive is used for these and other tasks, with many more to come. Thrive Home ties employees into other productivity apps.

The Thrive experience is designed to be as seamless as possible for Microsoft employees. Although Thrive refers them to many apps, we try to limit the definition and identification of different apps that people see. Thrive is the UI, and the app provides the underlying functionality. To the employee, it still appears that they are in Thrive; they haven’t selected a different app or clicked on a different icon. They have simply searched for and found a task that they want to do and Thrive delivers the app they need. Figure 1 shows different views of the Thrive interface on a mobile device.

The Thrive app user experience The figure shows screenshots from the Thrive interface on a mobile device. Sample screens are shown for Time Away,  the Thrive dashboard,  and Shuttle booking. The figure also shows cards with relevant information being shared between the various Thrive screens.

Figure 1. The Thrive app user experience

Future state

Thrive will continue to be the home for Microsoft employees to do common tasks. We are also shifting more of our focus to expanding Thrive and investing in technologies that help us predict and learn the needs of our users. Our productivity goal with Thrive is to create a threaded experience that helps users achieve their goal, not just individual tasks.

Although we have first focused on the mobile experience, we will bring this same unified, enhanced approach to desktop experiences with virtual assistants and bots where they are relevant. The key to Thrive will continue to be putting employees at the center of the experience and using current and emerging technologies to make people more productive.

Benefits of using PowerApps

Although Thrive is an ongoing project, we have already recognized several benefits of using PowerApps:

  • Rich, visually compelling UIs. The Thrive interface is easy to use and designed for both form and function. Our UX designers can create the app shell without any development experience.
  • Rapid Enterprise Mobility development. We can create and deploy an app to our employees without having to go through a review and release exercise with mobile stores.
  • App segmentation. We can make several apps appear as one, thereby allowing individual teams to build and snap apps into our ecosystem. The solution can grow without redeploying the entire experience each time.
  • App sharing is easy. PowerApps integrates with Azure Active Directory to quickly share apps with security groups.
  • We can redefine the patchwork quilt of legacy applications. If our legacy apps have a service tier, we can quickly build a series of PowerApps with a common UX, creating a more seamless and connected experience for employees.
  • We can build it once for multiple platforms. We can create one app and use it on iOS, Windows Phone, Android, and the desktop browser.

For more information

Core Services Engineering and Operations

Increasing employee productivity with Microsoft Search in Bing and PowerApps

Microsoft HR uses the Power Platform to transform employee experiences

Redesigning business applications at Microsoft using PowerApps

Performance considerations with PowerApps


© 2018 Microsoft Corporation. This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY. The names of actual companies and products mentioned herein may be the trademarks of their respective owners.

You might also be interested in

Windows 10 improves security and data protection
June 18, 2019

Windows 10 improves security and data protection

Learn more
Speaking of security: Device health
June 03, 2019

Speaking of security: Device health

Watch webinar
Microsoft's CISO series: Eliminating passwords
May 14, 2019

Microsoft's CISO series: Eliminating passwords

Watch video
Speaking of security: Information protection
May 08, 2019

Speaking of security: Information protection

Watch webinar