Before my PhD, I worked one year at LASMEA, France, as a research engineer. I had the opportunity to work with Dr Maxime Lhuillier on implementing efficient global/local/generic bundle adjustment. I found what I learnt at LASMEA invaluable.
And before working at LASMEA, I did my MSc in Artificial Intelligence at City University, London. My MSc project's adviser was Dr Artur d'Avila Garcez. I did my BSc in Computer Engineering at Azad University, Iran.