Karim Aliمشاهده پروفایل
دانشیار
Karim Ali is an Associate Professor of Computer Science at New York University Abu Dhabi (NYUAD), where he leads research in programming languages, static analysis, security, and compilers. He is affiliated with the Department of Computer Science within the College of Arts and Science. Prior to joining NYUAD, he served as an Associate Professor at the University of Alberta. His academic training includes a BSc from The American University in Cairo, and MMath and PhD degrees from the University of Waterloo, completed in 2014. BSc: The American University in Cairo MMath: University of Waterloo PhD: University of Waterloo (2014) His research focuses on making static analysis tools more practical by enhancing their scalability, precision, and usability. He investigates program analysis techniques applicable to real-world software, with applications in security, just-in-time compilation, and mobile app development. His work spans theoretical foundations and tool development, including the SWAN framework for Swift and contributions to secure cryptographic API usage through CogniCrypt. The recent publications reflect a strong trend in developer-centric static analysis, secure coding, energy efficiency in mobile apps, and compiler optimization. His work combines empirical studies with tool-building, emphasizing usability and integration into developer workflows. Scientific Awards: Dahl-Naygaard Junior Prize (2021) ACM SIGSOFT Distinguished Paper Award ACM SIGPLAN Distinguished Paper Award Distinguished Artifact Award, ECOOP 2014 Karim Ali has mentored numerous students and collaborated extensively with researchers worldwide. His lab has contributed tools adopted by major static analysis frameworks like Soot, WALA, and DOOP. He has secured research recognition through awards and industrial impact, including helping Symantec fix a security vulnerability. He teaches core courses such as Computer Systems Organization and supervises capstone projects, guiding students in original research. His lab conducts research on programming languages and static analysis, with projects including SWAN for Swift analysis, usability studies of static analysis tools, and development of precise pointer analysis techniques. The team works on both academic research and practical tooling for developers.









