В 2004 году на турнире в Париже Штепанек впервые дошёл до своего первого финала турнира ATP из серии «Мастерс», однако в итоге уступил россиянину Марату Сафину. Следующие два финала также не принесли чеху удачи. Наконец, в 2006 году на турнире в Роттердаме, победив Кристофа Рошю со счётом 6-0, 6-3, он завоевал свой первый трофей ATP. В этом же году Штепанек дошёл до четвертьфинала на Уимблдоне, уступив в упорной борьбе шведу Йонасу Бьоркману. Этот результат стал его лучшим достижением на турнирах Большого шлема.
Затем у Штепанека последовал спад, но к началу сезона-2007 он смог набрать форму и выиграть свой второй титул в Лос-Анджелесе, обыграв в финале Джеймса Блейка.
Принимал участие в Олимпийских играх 2008, однако выбыл из них в первом раунде.