«Из шляхетства Черниговской губернии». В службу вступил 25 апреля 1775 рядовым в Ахтырский гусарский полк. В русско-турецкой войне 1787-1791 гг. был при штурме Очакова и Килии. Сражался с поляками в 1792-1794 гг. и за отличие произведен в ротмистры.
В отставку вышел 3 октября 1800 в чине подполковника. Из отставки в июле 1801 г. принят в тот же полк, а 28 июля 1803 переведён в Елисаветградский гусарский полк тем же чином. 12 декабря 1808 произведён в полковники. Командиром Елисаветградского гусарского полка назначен 8 марта 1810.
В начале 1812 г. полк, командиром которого был Шостаков, числился в 8-й бригаде 2-й кавалерийской дивизии и был придан ко 2-му пехотному корпусу 1-й Западной армии. Был в боях с неприятелем при Кочергишках, Островне, Витебске. В Бородинском сражении, находясь в составе 1-го резервного кавалерийского корпуса, отличился в столкновениях с французской кавалерией. При изгнании неприятеля из России был в боях под Вязьмой, Дорогобужем, Красным.
В кампании 1813 г. участвовал в делах с французами под Торгау и Лейпцигом и 15 сентября произведён в генерал-майоры. 14 марта 1814 года награждён орденом Св.Георгия 3-го кл.
Командиром 2-й бригады 2-й гусарской дивизии назначен в сентябре 1814 г., до этого с 6 мая 1814 был шефом Елисаветградского гусарского полка. В отставку уволен 20 марта 1818 с мундиром и пенсией полного жалования. Затем вновь вернулся на службу и окончательно вышел в отставку 30 декабря 1833.