小学时就读彩虹邨中华基督教会基华小学（与教育局局长杨润雄为同班同学），中学就读九龙华仁书院（与香港浸会大学计算机科学系教授吴其彦为同班同学），曾是中级组与高级组合唱团的成员，又与同学组成一队民歌组合叫「Stereoisomers」。而预科期间则曾任校内学生会会长。他后来入读香港大学法律系，毕业后成为执业律师。2012年香港立法会选举，他代表民主党参加2012年香港立法会选举新增的区议会 (第二) 功能界别，以31.6万票成为「票王」。在2016年香港立法会选举获24.4万票，同属民主党的邝俊宇则以49.