Po ukończeniu studiów studiów prawniczych (1961) i uzyskaniu doktoratu w 1974 r. został adiunktem na Wydziale Prawa i Administracji UW. Pod koniec lat 70. (1977-79) był konsultantem ministra sprawiedliwości w zakresie prawa gospodarczego, a w latach 80. członkiem Rady Antymonopolowej przy Ministrze Finansów i członkiem prezydium i sekretarzem Rady Legislacyjnej (1984-87). Wykładał też na Podyplomowym Studium Administracji Wydziału Prawa i Administracji UW.
W 1994 r., jako sędzia NSA, został powołany na stanowisko podsekretarza stanu w Ministerstwie Sprawiedliwości; do 1997 r. odpowiadał za prace legislacyjne. Był członkiem Prezydium i sekretarzem Rady Legislacyjnej przy Prezesie Rady Ministrów. Od 2000 r. jest profesorem nadzwyczajnym w Wyższej Szkole Administracji Publicznej w Ostrołęce. W listopadzie 2001 r. został wybrany przez Sejm na sędziego TK.
Autor licznych publikacji naukowych i popularnonaukowych z zakresu prawa rolnego, cywilnego, administracyjnego, gospodarczego, ustroju wymiaru sprawiedliwości i teorii legislacji. Zastępca przewodniczącego kolegium redakcyjnego miesięcznika "Jurysta".