Как стать автором
Обновить

Комментарии 5

Если говорить о "распределенной" разработке, то она у нас уже существовала давно. Так получилось, что сложилось три команды разработки - в Питере, Москве и Екатеринбурге. И нормальным было когда аналитик, например, в Москве, а разработчик - в Екатеринбурге.

Поскольку все это происходило внутри изолированной от внешнего мира сети компании и наличии единой внутренней IP телефонной сети, поверх которой висел джаббер с видео и телефонными сервисами, то удаленное общение было делом привычным.

Ну а с марта 20-го все ушли на удаленку и фактически мало что поменялось. Ну с доступами стало сложнее т.к. часть ресурсов стала доступна через VPN, а часть осталась только из внутреннего периметра. Т.е. через VDI заходишь на виртуалку во внутренней сети и с нее уже куда нужно. Ну немного сложнее - раньше я мог гредлом с рабочего компа собрать сразу на тестовый сервер, сейчас приходится сначала с локального компа выгрузить в гит, потом на VDI загрузить из гита и только потом уже собирать.

С точки зрения коммуникаций мало что поменялось - тот же джаббер, работающий через VPN (звонок на внутренний номер приходит на джаббер на локалке), зум (или джаббер тот же) для командных встреч, рокетчат.

сейчас приходится сначала с локального компа выгрузить в гит, потом на VDI загрузить из гита и только потом уже собирать

А какой-нить VSCode в режиме работы на remote хосте не избавит от необходимости постоянно прокидывать изменения через git?
С начала пандемии так делаю если требуется использовать ресурсы не только домашне-рабочего компьютера. Разницы в отзывчивости с локальным проектом не замечал, хотя это может зависеть от его размера, конечно.

А какой-нить VSCode в режиме работы на remote хосте не избавит от необходимости постоянно прокидывать изменения через git?

Увы, но нет...

Разработки идет для платформы IBM i. Т.е. вся сборка происходит на сервере. А сервер доступен только из внутренней сети (снаружи ни через VPN, никак его не видно).

Для VSC есть хорошие плагины для разработки под эту систему (в т.ч. и пара наших), которые позволяют, в том числе, работать с объектами на сервере через SSH, но... Извне к серверу не подключиться (там есть отдельная партиция - небольшой виртуальный сервер, доступный через VPN, но на нем можно только проверить что поставка собирается или сделать предварительный тест чего-то небольшого, но для нормального тестирования он непригоден в силу неконсистентности данных).

Кроме того, сборка у нас автоматизирована гредлом Т.е. для сборки поставки на сервере достаточно запустить (в папке где лежит поставка)

gradle as400SyncAndDeploy

Это для ручной установки и первичного тестирования. Дальше поставку нужно "оформить" - собрать ее в юнит-хранилище поставок на сервере + "положить" в Artifactory откуда она может быть установлена в любой юнит компонентного тестирования (у каждой команды он свой) автоматически через портал DevOps. Это делается Jenkins'ом которые настроен на git (в зависимости от настроек там много вариантов - ручной запуск нужного таска с указанием тега на коммите который нужно собрать, автоматический запуск таска при появлении нового коммита в нужной ветке и т.п.) Но... И Jenkins и DevOps опять же доступны только из внутренней сети... Снаружи через VPN до них доступа нет (только до гита, артифактори, джайры, конфлюенса, почты рабочей и джаббера).

Снаружи во внутреннею сеть можно попасть только через виртуалку. Двумя путями - или по RDP через VPN заходим на виртуалку и с нее, еще через один RDP на свой рабочий комп (во внутренней сети). Или напрямую (без VPN) через VMWare Horizon Client заходим на свой персональный виртуальный десктоп и работаем там.

К сожалению, оба варианта немного лагают и лично мне так работать неудобно (хотя многие работают именно там - IDE - VSC или RDi запускают на удаленной машине).

Мне комфортнее запускать IDE на локальной машине, "собираемость" и "запускаемость" поставки проверять на той партиции сервера, что доступна через VPN, а потом уже рушить в гит и на виртуальном десктопе подтягивать из гита и собирать на тестовом сервере руками или Jenkins'ом. Да, немного лишних телодвижений, но это напрягает намного меньше чем работать в IDE на удаленной машине (тут еще писание кода не завязано на наличие сети - я уже поллтора года как за город перебрался, тут, конечно, и оптика в дом и LTE канал в горячем резерве, но всякое бывает...)

В итоге рабочее место выглядит так:

Слева - основной рабочий ноут + второй монитор к нему (там винда и все-все все - IDE, документация, джаббер и все вот это вот). Справа - старенький (и слабенький) ноут с Linux Mint + VMWare Horizon Client - используется исключительно как VDI терминал.

ясно что официальная цифра статистики смертности в 2021 никак не тянет на 'пандемию' :
т.е. в выигрыше в итоге оказались спокойно действовавшие по типу 'делай что должен и будь что будет', впрочем это универсальная формула всегда и для всего )

«Пандемия» — это когда касается не только одной страны, и не обязательно только смертности в целом, да и принципиально ваша ссылка на таблицу против вас, посмотрите графически, если сложно воспринимать цифры.
выигрыше в итоге оказались спокойно действовавшие по типу 'делай что должен и будь что будет'
ПоАга, особенно в 2022-ом. Всегда и для всего, точно-точно.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Изменить настройки темы

Истории