Situation: I was tasked with building a prototype of our DIGITS app on the Hololens 2, a mixed-reality device. This was new territory for us, and I was excited to explore how our telephony experience could translate to AR.
Task: My goal was to create a working demo that integrated our telephony SDK into the Hololens experience using Unity and C#. I had about two weeks to get something functional enough to evaluate viability.
Action: I dove deep into learning Unity3D and Hololens development from scratch, and spent considerable time trying to bridge our SDK — which was built in C++/C# — with the Hololens platform. Despite my efforts, I couldn’t get reliable communication between Unity and our SDK.
Rather than give up, I pivoted and simplified the approach by porting our existing Windows desktop app into the Hololens environment. This at least allowed for basic app functionality and UI testing. Through further research and prototyping, I discovered a key platform limitation: Hololens did not support background notifications, meaning incoming calls couldn’t be surfaced while another app was in use.
Result: I documented everything, demoed the prototype to my manager, and recommended that we pause development until the Hololens platform evolved. While I didn’t deliver the full solution I set out to build, I learned a ton, clearly communicated risks, and saved the team from investing more time into a blocked path. I see this as a failure in the original goal, but a success in terms of ownership, problem-solving, and protecting resources.