Приложение для лабораторного прибора
Архитектура лабораторного приложения и техническое лидерство
Спроектировал приложение для лабораторного прибора с нуля и руководил командой из трёх разработчиков: требования, архитектура, интеграция с оборудованием и аналитическая визуализация.
Задача
Нужно создать desktop-приложение для лабораторного прибора: от управления измерениями до локального хранения и аналитики.
Моя ответственность
Тимлид: встречи с заказчиком, постановка задач, code review и планирование релизов. Лично реализовал взаимодействие с прибором, математическую обработку, графики и тепловые карты.
Результат
Спроектирована архитектура и реализованы управление прибором и аналитика. Подходы embedded database и DI/ORM переняты другими командами.
От измерения к аналитике
Приложение поставлялось вместе с лабораторным прибором. Исследователь задавал параметры образца, запускал получение данных и анализировал рассчитанную статистику физических характеристик.
Архитектура с нуля
Выбрал SQLite вместо применявшейся ранее серверной NoSQL-базы: embedded-хранение упрощало поставку вместе с приложением, а реляционная модель соответствовала структуре данных.
Spring Boot, Spring Data JPA и Hibernate использовал для связывания компонентов и работы с локальной БД. DI помог структурировать JavaFX-приложение, ORM — работу с данными.
Команда и личная ответственность
В команде было три Java desktop-разработчика; каждый участвовал в интерфейсе и прикладной логике.
- Вёл встречи с заказчиком, выявлял требования и переводил их в задачи.
- Проектировал архитектуру, координировал работу, проводил code review и планировал релизы.
- Лично реализовал полный контур взаимодействия с прибором, математическую обработку и аналитическую визуализацию.
Передача опыта
Через консультации и внутренние встречи передал другим командам опыт embedded database и DI/ORM. Они стали применять эти подходы в своих desktop-проектах; последующие реализации и доработки принадлежат соответствующим командам.
Результат кейса — подтверждённая техническая ответственность и повторное применение архитектурных подходов. Численная метрика ускорения разработки не заявляется.