Od 1989 do 2011 był dziennikarzem „Gazety Wyborczej”, w której pełnił przez wiele lat funkcję szefa działu zagranicznego. Były korespondent w Moskwie, Brukseli i Waszyngtonie. Od marca 2016 był dyrektorem programowym Onet.pl a w grudniu 2018 został redaktorem naczelnym Onet.pl w Ringier Axel Springer Polska.