Русский корабельный инженер и механик. Окончил Кронштадтское морское инженерное училище (1891), Морскую академию в Петербурге (1896). С 1904 — преподаватель Петербургского политехнического института, с 1910 — профессор Морской академии.
Разработал метод нахождения приближенного решения операторного уравнения в виде линейной комбинации элементов заданной линейно независимой системы, который применил к решению ряда задач теории упругости. Метод был усовершенствован Б. Г. Галеркиным (метод Бубнова — Галеркина). Исследовал динамику спуска судна со стапеля на воду. Развил (1902) теорию расчета пластин, работающих в системе корпуса корабля. Дал математическое обоснование местной и общей прочности судов. Предложил классификацию расчетных нагрузок, действующих на корабль. Основоположник строительной механики корабля. Разрабатывал приближенный метод интегрирования дифференциальных уравнений теории упругости.