Как айтишнику выжить в Африке: пошаговая инструкция

Привет, я Никита, инженер в отделе интеграции в STM Labs.

Вообще STM Labs проектирует и внедряет высоконагруженные системы собственной разработки. Но есть проекты на базе стороннего ПО. Основная задача нашего отдела — заставить чужую систему работать так, как хочет заказчик. Головной офис компании находится в Нижнем Новгороде, а заказчики — по всему миру.

Очень люблю свой нижегородский офис, но самые яркие впечатления от работы я получил не здесь. В прошлом году я пять недель работал в командировке в Африке.
Да, эта статья не про hard skills, а просто про хардкор в Конго.


0d9vmggq2c6no9jztp6b-u-bq3e.jpeg

Для начала, вы знаете, что Демократическая Республика Конго и просто Республика Конго — это две разных страны?

Демократическая версия раньше называлась Заиром, но в 1997 году после госпереворота вернула историческое название. Столицы двух стран — Киншаса и Браззавиль соответственно — расположены на берегах реки Конго ровно напротив друг друга. До 1966 года Киншаса называлась Леопольдвилем. Тогда столицы звучали уж очень поэтично.

Ну вот, теперь знаете. Продолжаем.


Как меня занесло в Африку

Начну издалека — из Швеции.
Шведская компания DigitalRoute разрабатывает предбиллинговую платформу MediationZone. Она помогает операторам связи, интернет-провайдерам и прочим телеком-операторам выставлять правильные счета своим клиентам. Обычно данные о том, сколько мегабайтов и минут тратят абоненты, хранятся в сыром виде. А в пригодный для расчетов вид их преобразует именно предбиллинг.
Конечно, из коробки все это не работает — под каждого заказчика платформу надо дорабатывать. Для этого у DigitalRoute есть подрядчики с напильниками, которые выезжают на объекты и приводят все в работающий вид, а потом поддерживают. Один из таких подрядчиков — это мы.

Теперь переносимся в Конго. В тот вариант, который Демократическая Республика со столицей Киншаса.
Основной поставщик мобильной связи и интернета здесь — Orange. Наверняка вы о них слышали — это крупный международный телеком-оператор из Франции.
Orange пользуются шведским предбиллингом MediationZone. Но их версия системы устарела, и техподдержка уже не могла решать проблемы неактуальной версии. К тому же архитектура Orange несколько поменялась. В общем предбиллинг надо было обновить и перенастроить.
Когда руководитель предложил съездить в командировку, я работал в STM Labs 4 месяца. Все в команде уже куда-то ездили, а я дальше Москвы на проектах не бывал. Отказаться от крещения огнем я не смог. И поехал на другой конец света.


Подготовка: виза, прививки и ковид

Каждому желающему приехать в Конго нужно три вещи: пригласительное письмо, виза и прививка от желтой лихорадки. Письмо мне прислали, прививкой я укололся, а вот с визой вышла заминка.
Посольство Конго в Москве располагается в обычной квартире в многоэтажке недалеко от РУДН. С меня взяли €195 за трехмесячное пребывание и однократный въезд и отправили домой ждать звонка. Режим Хатико растянулся на месяц, хотя я сам регулярно звонил в посольство. Хорошо, что в итоге Министерство иностранных дел Конго меня одобрило, и визу мне дали.

По ковиду в мае 2021 было так: еще дома надо зарегистрироваться на специальном сайте, получить QR-код и заранее оплатить тест по прилету — аж 46$. Цена такая, будто в нее включен МРТ или пара приемов у стоматолога. Но нет, это просто тест на корону. Перед вылетом тоже нужен ПЦР, но спросили его только в Москве.


Совет по выживанию: сделайте прививку от желтой лихорадки и запаситесь терпением


Как добраться в Конго

Прямых самолетов в Киншасу из Нижнего Новгорода пока нет. Да что уж там, даже из Москвы долететь без пересадок не выйдет.
Мой путь занял 25 часов. Кроме пересадки в Москве было еще две остановки: техническая в Афинах и пересадка в Аддис-Абебе — это столица Эфиопии. Выспаться в таком режиме не вышло: то взлет, то посадка, то несут еду.

