He served with distinction in the Sikh Wars and during the Indian Mutiny, but made his reputation as the engineer chiefly responsible for the programme of public works in the Punjab from 1849 to 1856. He led an expedition to Ethiopia in which he captured Magdala (1868) and compelled the release of British captives. In 1870 he became commander-in-chief in India.