W latach 1985–1999 był redaktorem naczelnym w czasopiśmie „Czas Kultury”. Od 1990 do 1998 był członkiem zarządu spółki wydawniczej „Obserwator”. W latach 1991–1992 był redaktorem „Tygodnika Literackiego”. W latach 1994–1995 redaktorem naczelnym tygodnika kulturalnego Pegaz w Telewizji Publicznej, a od 1995 do 1996 roku dyrektorem Telewizji Edukacyjnej Programu 1.
W latach 1995–1997 by przewodniczącym zespołu doradczego Ministerstwa Edukacji Narodowej i Telewizji Edukacyjnej ds. tworzenia i rozpowszechniania programów edukacyjnych dla szkół. W latach 1997–1998 współtworzył cykl dokumentalny pt. Dzieje kultury polskiej.
W latach 1997–1998 zasiadał w radzie nadzorczej Przedsiębiorstwa Produkcyjno-Handlowego AGROPOL w Sokołowie. W latach 1999–2001 pełnił funkcję prezesa zarządu Wydawnictw Szkolnych i Pedagogicznych. Następnie pracował w wydawnictwie Prószyński i S-ka: jako dyrektor (2002), wiceprezes (2003–2005) i prezes zarządu (2005).
Zasiadał m.in. w radzie Fundacji Pogranicze, radzie programowej Radia Merkury Poznań i radzie Fundacji 750-lecia Lokacji Miasta Poznania. Jest autorem i współautorem publikacji z zakresu historii kultury i literatury polskiej, programów telewizyjnych oraz podręczników do nauczania języka polskiego.
Działalność opozycyjna i polityczna
Na początku lat 80. Założył szkolne koło NSZZ „Solidarność” w liceum plastycznym w Poznaniu. Współtworzył wielkopolską Komisję Koordynacyjną NSZZ „Solidarność” Pracowników Oświaty i Wychowania. Redagował pisma drugiego obiegu, m.in. „Czas Kultury”.
W latach 1991–1994 był członkiem zarządu Kongresu Liberalno-Demokratycznego, a od 1994 do 1997 członkiem Rady Krajowej Unii Wolności, a następnie Stronnictwa Konserwatywno-Ludowego. Od 2001 roku współpracował z Platformą Obywatelską. W 2004 roku wstąpił do partii.
W wyborach parlamentarnych w 2005 roku z powodzeniem kandydował do Sejmu V kadencji z listy PO.
W 2007 roku uzyskał poselską reelekcję. 16 listopada 2007 został powołany na stanowisko sekretarza stanu w Kancelarii Prezesa Rady Ministrów w pierwszym rządzie Donalda Tuska. Funkcję pełnił do 7 października 2009. Dwa tygodnie później objął stanowisko wiceprzewodniczącego Klubu Parlamentarnego PO. 22 maja 2010 został wybrany na przewodniczącego PO w województwie wielkopolskim.
W wyborach w 2011 roku po raz trzeci dostał się do Sejmu z listy PO. 8 listopada 2011 został przewodniczącym KP PO. Funkcję pełnił do 12 listopada 2015, czyli do pierwszego posiedzenia Sejmu VIII kadencji.
W 2015 roku był jednym z założycieli komitetu wyborczego Bronisława Komorowskiego w wyborach prezydenckich.
W wyborach parlamentarnych w 2015 roku z powodzeniem kandydował do Sejmu z listy PO. W Sejmie VIII kadencji przewodniczy Komisji Edukacji, Nauki i Młodzieży, jest członkiem Komisji do Spraw Unii Europejskiej.