Redagował „Azymut” (społeczny dodatek do „Gościa Niedzielnego”). Członek Klubu Jagiellońskiego, od stycznia 1999 do stycznia 2001 jego wiceprezes. W latach 2010–2013 należał do Platformy Obywatelskiej. Był wiceprezesem Instytutu Tertio Millennio oraz dyrektorem Centrum Myśli Jana Pawła II.
Od 2011 do 2013 był dyrektorem gabinetu politycznego ministra sprawiedliwości Jarosława Gowina. W 2013 został koordynatorem ogólnopolskim powołanego przez byłego ministra ruchu „Godzina dla Polski”. 14 grudnia tego samego roku objął funkcję wiceprezesa powstałej na bazie GdP partii Polska Razem. Pełnił ją przez około rok. 19 listopada 2015 objął stanowisko podsekretarza stanu w Ministerstwie Nauki i Szkolnictwa Wyższego. Wchodził także w skład rad Narodowego Centrum Badań i Rozwoju oraz Fundacji Rozwoju Systemu Edukacji. Wchodził w skład zarządu powstałej w listopadzie 2017 z przekształcenia Polski Razem partii Porozumienie. W lipcu 2018 przeszedł z funkcji podsekretarza stanu na stanowisko sekretarza stanu w MNiSW. Zakończył jej pełnienie 1 kwietnia 2019, kiedy został powołany na prezesa Sieci Badawczej Łukasiewicz. Zrezygnował z tej funkcji w lutym 2023.