Cuenta con amplia experiencia en proyectos de investigación fundamental, investigación aplicada y consultoría en métodos formales e inteligencia artificial. Ha sido docente e investigador en áreas de computación, matemáticas y biología, que incluyen la creación de nuevos lenguajes de programación para misiones espaciales autónomas; técnicas algorítmicas, simbólicas y probabilísticas para analizar sistemas de misión crítica como protocolos de comunicación y navegadores seguros; algoritmos de optimización que usan machine learning sobre grafos de gran tamaño para analizar eficiencia y seguridad de blockchain, entre otros. Ha sido investigador principal y co-investigador en proyectos de gran escala financiados con fondos nacionales e internacionales, ha dirigido a estudiantes de pregrado, maestría y doctorado, y ha sido galardonado con reconocimientos internacionales como Amazon Research Awards.
Su producción académica ha estado orientada a la investigación en lógica de reescritura y, más ampliamente, en lógica computacional; a la especificación y verificación algorítmica, deductiva y probabilística de sistemas de software y hardware concurrentes; y a la predicción de propiedades en grafos usando inteligencia artificial. Es miembro del grupo de investigación Ambientes Visuales de Programación Aplicativa (AVISPA - MinCiencias A1) y es investigador Senior según clasificación de MinCiencias. Actualmente es el decano de la Facultad de Ingeniería y Ciencias.