There is a long history of applications of various Artificial Intelligence (AI) technologies in software engineering. From machine learning, evolutionary computing, to Natural Language Processing, AI has played an increasingly important role in making software engineering more predictable and automatable. This rising impact stems from increasingly powerful AI technologies, easy access to enormous computing power, and the availability of large amounts of software data in readily available development repositories. This talk will provide a reflection over 25 years of experience in applying and tailoring AI techniques to address software engineering problems at scale. I will try to abstract away and identify patterns of hard software engineering problems requiring solutions based on AI. Challenges will be characterized and interdisciplinary research avenues will be outlined. Lionel C. Briand is professor of software engineering and has shared appointments between (1) The University of Ottawa, Canada and (2) The SnT centre for Security, Reliability, and Trust, University of Luxembourg. One of the founders of the ICST conferencea ge was also EiC of Empirical Software Engineering (Springer) for 13 years. Lionel was elevated to the grade of IEEE Fellow in 2010 for his work on testing object-oriented systems. He received an ERC Advanced grant in 2016- on the topic of modelling and testing cyber-physical systems- which is the most prestigious individual research award in the European Union. Most recently, he was awarded a Canada Research Chair (Tier 1) on “Intelligent Software Dependability and Compliance”. His research interests include: software testing and verification, model-driven software development, applications of AI in software engineering, and empirical software engineering. For more, see his website.