Родился 16 марта 1961 года в Ленинграде. С четвёртого класса увлёкся историей; закончил Исторический факультет Ленинградского педагогического института имени А. И. Герцена. Около года работал секретарём Комсомольской организации Строительного ПТУ № 96, ещё около трёх месяцев — в обкоме КПСС, после чего попал в Центральный военно-морской музей, где проработал экскурсоводом восемь лет. Изучал военную историю начала XX века и историю флота. Тогда же написал первые рассказы — о подводных лодках «Пантера» — опубликованные в журнале «Костёр». В 1989 году был принят в Союз писателей. В течение непродолжительного времени играл в рок-группе «Джунгли». Позже устроился в Нахимовское училище преподавателем истории; проработал на этой должности восемнадцать лет. По собственному признанию, является абсолютно аполитичным человеком. Не считает писательство своей основной профессией (считает таковой преподавание истории).
Женат, имеет сына. Вместе с женой живёт в Петергофе.