在江西省政法系统任职，1993年3月，任江西省高级人民法院副院长。1997年2月，任中共江西省纪委副书记。1998年10月，进入最高人民法院，任副院长、二级大法官2006年11月，任中共上海市委常委、兼市纪委书记，奉命具体负责上海社保基金挪用案、陈良宇贪腐案的调查审理工作。2008年4月，再次回到最高人民法院，出任常务副院长、党组副书记（正部长级），晋升一级大法官。2018年1月，当选第十三届全国政协委员。3月16日，任全国政协社会和法制委员会主任。6月22日，被免去最高人民法院副院长职务。