Es Doctor por la Universidad Nacional Autónoma de México luego de haber cursado el Posgrado en Ciencia e Ingeniería de la Computación.
Es Profesor Titular A de Tiempo Completo del Departamento de Matemáticas con 26 años de antigüedad. En el Laboratorio Ciencias de la Computación, su principal línea de investigación es Cómputo Evolutivo y algoritmos genéticos. En la docencia le interesa la programación, criptografía, cómputo evolutivo y arquitectura de computadoras.
Imparte los cursos de Introducción a Ciencias de la Computación, Organización y Arquitectura de Computadoras, Cómputo Evolutivo, Teoría de Códigos, Criptografía y Seguridad, Modelado y Programación y Estructuras de Datos.
Recibió el premio Distinción Universidad Nacional para Jóvenes Académicos en el área de Docencia en Ciencias Exactas en 2007, y es miembro de la Sociedad Matemática Mexicana y la Sociedad Mexicana de Inteligencia Artificial.