По прилету в Конго проверяют QR-код, книжку о вакцинации от желтой лихорадки и отправляют тестироваться на ковид.
Потом началась рулетка — найди на ленте свой багаж. Всю дорогу я молился, чтобы мой чемодан не выкинули из самолета в Греции или Эфиопии. Лента со скрежетом запустилась, сумки и свертки поехали, но моего бордового чемодана не было. Я прикидывал, как пойду шопиться и прикуплю африканского шмота. Но мой багаж торжественно выплыл одним из последних. Хвать! — и мы с чемоданом радостно побежали к выходу. Не тут то было — в дверях нас остановил охранник и тщательно сверил бирку на багаже с наклейкой на билете. Видимо, чемоданы воруют.


Совет: возьмите в самолет подушку для сна сидя


Как выглядит Киншаса

Меня встретил водитель и отвез в отель.
Ни одно видео не передаст атмосферы вокруг: люди бегают через дорогу, носят на головах корзины с водой, яйцами, хлебом. Торгуют на обочине диванами, креслами, инвалидными колясками. Мимо проехали трое на одном мотоцикле, а меня одного везут на микроавтобусе. Очень ярко, ощущение, будто оказался в фильме.

По дороге из аэропорта в отель я наблюдал за окрестностями.

По всему городу каналы с мутной водой. Оказалось, в них сливают воду из домов. Она попадает в Конго, откуда потом воду берут воду для города. Ее, конечно, очищают, но пить из под крана не стоит.
Дорога до отеля заняла час. Но, говорят, из-за пробок можно встрять на два и дольше.
На прощание водитель рекомендовал не ходить по улице одному. Я не стал спорить. Слышал, что один европеец провел в Киншасе три месяца и ни разу не покидал территорию отеля и офиса. Спойлер: я выходил, но только со знакомыми, которых завел тут по работе.


opamowflnzdxl2u_lhto1e1cmf0.jpeg

Рядом с отелем — река Конго. На противоположном берегу — Республика Конго. Та, что не демократическая.


Совет по выживанию: не гуляйте по улицам в одиночку


Первое, второе и компот

Отель у меня все 5 звезд. Ночь стоит 190$. Завтрак включен: на выбор рис, яйца, бобы, жареные бананы, выпечка и что-то вроде оладьев, соки и фрукты. В другое время питаться в отеле было расточительством: 25–30$ за пиццу, гамбургер, пасту или несколько посредственных кусков курицы.
Обеды в офисе радовали больше: на 4$ можно набрать целую тарелку еды и бутылку воды. Кормили по-разному: рис с рыбой или говядиной, курица с жареными бананами. По вкусу они похожи на картофель, но мозгу все равно странно есть бананы с рыбой и фасолью. А бывало и совсем необычно: травяная жижа или жареные гусеницы.


wuzotrb0afha1swfskelpxnk6nu.jpeg

Гусеницы на гарнир. Мне сказали, что это вкусно, но при слабом желудке лучше не есть. Я и не стал.


k4dsi_de-_7epjvuo4jukonkglo.jpeg
djt9_y_tukyejusmcl_axmnz5qq.jpeg

Обед за 4$ vs ужин за 25$

Местный чай слишком крепкий и отдает корой. Кроме лимонадов пьют разведенный водой сироп, который называют «гренадина». Мой коллега из Швеции увез домой местную вариацию самогона — лотоко. Его разливают в пластик, выглядит и пахнет ну очень сомнительно.

В супермаркетах я покупал воду по доллару за 1,5 л и шоколадки. Сок и подобие шаурмы обходится в 5$. На кассе вместо пакетов-маек обычно выдают тканевые сумки — заботятся об экологии. В одном супермаркете встретил электронные ценники. Только продавцы не обновляют их удаленно, а ходят и меняют цифровые панельки.


1uilpgkde6fcfync36hlkvccm00.jpeg

Чипсы бесконечно дорогие: 10–20$ за пачку. Для сравнения — кило говядины стоит 17,5$.

Из России я привез гостинцев: кило пряников, банку сгущенки и пачку листового чая. Но можно было брать больше — коллегам очень понравилось чаепитие с нашими сладостями.


Совет по выживанию: везите чай в подарок и внимательно смотрите, что собираетесь съесть


Офисные будни

Снаружи офис выглядит, как военная база за забором с колючей проволокой. Но внутри вполне комфортно: стильный ремонт, современные стулья и ноутбуки, сканеры отпечатков пальцев на дверях. Правда сами двери открыты.


