Есть несколько вариантов.
acmp.ru
Там обычные задачи на алгоритмы, как правило.
Ещё есть вариант автоматизировать свои повседневные действия. Например, из последнего могу вспомнить, что сделал скрипт для архивации бекапов сейвов одной игры.
stepik.org - очень много курсов по программирования с задачами с автоматической проверкой. Бесплатно.
javarush.ru - Очень хороший курс по Java, но платно.
Можно изучать программирование в разрезе практики, например: написать бота для какого-нибудь мессенджера или создать собственный веб-сервис на каком-нибудь фреймворке.
ответ совпадает с моим мнением