His work applies machine learning techniques to problems in intelligent infrastructure systems and smart health applications. He has examined how learning techniques can be used to identify human activities using mobile phones, how to create models that can run on resource-constrained devices, and has created tools that use machine learning to assist in the interaction between humans and cyber-physical systems. His work has also examines how to build smarter systems in the built environment. The goal of his work is to make sensor-based systems smarter, trustworthy, and easier to use. Before joining Rutgers he was a Research Staff Member at IBM Research. He attained his M.S. and Ph.D. in Computer Science from UC Berkeley (2010, 2013), and B.S. in Computer Science from the Massachusetts Institute of Technology (2003).