i2bfopht2xpxyonggdzjv2fvvv8.jpeg

На территории бегают ящерицы. Хотя, они везде, не только у офиса. Также повсюду кислотные муравьи, которые любят сидеть на стенах и стульях. Их лучше стряхивать, а не убивать, иначе они выделяют кислоту — будет ожог.

Сам офис — это шумный оупен-спейс человек на 40. Гарнитуры у них не в ходу: постоянно кто-то звонит по телефону по громкой связи, говорит по зуму без наушников или смотрит ролик на ютубе. Однажды в середине дня пришли рабочие с лестницей и стали продувать и мыть кондиционер. Шум и грязь никого особо не смутили. По пятницам обстановка становится еще расслабленнее: люди поют песни и болтают. А кто-то умудрялся при этом спать в кресле — однажды я слышал храп. Может, считается, что если спишь на работе, значит много работаешь?


Совет по выживанию: берите в офис беруши и не давите муравьев


ПДД существуют, чтобы их нарушать

В офис и обратно я ездил на машине — по утрам за мной заезжали водители от компании. Мы договаривались на 7:30, но они всегда опаздывали — от 10 минут до 2 часов. Как мне объяснили, в Африке не любят спешить.

На дорогу уходило от 20 минут до часа — в зависимости от пробок, которые повсюду. Правила никто не соблюдает: машины разворачиваются через сплошную и ездят по обочинам, мотоциклисты пролезают вообще везде. На светофоры и регулировщиков внимания не обращают. Я старался не переходить дорогу даже по переходам — при таком трафике страшно. Но местные перебегают где попало. Кажется, это особый навык.

Права можно получить честно — выучиться в автошколе и сдать экзамены. А можно заплатить 50$ и забрать права через неделю. Я так понял, это законно, или близко к тому. За пять недель я лишь однажды видел машину автошколы. В общем, «понапокупают права и ездят».
На улицах больше всего тойот разных возрастов и моделей — от крохотных Yaris до крузаков: почему-то местные механики лучше всего умеют чинить именно их. Крышка топливного бака часто закрыта на замочек. Видимо, чтобы ночью бензин не слили.

Общественный транспорт развит плохо, в основном это разбитые автобусы. Раньше была сеть трамваев, но постепенно их не стало.
Такси спросом не пользуется из-за цены: $5 в час плюс стоимость бензина — около $1 за литр. Однажды я ехал в такси дыркой в полу и заклеенным скотчем стеклом. А в другой раз мы посреди пути пересели в другое такси, потому что водитель запросил больше денег при виде иностранца — меня. Да, можно остановиться и уйти в закат, если водитель обнаглел. Приложений и агрегаторов нет — пробовали, но не взлетело.


Совет по выживанию: будьте осторожны на дороге


Никаких СБП и платежей по QR-коду

Картами в Конго платят редко, хотя терминалы есть. Местные банки дерут проценты за все: положить деньги на счет, перевести, оплатить покупку онлайн. Поэтому все платят наличкой — с нее комиссию взять сложнее.
Валюта — конголезский франк. Чтобы получить доллары, надо делить цену на 2 000. Самая крупная банкнота — 20 000, самая маленькая — 100. Металлических монет нет. На 100 ничего не купишь: пакет в магазине стоит 190. Доллары тоже принимают, но менее охотно и только купюры от 5$.
Вместо онлайн-банкинга в ходу Orange money. Это сервис на основе USSD-команд. USSD — аналог консольных команд на телефоне, обычно начинаются на звездочку и заканчиваются на диез. Когда хочешь оплатить или перевести денег, вызываешь меню с помощью USSD. Там выбираешь пункты, указываешь сумму и номер, и деньги отправляются с твоего счета получателю.
Счет телефона пополняют тоже через USSD, даже в самом офисе Orange.


dostjovhj6hdpagl3gu1wpzhiow.jpeg

Скорость мобильного интернета. К слову, пакет интернета стоит 3$ за 1 200 Мб.


Совет по выживанию: запаситесь наличкой


Так зачем я приехал

