Нефтегаз, СКАДА
Разработка множества продуктов: телеметрия, обработка сигналов, SCADA-интерфейсы, аналитика, маршрутизация уведомлений. Переход на OPCUA протокол и gRPC для микросервисов.
Результат:Нагруженная система с аптаймом 100%
Направление / golang
Сервисы, которые держат нагрузку на скромном железе: предсказуемая память, честные таймауты, аккуратное завершение работы.
Так выглядит мой код
func main() {
ctx, stop := signal.NotifyContext(
context.Background(),
syscall.SIGINT,
syscall.SIGTERM,
)
defer stop()
var wg sync.WaitGroup
wg.Add(1)
go func() {
defer wg.Done()
ticker := time.NewTicker(time.Second)
defer ticker.Stop()
for {
select {
case <-ctx.Done():
log.Println("worker stopped")
return
case <-ticker.C:
log.Println("processing...")
}
}
}()
<-ctx.Done()
log.Println("shutdown signal received")
shutdownCtx, cancel := context.WithTimeout(
context.Background(),
5*time.Second,
)
defer cancel()
done := make(chan struct{})
go func() {
wg.Wait()
close(done)
}()
select {
case <-done:
log.Println("graceful shutdown completed")
case <-shutdownCtx.Done():
log.Println("shutdown timeout exceeded")
}
}Направление
Горутины, пулы воркеров, контроль бэкпрешера и аккуратные таймауты.
gRPC-контракты, graceful shutdown, health-чеки, конфиг через env.
PostgreSQL, MongoDB, Redis, ClickHouse — схемы, индексы, миграции.
Утилиты миграций, экспортёры метрик, кроны и одинокие бинарники без зависимостей.
Нефтегаз, СКАДА
Разработка множества продуктов: телеметрия, обработка сигналов, SCADA-интерфейсы, аналитика, маршрутизация уведомлений. Переход на OPCUA протокол и gRPC для микросервисов.
Результат:Нагруженная система с аптаймом 100%
Расскажите про нагрузку и данные — предложу архитектуру.
О себе
Могу подтвердить опыт, начинал на втором курсе в Нефтегазе, работал по системе "Waterfall", совмещал работу и учёбу, все успевал.
Сейчас занимаюсь серверной частью: проектирую схему данных, пишу сервисы, настраиваю мониторинг и разбираюсь, почему в пятницу выросла очередь. Люблю задачи, где надо не только написать код, но и решить, каким он должен быть.
Принципы
Опыт
Компании и сайты, где я отвечал за серверную часть.
Backend Engineer
04Крупнейшая B2B-платформа коллтрекинга, маркетинговых технологий, более 30 микросервисов, 100+ тыс. запросов в минуту.
Что делал
Backend Engineer
03Нефтегаз: SCADA, телеметрия, обработка сигналов и событий.
Что делал
Backend Developer
02Маркетплейс для капперов: площадка продаж прогнозов на спортивные события.
Что делал
Fullstack-разработчик
01Нефтегаз: SCADA, телеметрия, обработка сигналов и событий.
Что делал
Сайты с которыми работал в штате и на фрилансе
MarTech
Борьба с ботами и фродом, добавление нового функционала, поддержка старого. Добавил множество интеграций в том числе Bitrix24, Yclients, Medme
Результат:Уменьшение оттока клиентов
Нефтегаз, СКАДА
Разработка множества продуктов: телеметрия, обработка сигналов, SCADA-интерфейсы, аналитика, маршрутизация уведомлений. Переход на OPCUA протокол и gRPC для микросервисов.
Результат:Нагруженная система с аптаймом 100%
Электронная система для участия в торгах
Редизайн и переход на новую API
Результат:Современный адаптивный дизайн
Маркетплейс спортивных прогнозов
Разработка мультирегиональной системы уведомлений для удержания клиента, интеграция ИИ для автоперевода прогнозов на разные языки.
Результат:Отток клиентов -50%