Od 2003 do 2007 był redaktorem naczelnym periodyku „NIT – Nauka, Innowacje, Technika”.

Od 1992 do 2002 był pracownikiem Instytutu Lotnictwa. Następnie przeszedł do Państwowej Komisji Badania Wypadków Lotniczych, w czerwcu 2003 objął funkcję jej wiceprzewodniczącego ds. technicznych. Brał udział w badaniach około 120 wypadków i incydentów lotniczych. Udzielał się także jako biegły m.in. w postępowaniu dotyczącym katastrofy lotniczej w Mirosławcu. Od maja 2010 do lipca 2011 wchodził w skład Komisji Badania Wypadków Lotniczych Lotnictwa Państwowego, utworzonej do zbadania katastrofy Tu-154 w Smoleńsku z 10 kwietnia 2010. Pełnił w jej ramach funkcję zastępcy przewodniczącego podkomisji lotniczej.

W lutym 2012 został powołany na przewodniczącego PKBWL, zastępując Edmunda Klicha. Zajmował to stanowisko do września 2016. Jego odwołanie umożliwiła przegłosowana przez Prawo i Sprawiedliwość zmiana przepisów dotyczących kształtowania składu komisji.

W 2018 z listy Koalicji Obywatelskiej uzyskał mandat radnego sejmiku mazowieckiego VI kadencji. Został także zastępcą burmistrza warszawskiej dzielnicy Bemowo. W wyborach w 2019 uzyskał mandat posła na Sejm IX kadencji, kandydując z ramienia KO w okręgu podwarszawskim i otrzymując 15 804 głosy.