Пора разобраться с технической стороной — что изменилось в архитектуре оператора, что все пришлось срочно переделывать.
У Orange в Киншасе два физически разнесенных ЦОДа, в каждом по три сервера. Это называется георезервированием — geo redundancy. Если в одном ЦОДе пропадет электричество, случится пожар или еще чего, то можно переключиться на второй и данные не пропадут.
На первом сервере размещается компонент нашего предбиллинга и системная база. На двух остальных — по 2 единицы узлов обработки. При необходимости все компоненты системы могут переезжать с сервера на сервер. За мониторинг и выполнение переезда отвечает Red Hat High Availability. Архитектура построена на shared storage.

Но сервера выключались слишком часто, и база данных постоянно переезжала. От этого данные портились, их приходилось восстанавливать из бэкапа с магнитной ленты. Поэтому базу данных вынесли на отдельный сервер в новом ЦОДе.
В общем, мне предстояло обновить систему в одном из старых ЦОДов и с нуля установить ее в новом.


Совет по выживанию: станьте незаменимым для какой-нибудь задачи


Как я работал работу

На все ушло пять недель: четыре на апгрейд и установку, а еще одна — на тренинги и обучения.
Сложнее всего было понять, как все устроено — ни у кого не было картины целиком. Документация оказалась неполной и информацию пришлось собирать по частям.
Повезло, что в первую неделю я работал с коллегой из Швеции: он участвовал в прошлом запуске, поэтому был знаком с системой. Сейчас он настраивал Red Hat HA — сначала удаленно, а на финальную настройку и тестирование прилетел в Конго. Через неделю он улетел обратно, а я остался.
Из местных я в основном взаимодействовал с четырьмя людьми: менеджером, который отвечает за предбиллинг, инженером из его команды, системным администратором и администратором базы данных. Интересно, что менеджер занял должность прямо перед моим приездом, потому что его начальник уволился одним днем и уехал в Канаду.


md_7ypzuazjvcdf4x2xnknyqe7q.jpeg

Как в анекдоте: заходят в бар русский, швед и конголезец. Место действия — задний двор офиса, хотя и выглядит как склад.

Иногда по вечерам я работал из отеля, но это причиняло страдания. Из-за местных настроек безопасности подключаться приходилось строго через шведский VPN. Сервера находились в паре километров, но пакеты летали десятки тысяч километров до Стокгольма и обратно. В общем, даже символы на экране появлялись с задержкой в пару секунд.
Часто я объяснял одно и то же несколько раз. То ли языковой барьер, то ли технический, то ли дело в менталитетах.
Например, после установки системы и настройки на виртуальные адреса, доступа к системе не оказалось — виртуальная сеть была просто недоступна. Проблема решалась одной настройкой iptables. Хотя неделю до этого я объяснял, что конкретно надо сделать и зачем. А потом ещё неделю это делали.
Однажды кто-то решил покрутить сеть прямо во время апгрейда прода. Первый этап прошел успешно, а перед вторым доступ к серверам пропал до вечера. Доделывать пришлось ночью просто из-за несогласованности действий.


fckdcc7k5eh1k74ic4o4cr4kmd4.jpeg

В итоге общий язык мы нашли, и все заработало, как надо.


Совет по выживанию: учитесь общаться с людьми


Лингвистические загадки

Говорят в Конго на трех языках, точнее на их смеси: французский, английский и лингала. Лингала — это местный язык, который изучают в начальной школе. Если слышишь разговор, где ничего не понятно и это не похоже на французский, то это лингала. Я выучил на лингале несколько слов — «Привет», «Как дела?», «Хорошо», чем приводил местных в восторг. Мне даже предложили завести местную жену.


Совет по выживанию: здоровайтесь на местном языке


Как живут в Конго

Менеджер проекта собирался жениться в конце лета и рассказал, как у них это работает.
Общество очень социальное: соседи и родные в курсе подробностей чужой личной жизни. Если жить вместе до свадьбы, все будут цокать вслед. К девушкам вообще придираются: смотрят косо, если не вышла замуж к 27.

Перед свадьбой жених получает от родителей невесты список того, что нужно купить или сделать. Получается настоящий выкуп на несколько тысяч долларов. Свадьбы делают пышными — на 150–200 гостей. Обходится это в среднем в 10 000 $, а то и больше — приходится экономить и занимать у знакомых.

