Possui graduação em Processamento de Dados pela Universidade Federal da Bahia (1990), mestrado em Ciências da Computação pela Universidade Federal de Pernambuco (1995) e doutorado em Ciências da Computação pela Universidade Federal de Pernambuco (2005). Atualmente é professor adjunto I da Universidade Federal da Bahia. Tem experiência na área de Ciência da Computação, com ênfase em Sistemas Distribuídos, atuando principalmente nos seguintes temas: tolerância a falhas, qos, sistemas multiagentes, sistemas distribuídos, detectores de falhas, consenso e comunicação autonômica.