Jako nauczyciel akademicki związany z Uniwersytetem Zielonogórskim, na którym objął stanowisko profesora. Został kierownikiem Zakładu Polityki Regionalnej, a następnie kierownikiem Katedry Polityki Regionalnej w Instytucie Ekonomii i Finansów.

Od 1997 zatrudniony w administracji publicznej, początkowo w urzędzie wojewódzkim w Zielonej Górze, a od 1999 w urzędzie marszałkowskim województwa lubuskiego (pełniąc stanowiska podinspektora, inspektora, kierownika oddziału i zastępcy dyrektora departamentu). W 2007 objął stanowisko zastępcy burmistrza Żagania. W 2008 powrócił do urzędu marszałkowskiego jako dyrektor departamentu rozwoju regionalnego i planowania przestrzennego, a następnie jako dyrektor departamentu Lubuskiego Regionalnego Programu Operacyjnego. 2 marca 2010 powołany na podsekretarza stanu w Ministerstwie Rozwoju Regionalnego.

W wyborach samorządowych w 1998 bezskutecznie ubiegał się o mandat radnego Zielonej Góry z listy Unii Wolności. Został później członkiem Platformy Obywatelskiej. W wyborach w 2011 z ramienia tego ugrupowania został wybrany do Sejmu. Kandydując w okręgu lubuskim, otrzymał 6465 głosów. 21 października 2011, na swój wniosek, został odwołany ze stanowiska w rządzie. W Sejmie VII kadencji był wiceprzewodniczącym Zespołu Poselskiego ds.