Если в семье рождаются девочка и мальчик, то в школу скорее отдадут только мальчика. Потому что это стоит в год около $1000 в общественной и $5000 в частной. В классе обычно около 50 человек, а в университете до 200 человек в группе. В целом правительство не заинтересовано, чтобы люди получали высшее образование. Поэтому многие едут учиться в другие страны и остаются там жить.

Тут всего три престижные сферы для работы: IT и телекоммуникации, шахтерское дело и банковское дело. Те, кто работает в Orange, считаются завидными женихами.


Совет по выживанию: найдите ИТ-компанию и устройтесь туда


Не имей сто рублей

Мой досуг полностью зависел от коллег: меня водили в бары и кафе, приглашали на ужины, возили за покупками и на пляж по выходным.


kcpurmwnft54edlbteidklha2js.jpeg
_pybnyeloaygtoqbmfaamksqs4w.jpeg
vbxni0vtcdrepj3kfjeypsxgw34.jpeg
bqjxzd0ejsjbgo70ano4jhhurwe.jpeg

Мне показали окрестности и свозили на аэродром, где работает знакомый знакомого. Он на фото чинит двигатель.

В общем, коллеги оказались очень дружелюбными. Сам я разве что ходил в бассейн в отеле. Во всей стране в 22 комендантский час, поэтому меня всегда вовремя возвращали в отель в целости и сохранности.
В первый коллективный выход в бар босс купил мне пива со словами «Halyava, enjoy!». Кстати, пиво было неплохим, а в баре играла сover-группа.


u-0qzhlkwglmcxer51kkvxlgno0.jpeg

Еще понравился ресторан на крыше девятиэтажки с охраной на входе и видом на соседние здания и огни Браззавиля через реку. Коллеги рассказали, что там тише и спокойнее, нет безумия на дороге, хорошие рестораны и развит общественный транспорт.

Однажды я оказался на греческом ужине у друзей коллеги. Кроме новых знакомств вечер запомнился вкусной едой, наконец похожей на нашу: пюрешечка, мясо, баклажаны, осьминоги и кальмары.


qrqbojj2moib-gzqzhqgkning3k.jpeg
yevrnrhrmyggtqzh3nmkgfxf8we.jpeg

Интернациональный греческий ужин

А еще там меня пригласили на урок фехтования — тренером был один из гостей. На занятии мне выдали костюм и провели краткий курс: научили двигаться как краб — вперед-назад, показали базовые приемы атаки и защиты и вручили шпагу. Она оказалась тяжелой — рука устала после короткой тренировки с мишенями. Это, конечно, не мышкой по столу водить.


qsubvsmvngvpc7heqihqa8buna8.jpeg

В первом раунде я держался на уровне, но во втором совсем выдохся.

За сувенирами меня отвезли на местный рынок. Самый настоящий, где прилавки сколочены из досок, а каждый продавец тебе друг и брат. Ассортимент у всех примерно одинаковый: браслеты, ожерелья, фигурки, маски, традиционная одежда. Если поторговаться, цена падает вдвое. На удивление после шопинга телефон и кошелек остались при мне. Хотя мне обещали профессиональных воров.

Из командировки меня попросили привезти местный платок. Мы честно искали его по всей Киншасе. На рынке не было ни одного. В трех торговых центрах что-то похожее на платок начиналось от 50$, но ничем не напоминало Африку. В каком-то магазине мне предложили ткань, из которой можно сшить платок. На торговой улице, которая выглядела опаснее, чем рынок, платки нашлись, но с биркой «Made in China». В общем, считаю, что черепаха из малахита ничем не хуже платка. Вообще-то Конго славится добычей малахита, а не платками.
В общем, скучать в Конго мне не доводилось.


Совет по выживанию: заведи хороших знакомых


Вместо вывода

В командировке у меня случилась тотальная интеграция: я не только внедрял предбиллинг, но и сам внедрялся в местную культуру. Мне всегда казалось, что в ИТ-сфере твои технические знания главнее всего. Но тут я увидел, что тыкать кнопки и возиться с железками несложно. Куда важнее уметь общаться с другими людьми: доносить свои мысли, слышать и понимать чужие.

На другом конце света я был в порядке только благодаря софт скиллам: именно навыки общения помогли разрулить работу и найти круг общения.

Рад ли я, что согласился на командировку? Конечно, ведь так приятно потом было вернуться домой.

© Habrahabr.ru