Od marca 1981 był członkiem redakcji Tygodnika Solidarność, w dziale informacji związkowej. Został internowany 13 grudnia 1981, przebywał w Białołęce, Załężu i Uhercach, zwolniono go 4 grudnia 1982. Po uwolnieniu został członkiem redakcji miesięcznika „Więź”. W październiku 1983 wyjechał do RFN na stypendium dziennikarskie KAAD (), w 1984 został pracownikiem Radia Wolna Europa, najpierw w Monachium, następnie w Nowym Jorku i pracował tam do 1993. Od maja 1989 uczestniczył w pracach Komitetu Wyborczego NSZZ „Solidarność” w Nowym Jorku, wspierającego kampanię wyborczą kandydatów Komitetu Obywatelskiego „Solidarność” w wyborach do Sejmu.
Od 1989 W 1996 powrócił do Polski. Pracował m.in. w „Super Expressie” (1996), od roku 1996 był szefem ds. promocji i informacji Festiwalu Kraków 2000, w latach 2002–2007 w „Rzeczpospolitej”. W latach 2004–2006 roku był dyrektorem Warszawskiego Festiwalu Poezji im. Zbigniewa Herberta. Od 2004 roku organizuje Warsztaty Herbertowskie. W roku 2007 został koordynatorem Roku Josepha Conrada-Korzeniowskiego z okazji 150 rocznicy urodzin pisarza. Od 2007 w TVP Historia prowadził cotygodniowy program „Siła bezsilnych”. W grudniu 2007 został dyrektorem Departamentu Komunikacji Społecznej Narodowego Banku Polskiego, następnie był dyrektorem Departamentu Edukacji i Wydawnictw NBP (do 2010).