Na przełomie 2008 i 2009 r. podzielił II m. (za Grzegorzem Gajewskim, wspólnie z m.in. Dariuszem Świerczem, Maciejem Nurkiewiczem i Wadimem Szyszkinem) w rozegranym w Krakowie turnieju Cracovia 2008/09. W październiku 2009 r. na mistrzostwach świata w Rio de Janeiro, razem z Piotrem Murdzią oraz Piotrem Górskim, wywalczył drużynowo złoty medal w rozwiązywaniu zadań szachowych. W listopadzie 2009 r. zdobył brązowy medal mistrzostw świata juniorów do 18 lat, rozegranych w Antalyi.
W 2010 r. zdobył tytuł drużynowego mistrza świata w rozwiązywaniu zadań, podzielił również I m. (wspólnie ze Zbigniewem Strzemieckim) w memoriale Akiby Rubinsteina w Polanicy-Zdroju. W 2011 r. zdobył w Jesi tytuł mistrza świata w solvingu. Otrzymał po tym wydarzeniu tytuł arcymistrza w rozwiązywaniu zadań szachowych.
W 2012 r. podzielił II m. (za Kamilem Dragunem, wspólnie z Dawidem Arutinianem) we Wrocławiu, natomiast w Pardubicach wypełnił trzecią normę arcymistrzowską, dzięki czemu został pierwszym w historii polskim szachistą, który posiadał dwa tytuły arcymistrza. W 2012 r. zajął również II m. (za Ołehem Romanyszynem) w memoriale Mieczysława Najdorfa w Warszawie, a w Kobe zdobył brązowy medal mistrzostw świata w rozwiązywaniu zadań.