My research interests span programming languages, software engineering, and security/privacy. We build foundational algorithms to analyze, test, optimize, and harden programs for better performance, reliability, and security/privacy protection. In particular, we (1) utilize and adapt traditional modeling/testing/verification techniques to new complex software systems, e.g., ubiquitous computing systems, (2) take advantage of methods from other areas, e.g., AI, to facilitate the automation of modeling/testing/verification of software, and (3) design and implement rigorous statistical privacy mechanisms for real-world user data analytics.