Nauczyciel akademicki w Krajowej Szkole Sądownictwa i Prokuratury. W ramach działalności szkoleniowej prowadzi wykłady i zajęcia praktyczne dla sędziów, prokuratorów, aplikantów aplikacji sędziowskiej i prokuratorskiej, korporacji zawodowych (adwokaci, radcowie prawni, notariusze, komornicy i aplikanci komorniczy), aplikantów aplikacji legislacyjnej oraz funkcjonariuszy służb mundurowych. Jest członkiem komisji egzaminacyjnej do spraw aplikacji adwokackiej.
Z dniem 10 lipca 2019 został powołany w skład Rady Legislacyjnej XIII kadencji przy Prezesie Rady Ministrów.
Jest członkiem licznych towarzystw naukowych, m.in. Polskiego Towarzystwa Penitencjarnego, Polskiego Towarzystwa Badań Poligraficznych, Towarzystwa Naukowego Prawa Karnego.
22 marca 2018 z rekomendacji partii Prawo i Sprawiedliwość na miejsce zwolnione przez Jarosława Wyrembaka został wybrany sędzią Trybunału Stanu. W dniu 21 listopada 2019 r. został ponownie wybrany w skład Trybunału Stanu, na kadencję 2019–2023. 20 grudnia 2019 r. Marszałek Sejmu RP wręczyła prof.