...

суббота, 23 ноября 2019 г.

Another Way — LFS, Multi User и текущий прогресс инди Action/RPG

image

Всем привет! Прошло немногим больше месяца и по традиции я спешу поделиться прогрессом нашей авантюры, серии под названием “Через тернии к игре мечты”. Хочу напомнить, что же тут происходит. Мы разрабатываем игру Another way — Нелинейная Action/RPG от третьего лица с элементами интерактивного кино, выполненная в лучших традициях средневекового Fantasy, на базе собственной вселенной. Разработка ведется на Unreal Engine 4 усилиями небольшой, но очень вдохновленной команды.

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

Если во время написания первого поста нас было всего двое, мы горели идеей, но в целом понимали, что на тот объем на который замахнулись нас элементарно не хватит, то сейчас в команде уже 20 человек из самых разных областей, и я безумно рад, что у нас получается объединять усилия, для того чтобы сделать что-то действительно крутое. В общем, добро пожаловать под кат.

В этот заход решались многие организационные вопросы, среди прочих был вопрос совместной работы над проектом. Для хранения репозитория мы используем гитхаб с подключенным Git LFS. Здесь, для тех кто хотя-бы раз пользовался GIT для версионирования, не будет никаких сюрпризов, за исключением дополнительной установки GIT LFS (Large File Storage). Также, по желанию, можно установить дополнительный GIT LFS плагин в сам редактор Unreal Engine. По-умолчанию Github не способен хранить столь большие проекты (50GB+ на данный момент), поэтому за каждые дополнительные 50 гигабайт трафика или места на диске необходимо отдавать дополнительные $5.

Казалось бы на этом всё, победа. Но открытыми оставались вопросы совместной, единовременной работы и merge конфликтующих карт. Для локальной команды работающих из одного офиса все было бы куда проще, включая собственное железо в качестве сервера и использование Multi User по-умолчанию в локальной сети.

После небольшого ресерча и бесполезных попыток использования p2p сетей было найдено единственное упоминание рабочего варианта с использованием Softether VPN Server. Приобретен VDS с очень скромными характеристиками, достаточными для того чтобы поднять на борту Ubuntu и виновника торжества Softether, максимально развернутую инструкцию по настройке можно найти здесь.

На клиенте устанавливаем Softether VPN Client и подключаемся к удаленной машине с реквизитами которые мы настроили ранее.

Примечание: При настройке клиента необходимо установить галочку в Advanced Settings: No Adjustments of Routing Table, иначе на машине пропадает интернет и будет доступно только локальное соединение с VPN сервером.

В самом Unreal Engine необходимо предварительно включить плагин Multi User Editing и перезагрузить редактор.

После чего в настройках указать полученный локальный VPN адрес.

Примечание: в конце всегда идет :0 для прослушивания порта по-умолчанию.

Итоговый пайплайн выглядит примерно так: хост открывает сессию, пользователи присоединяются к ней. По завершению работ пользователи покидают сервер, хост коммитит изменения и заливает. Все клиенты синхронизируют состояние локальных репозиториев (pull/fetch). В совокупности это позволяет полностью избавиться от проблем с отсутствием возможности адекватно мерджить конфликтующие изменения, уменьшить используемый трафик LFS и позволяет вести совместную работу над проектом. Более подробно о работе Multi-User Editing можно почитать в самой документации Unreal Engine.

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

Как я уже и говорил ранее, команда значительно выросла как качественно, так и количественно, если ранее было достаточно передавать документацию посредством личных сообщений и общения, то для масштабирования нам нужно было привести это в единый формат. Jira — удобно для тех кто работал с ней ранее, дорого и слишком объемно для наших целей. Asana — еще один монстр. Trello — хороший и простой канбан боард и наконец HacknPlan — открытие, которое подвернулось под руку в тот момент когда это было действительно нужно.

Это специализированный трекер задач под условный “геймдев”. Там же можно вести основной дизайн документ, вкладывать главы, разбивать его на категории.

И что более интересно, создавать задачи прямо из каждого отдельного элемента дизайн документа. А далее стандартный набор хорошего issue tracker, логирование времени, линкование задач, назначение пользователей, прикрепление файлов и изображений удобнейшая канбан доска по категориям и многое другое.

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

Мы как и прежде уделяем большое внимание деталям, поэтому референсы для пропсов приходится искать в самых разных местах, так как отрисовывать все в 2D не представляется возможным. Но на выходе получается довольно интересно.

Но иногда отрисовывать просто необходимо, и тогда получаются неплохие референсы для будущих 3D моделей

В прошлый раз я показывал наработки концепта главного героя, с тех пор он приобрел финальный вид.

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

Те, кто успел познакомиться с прологом, могут вспомнить дочь Рогира — маленькую девочку Ниалу, которая является одним из самых ключевых персонажей.

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

Тенелов — Это существо долго преследует свою жертву, прячась в тени стволов деревьев. При перебежке издает сопящий звук, издает зловещие циклы, после чего сменяется давящей тишиной Леса Тысячи Теней.

Морское чудо-юдо — практически никто не возвращался живым после встречи с ним, или его марионетками — прекрасными девами, которые манят своей красотой изголодавшихся морских волков.

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

Помимо визуального, нарративного и геймплейного восприятия — огромную важность играет звук, уже сейчас у нас есть общее представление картины будущего звучания и наработка по главной теме Another Way.

Я как и прежде буду рад вашим вопросам, комментариям и мы все еще ждем вас в нашем сообществе Вконтакте в любое время. Закончить я хочу видом на озеро, где-то возле лесопилки деревни Мармид. Всем спокойствия и умиротворения.

Let's block ads! (Why?)

Google закрывает Инструменты переводчика

Google надавно разослал извещение о том, что 4 декбря закрывает сервис Инструменты переводчика или как его еще называют Google Translator Toolkit.
Недавно мы сообщали Вам, что 4 декабря 2019 мы прощаемся с Инструментами переводчика Google. Вы получили последнее напоминание, поскольку сервис прекратит работу менее чем за 2 недели. Ниже мы описали, как Вы можете загрузить свои данные.

Вы можете загрузить свои данные из Инструментов переводчика до 4 декабря 2019. Некоторое время после прекращения работы сервиса данные можно будет загрузить с Google Takeout.

Таким образом Google Translator Toolkit вслед за Google Reader, Google+ и другими добавляется к обширному списку закрытых сервисов Google.

Let's block ads! (Why?)

«Ритм-игры, которые стоит знать»: какие проекты поставили на звук и сделали его частью жанра

Довольно часто музыкальную составляющую компьютерных игр затмевают геймплей и сюжет. Однако есть проекты, в которых звук не просто выходит на первый план, но становится неотъемлемой частью игрового процесса — например, в ритм-играх. В этой статье мы обойдем стороной такие культовые проекты, как Guitar Hero, и поговорим про чуть менее известные, но не менее интересные релизы.


Фото Lorenzo Herrera / Unsplash

Osu! Tatakae! Ouendan


Эта серия для Nintendo DS выходила с 2005 по 2007 год. Она — одна из родоначальниц жанра ритм-игр и по праву обладает «легендарным» статусом: ни до, ни после выпуска серии на рынке не было чего-либо похожего по своей простоте и динамике. Последняя задана специфической атмосферой, которая ведет игрока через процесс разрешения кризисных ситуаций от миссии к миссии.

Ему остается нажимать на сплывающие круги на экране и использовать специальный стилус для консоли в такт музыке. Сложность процесса зависит от мелодии, и здесь можно встретить работы знаковых японских исполнителей, таких как nobodyknows+ и The Yellow Monkey. Один из треков написали Asian Kung-Fu Generation, авторы саундтрека к культовому аниме «Стальной алхимик».

Плейлисты с музыкой к игре можно найти даже на Spotify. К слову, она была издана на японском и на английском, поэтому в адаптации для западного рынка — под названием Elite Beat Agents — задействованы песни Jamiroquai, Мадонны, Шер и других поп-исполнителей.

После того как Nintendo свернула работу над проектом в 2007 году, группа энтузиастов начала разрабатывать её альтернативу для ПК. Проект назвали Osu!, его код есть на GitHub.
Интересно, что такое переиздание обошло по популярности оригинал. Разработчики добавили возможность создавать кастомные уровни, и этот шаг не просто вернул интерес к проекту, но и поднял его до такого уровня, что по игре до сих пор проводят турниры.


Crypt of The Necrodancer


Если Osu! совмещает в себе элементы ритм-игры и даже визуальной новеллы, то Crypt Of The Necrodancer является наполовину roguelike-игрой. Здесь персонаж бродит по бесконечным подземельям, а его действия наиболее эффективны, если попадают в ритм мелодии.

Музыка в игре написана в жанре чиптюн, её автор — Дэнни Барановски (Danny Baranowsky) из компании dB Soundworks. Он работал над саундтреком для Super Meat Boy и Binding of Isaac. Часть композиций написали приглашенные авторы (например, FamilyJules — делает каверы на YouTube).


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

Bit.Trip Runner


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


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

Beat Saber


Ритм-проекты проникли и в виртуальную реальность — один из самых ярких примеров это Beat Saber. «Ранний доступ» к игре открыли в 2018 году, и в мае этого года вышла ее полная версия — на ПК, PS4 и Oculus Quest. Проект напоминает Fruit Ninja: если в «ниндзе» по экрану летели фрукты, которые нужно было рубить виртуальной катаной, то здесь на игрока в такт музыке летят разноцветные неоновые кубы, и их уже необходимо разрезать виртуальными световыми мечами.

Поэтому, помимо чувства ритма, пригодится и координация: в некоторых моментах нужно будет «уклоняться» от объектов, нагибаться и делать шаги в сторону. Из-за того, что все тело фактически участвует в игре, геймплей Beat Saber больше напоминает аркадные танцевальные игры.

Cпектр жанров «встроенных» песен довольно велик — от рока до хип-хопа. Есть известные композиции от Muse, Thirty Seconds to Mars и других популярных групп и музыкальных исполнителей.


Сегодня по этой игре тоже устраивают турниры. Они проходят регулярно и по всему миру.

Наша продолжающаяся «Чёрная пятница» — самая честная распродажа аудиотехники со скидками до 70%. Это отличная возможность приобрести гаджет, который вы давно присматривали, — себе или в подарок.

Например, беспроводные наушники Audio-Technica ATH-AR5BT за 9990 руб. или USB-микрофон Beyerdynamic FOX за 10900 руб.



Что почитать в нашем «Мире Hi-Fi»:

«Музыка Большого Брата»: металл, китайский поп и опера
Создатели музыки к компьютерным играм – несколько самых выдающихся имён
Прислушиваясь к информационному шуму: музыка и видео, которые никто не должен был найти
В чем особенности и задачи звукового сопровождения игр

Музыка «по умолчанию»: какие треки были на плеерах и персональных компьютерах
Где брать аудио для разработки игр и других проектов? Библиотеки со звуками природы
Олдскул: на чём выходили игры — обсуждаем необычные носители


Let's block ads! (Why?)

[Из песочницы] 10 лет на удаленке и что из этого вышло


Содержание


1. Первая работа
2. Первый экономический кризис и первая удаленка
3. Год за два
4. Покоряем Москву, не выходя из дома в провинции
5. Второй (валютный) экономический кризис
6. А в это время в России
7. А что сейчас?
8. Выводы/Плюсы/Минусы
9. ЧаВО

Первая работа


2006 год, мне 21, я заканчиваю ВУЗ по специальности информатика в экономике. Где нас учили программировать на паскале, проектировать, реляционным базам данных, четырем видам бухучета и ГОСТам 19 и 34 группы. По совместительству работаю в компьютерной фирме по ремонту, продаже компьютеров и программного обеспечения.

Мне дают задание съездить в одно государственное учреждение при администрации города, подписать акты на поставку компьютерных железок. Это учреждение специализировалось на внедрении ИТ решений и разработке программного обеспечения для нужд города и, по неведомому стечению обстоятельств, находилось на улице Бобруйская.

Подписав акты у директора, я решился и выпалил фразу «Хочу у вас работать программистом», вкратце описал свое высшее образование и что я умею. А на тот момент я умел ваять поделки на C#. Благо за некоторое время до этого Microsoft устроила семинар для программистов, на котором выдала диски с лицензионными копиями Visual Studio 2005 и SQL Server 2005. Я подсуетился, купил и прочитал толстую книгу «C#» Карли Ватсона. Судьба была благосклонна ко мне и через некоторое время мне позвонили и предложили сделать проект. Так у меня появилась первая работа.

Вопреки ожиданиям данное государственное учреждение вполне на уровне и профессионально выполняло свои функции. В отделе разработки были настроены некоторые процессы, проектная команда состояла из проектировщика (постановщика) и программиста, использовалась система контроля версий Visual Source Safe. Был чистый waterfall. Постановщики писали технические задания, их подписывали у больших начальников в длинных коридорах государственной власти. Потом задание спускалось программисту. Тестированием и приемкой занимались постановщики.

Проекты были простыми, обычный CRUD плюс отчеты в Word и Excel. Сначала WinForms, затем Web. Иногда попадалась интеграция с внешними системами документооборота.

То было беспечное, размеренное и счастливое время. А еще в этой компании были душевные корпоративы. Сейчас я испытываю ностальгию по тому времени. За последующие 10 лет я периодически захаживал на чай к бывшим коллегам, рассказывал о своих успехах. А они все так же сидели в тех же кабинетах, только сами доросли до начальников.

Первый экономический кризис и первая удаленка


В 2008 грянул кризис. А мой друг предложил встретиться с голландцами, дескать они хотят набрать программистов и оживить старый проект. На встрече они вскользь упомянули об удаленном режиме работы. Я тогда еще удивленно подумал: «А что так можно было?». С ними ничего не вышло. Но зерно возможностей уже было посеяно в моей голове.

Я начал искать удаленку. Искал везде: на форумах, на фрилансерских биржах, на хх.ру и супержоб.

С фрилансом не заладилось сразу. Я не понимал почему я должен тратить кучу времени на поиск заказов и потом работать за копейки, даже меньше, чем моя текущая зарплата на тот момент. Масса неадекватных заказчиков уровня «сделай мне полный аналог одноклассников за 10 000 руб». Фрилансерские биржи, которые сначала просят денег за pro аккаунт, чтобы я смог видеть серьезные заказы. Как я мог им заплатить, если я еще не заработал ни копейки на их сайте.

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

Я сфокусировался на поиске удаленной работы на полный рабочий день. В то время (2009 год) на хх было, как сейчас помню, 54 вакансии на удаленку по моему профилю. Я отправил сотни откликов, в том числе и на вакансии «только в офис». Попутно открыл ИП УСН 6%, подумал, что так будет проще и мне и работодателю оформить отношения.

В конце 2009 судьба подкинула мне конфетку. Я прошел собеседование в московскую компанию. Вакансия изначально была в офис, считаю, что повезло. И меня взяли на проект с обещанием подумать по его результатам насчет полного рабочего дня. Такие проекты я уже умел – Web, CRUD, на основе технического задания для какого-то государственного учреждения. Я запросил «московскую» зарплату. Согласились. В совокупности – это дало сильнейший мотивационный толчок. Первый успех и уделяя время по вечерам пару часов после основной работы можно было заработать половину провинциальной месячной зарплаты.

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

Как раз пригодился ИП. Когда я увольнялся с основного места работы, начальник отдела кадров удивленно спросила: «Куда же ты? Кризис же, зарплаты режут, увольняют». Я пожал плечами и с улыбкой на лице ответил «Так сложилось».

Год за два


Началась гонка. Московский стремительный стиль жизни и работы уволакивает за собой, даже если находишься в тысячах километрах от столицы. Я думал, я не справлюсь. Проекты сложнее. Неведомые мне предметные области (фондовая биржа, аукционы, закупки, таргетированная реклама). Я впервые работал в настоящей команде, а не из двух человек. Таски в жире сменяли один за другим с невероятной скоростью. Бывало, закрывал 500 часов за два месяца. За первые полтора года я узнал больше, чем за три в провинции. В тот момент я понял, что региональные проекты никогда не догонят столичные. В лучшем случае московские компании придут в регионы (что в последствии и случилось). Поэтому и люди там не нужны. Поэтому все едут в Москву. Тогда я и осознал, что удаленка на Москву – это своего рода лайфхак. Проекты круче, опыт больше, денег больше.

Через год я попросил повышения зарплаты, повысили. Еще примерно через полгода мне стало скучно. Я обратил внимание на работу одного из коллег – он создавал каркас солюшена, закладывал подходы и решения, писал нагрузочные тесты. А команда допиливала бизнес логику. Его называли архитектором. И я захотел стать таким же.

В компании сказали, что им не нужен еще один архитектор, поэтому я стал искать работу. Было много собеседований. Спасибо тем людям, которые подтолкнули меня к изучению нового. Мне подсказали много полезных книг (такие как «Банда четырех» и «Принципы, паттерны и методики гибкой разработки» Мартина.) и блогов, которые я стал читать. Занялся саморазвитием. Пробовал некоторые идеи на текущих проектах. Повторно пошел на собеседование в одну из компаний, где ранее завалил его и где мне порекомендовали почитать книги. В результате услышал «Мы хотим с вами работать!». Это польстило. В итоге в 2012 работа нашла меня сама. Опять Москва, опять удаленка, но я сразу обозначил свою цель – стать ведущим программистом.

Покоряем Москву, не выходя из дома в провинции


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

Мне дали команду. Она была распределенная. Руководитель проекта, бизнес-аналитик и несколько программистов и тестировщик в Москве. А я и еще несколько программистов были разбросаны по России и странам СНГ. В этой компании процессы были настроены лучше, чем когда я либо встречал в прошлом и будущем. Kanban, анализ и детальная постановка задач бизнес-аналитиком, потом они поступали ко мне на проектирование, оценку и распределение. Я занимался архитектурой, инфраструктурой, общими подходами и сложными участками кода. Распределял задачи среди программистов, контролировал работу и проводил ревью кода. У меня в голове был весь проект целиком, и я мог в любой момент сказать, что происходит на любом его участке. Все работали слажено и плотно. Каждый занимался своим делом, тем, что у него получалось лучше всех и делал это великолепно. Даже более того, например, бизнес-аналитик почти не оставляла мне работы по проектированию, настолько логичные и полные были описания.

Со временем проект развился до платформы и компонентов. Каждый компонент работал со своим внешним сервисом. Проект был внедрен в примерно 30-ти банках по всей России. Возможно, даже до сих пор, где-нибудь предоставляет данные в ФССП или ГИС ГМП по запросам в автоматическом режиме. Также я понял, что значит вести проект. Моя команда была продолжением моих рук, и я мог с их помощью делать более сложные проекты. Мне это понравилось.

Итогом стало то, что однажды, году эдак в 2014, я ехал в московском метро и мне пришла в голову мысль, что я сделал карьеру в Москве, не выходя из дома. Ведь даже со своими московскими и на тот момент уже бывшими коллегами я встретился в Москве и в Питере только годах в 2016-2018. И забегая вперед скажу, что один из моих коллег через несколько лет стал CTO на удаленке в шведской компании. А я, тем временем, стал на уровне конкурировать с московскими ведущими программистами. Да, многие интересные проекты проходили мимо меня, но что-то перепадало и мне. Примерно в это же время я выделил три типа компаний по их отношению к удаленной работе:

Не хочу, не буду – безапелляционный отказ от удаленки, руководители старой закалки и/или не умеющие руководить и/или не желающие учится новому. У них были тысячи отмазок почему удаленная работа им не подходит. Так как общение в 95% было по скайпу и только голосом, без видеокамеры, то мне они представлялись такими:

В этой же группе, как ни странно, многие стартапы-на-коленке. Но им некогда настраивать процессы. Короче говоря, не стоит тратить свое время на компании из этой группы.

Можно попробовать – переходная группа, в обе стороны. Тут и компании, которые были готовы попробовать удаленку и те, которые уже пробовали и обожглись (ведь от самих программистов тоже многое зависит). Этим компаниями чего-то не хватило для полного счастья. С ними можно попробовать работать, но шансы 50 на 50.

Мы ищем удаленщиков – прогрессивные компании и руководители, которые готовы к удаленной работе. Видят плюсы и минусы. Имеют настроенные (и зачастую лучшие) процессы по сравнению с компаниями из других групп. И они не прогадали. К тому времени количество вакансий на удаленку на хх по моему профилю выросло и порой доходило до 300-400 штук. Эти компании поняли, что можно нанять хороших и лояльных (ведь провинциальная зарплата в среднем составляла 30-50 тыс руб) программистов из регионов по нижней или даже средней планке московской зарплаты и закрыть свои потребности в кадрах. Но в этой группе встречаются компании-лютые-жадины. Они считают, что удаленщик из деревни должен работать за мешок картошки. Такие компании также следует обходить стороной.

Второй (валютный) экономический кризис


В 2014 грянул второй кризис, рубль полетел вниз. Ну что ж, раз удаленка на Москву – это лайфхак, то почему бы не провернуть его еще раз в планетарном масштабе? Я начал искать зарубежную удаленку и параллельно рассматривал варианты с переездом. По зарплате в последнем варианте я для себя определился $100k или средняя зарплата в регионе для программиста, если она больше этой суммы.

Есть такая интересная ссылочка www.bls.gov/oes/current/oes_nat.htm#15-0000 – это средняя зарплата в США в целом по стране для компьютерных специальностей. Там каждый год примерно одни и те же цифры $90-100k. И есть такая же для штатов и городов по отдельности www.bls.gov/oes/current/oessrcst.htm.

Было тяжело и все тоже самое. Фрилансерские биржи с тысячами индусов, неадекватные заказчики «Facebook killer for the 1000$». Походу это не зависит от нации.

Я познакомился с бодишоперами. Релокация в страну мечты за миску супа ($75k в Арлингтоне, штат Вашингтон). Также попалась вполне адекватная русско-американская компания. Предложили $100k в первый год. Но нужно было поморозиться в Новосибирске за 70к рублей. Не согласился.

В начале 2015 судьба уже в который раз была на моей стороне, за что я ей очень благодарен. Я прошел собеседование в американскую компанию. Зарплата в твердой валюте, а в пересчете на рубли х2. Это был кайф.

Мне дико повезло. Собеседовал меня единственный русский программист, который там работал. Началась как подработка, а с лета 2015 вышел на полный рабочий день. Оформление было через Upwork.

Проработал я там почти 4 года. Это был разносторонний опыт. Хотя проект и был в меру сложным и масштабным, а вот процессы в моей предыдущей российской компании, на мой взгляд, были более зрелые и четкие. Я пытался донести до американцев очевидные для меня истины, но они шли по своему пути. Я даже не знал, что существует столько разновидностей баг-трекеров. Благо в итоге они перешли на жиру.

Но главное – это новые ощущения. Ты сидишь в захудалом городке в России, делаешь работу, заливаешь код в репозиторий американской компании по интернету, и та зарабатывает на этом деньги, в том числе и с компаний из Африки, которые пользуются ее софтом. Поистине глобальные процессы происходили тогда (и сейчас) на планете. А еще вносишь свою лепту в избавление страны от нефтяной зависимости. Ведь где-то там в годовых внешнеэкономических отчетах есть и мои жалкие доллары, которые я получил wire transfer-ом из-за рубежа за проделанную работу.

Культурные ценности. Как оказалось они такие же люди, но со своими североамериканскими тараканами размером с ладонь. Хотя про санкции шутили так же, как и мы. Возможно, это специфика именно этой компании. Например, если рядовой сотрудник был недоволен моей работой, то жаловался начальнику, а не мне. В целом все отношения строились на здоровом паритете (это я сейчас понимаю, отбросив эмоции). Для компании удаленщик – это был человек, которого могли уволить в любой момент, и он сам мог уйти тоже в любой. Поэтому на него не рассчитывали, не доверяли глобальных процессов и особо не слушали. Хотя некоторые мои идеи были реализованы, например система обучения в виде скринкастов для пользователей системы, в которой могли поучаствовать и программисты, чтобы лучше понимать бизнес-процессы.

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

А в это время в России


Все время пока я работал на американскую компанию, я мониторил рынок труда и ходил на собеседования. Одно за другим произошла пара примечательных событий. Все началось с приглашений на собеседования на удаленную работу в американские компании. Приглашения приходили от русских, работающих там. Но на некоторые собеседования я не успевал, хотя отвечал через сутки-двое. Мне сообщали что-то вроде «Очень много желающих, мы уже нашли». В итоге я получил еще одно предложение примерно на тех же условиях, которые у меня тогда были (зарплата меньше, но плюсом оплачиваемый отпуск) и не стал дергаться. Но исход программистов уже начался. Мне показалось, все, кто мог, ломанулись на зарубежную удаленку или переезд. Походу была дикая конкуренция. Я еще раз поблагодарил судьбу за то, что позволила запрыгнуть в этот поезд в самом начале.

А спустя некоторое время массово стали появляться вакансий на 150-200 тыс. руб. в Москве и Питере на серьезные должности (ведущие, архитекторы, тех- и тим-лиды). У меня сложилось впечатление, что исход был окончен и на освободившиеся позиции российские компании пытались найти замену. У меня нет информации как обстояли дела с поиском с их стороны. Помню, что я отвечал им «возможна ли удаленка и зарплата в валюте или с привязкой к курсу?» и положительного ответа так и не дожидался.

А что сейчас?


А сейчас мне 34. После всех потрясений и проектов в Швеции, Канаде, США и Австралии судьба преподнесла мне еще один подарок. Работа дом/офис по пол дня, в своем провинциальном городишке. Среди современной молодежи 25-30 лет. Проект в перспективной сфере IoT и с планами выхода на зарубежные рынки. Так что гонка еще не окончена. Может даже будет новогодний корпоратив.

Выводы


  1. Каждому человеку рано или поздно найдется своя работа. И будет совпадать с его пожеланиями в тот момент времени.
  2. Удаленка – это своего рода лайфхак для жителей провинции. Серьезные проекты, больше опыта и денег.
  3. На удаленке можно сделать карьеру – архитектор, тех- и тим-лид, CTO.
  4. Оплачиваемые праздники и отпуска тоже возможны.
  5. Удаленка подходит не всем. Есть люди, которые не могут себя заставить работать из дома или постоянно отвлекаются. Им лучше в офис. Будет меньше негатива у работодателей и останутся места для тех, кто может работать из дома.
  6. Работа из любой точки мира. Да, есть такое. Я работал из Москвы и Германии. Но со временем я понял, что лучше это время посвятить отдыху, экскурсиям и другим мероприятиям, нежели работа.
  7. Меньше отвлекают от работы. Чего стоит только один опоздун, который заходит в кабинет, шуршит пакетом и здоровается за руку со всеми 9-тю человеками, с каждым, в отдельности.

Плюсы


  1. Проекты, опыт, деньги.
  2. Освобождается время, особенно для жителей столиц. Его можно потратить опять на работу, на отдых, на семью, на хобби. В последние год-два я уже стал думать насчет 4 дневной рабочей недели.
  3. Снижаются расходы (транспорт, одежда и обувь изнашиваются меньше).
  4. Шанс на более легкую релокацию. Как в столицу, так и зарубеж. Ведь работа уже есть.
    Да и в целом проще найти работу, ведь релевантный опыт тоже уже есть.

Минусы


  1. Многие интересные проекты все равно проходят мимо.
  2. Не все компании относятся одинаково и к офисникам и к удаленщикам.
  3. Удаленка размывает границу между работой и домом. Для работы достаточно открыть ноутбук. Ты всегда в режиме боевой готовности.
  4. Сузился круг общения, из поля зрения пропали коллеги. Спустя 10 лет уже хочется поболтать с коллегами на более отвлеченные темы. Но, конечно же, я не одичал, есть родители, семья и друзья.

ЧаВО


Темы, которые остались за кадром:
  1. Налоговая. Тьфу тьфу тьфу). Были штрафы по 50 рублей за непредставленные документы. Ошибочные списания средств из-за багов в программах в налоговой и пенсионном фонде. Пришлось побегать с возвратом.
  2. ИП. Почти все время я был на УСН 6%. Последние года три перешел на патент. Патент позволяет сэкономить на налогах с определенной планки доходов. Но нужно следить за налоговой нагрузкой. Банки начинают париться, если государству было уплачено меньше 0,9% от оборота. Стоимость патента в регионах составляет 10-20 тыс. рублей плюс взносы в ПФР порядка 40 тыс. на 2020 год. Итого максимальный безопасный оборот в районе 5-6 млн. рублей в год. С УСН таких проблем нет, там и так государству уходит 6%.
  3. Валютный контроль. Как известно все ИП, которые ведут внешнеэкономическую деятельность, обязаны проходить валютный контроль в банках. Это кипа документов, транзитные счета, доплата налогов, если курс изменился слишком сильно, дополнительные расходы и нервы. Есть хитрость. В связи с тем, что имущество ИП и физ. лица не разделимо (ИП отвечает по обязательствам всем своим имуществом), это работает и в другую сторону. Доходы от деятельности ИП, поступившие на расчетный счет физ. лица подлежат налогообложению по ставке ИП. Таким образом, можно открыть валютный счет в банке на физ. лицо и именно его предоставить в зарубежную компанию для оплаты. Физ. лицам проходить валютный контроль не требуется. Но стоит внимательно почитать договор или проконсультироваться с сотрудником банка. Там может быть запрет на поступление доходов от предпринимательской деятельности.
  4. Банки. Боятся попасть по 115 ФЗ. Поэтому ставят заградительные комиссии при выводе средств со счета ИП на счета физ. лиц, даже на свой собственный. Бесплатно можно вывести в районе 100-200 тыс. рублей в месяц, в каждом банке по-своему, далее комиссии 1-3-5%. Рекомендую искать лучше. Пока еще есть банки с лимитом в 500 тыс.
  5. Сертификаты. В 2009 я получил сертификат MCPD: Enterprise Application Developer. Проапгрейдил я его один раз в 2011. И помог он мне тоже один раз. В 2018. На собеседовании в немецкую компанию. Что-то вроде «Я вижу у вас есть сертификат, смысл вам задавать технические вопросы?».

Let's block ads! (Why?)

Справочная: что такое QoE и зачем с ним работать провайдеру

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


/ CC BY / Norlando Pobre

Что понимать под QoE


Единого определения для Quality of Experience («качество восприятия») в ИТ-индустрии не существует. Но обычно под QoE понимают общую удовлетворенность клиентов услугами интернет-провайдера.

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

Главной метрикой объективных факторов QoE выступает качество обслуживания (QoS). В этом случае впечатления абонента формирует производительность и стабильность сети, наличие/отсутствие артефактов при просмотре видео, а также посторонних щелчков и шумов в разговорах по VoIP.

Как измеряют QoE


Несмотря на то что часть факторов, влияющих на QoE, субъективны, качество восприятия пользователей можно измерить. В этой области идет большое количество исследований.
Метод определения зависит от сервиса или услуги (аудио, видео, стриминг и др.).

Речь и аудио. Используют так называемую E-модель, которую предложил Международный союз электросвязи (ITU). Она предсказывает опыт пользователей во время разговора по VoIP-связи, опираясь на характеристики оборудования и параметры сети. Эту информацию подставляют в формулу, коэффициенты которой подобраны на основе серии субъективных экспериментов.

$R=R_0-I_s-I_d-I_e+A$


Здесь, $R_0$ — это соотношение сигнал/шум, $I_s$ — учитывает громкость речи и наличие призвуков во время разговора, $I_d$ — уровень искажений, возникающий из-за задержек сигнала, $I_e$ — оценивает влияние используемых кодеков и оборудования. Что касается $A$, то это допустимое снижение качества QoE, с которым клиент готов мириться (например, в обмен на мобильность при подключении к Wi-Fi). Точные численные значения для каждого параметра можно найти в документации ITU.

Далее, коэффициент $R$ пересчитывают в Mean Opinion Score (MOS), который представляет собой усредненное значение качества восприятия пользователей. Формулу вы можете найти в работе инженеров на странице три.

У нас на Хабре:

Сетевые игры. Для оценки качества восприятия при игре на компьютере, ряд провайдеров использует G-модель. Её предложила группа инженеров из Нидерландской организации прикладных научных исследований (TNO). Она учитывает такие факторы, как латентность, джиттер и потеря пакетов сетевого подключения. Формула выглядит следующим образом:

$MOS=max(4,33-3,08∙10^{-9} X^3+1,18∙10^{-5} X^2-1,15∙10^{-2} X,1)$


За параметром $X$ скрыто влияние перебоев в работе сети на QoE. Он рассчитывается следующим образом:

$X=min(PING+0,686∙JITTER,650)$


Нидерландские специалисты протестировали формулу на таких играх, как Quake IV, Quake III, Unreal Tournament, Counter Strike и Halo. Точность метода составила порядка 98%.

Видео. На QoE при просмотре видео влияют такие факторы, как яркость и контрастность картинки, цветопередача, наличие видимых искажений и артефактов. Иногда качество восприятия для видео измеряют с помощью серии субъективных тестов. Эксперты смотрят видеофрагменты и оценивают их качество по пятибалльной шкале — затем результаты усредняют. Чтобы исключить человеческий фактор, применяют специализированное ПО вроде Video Quality Metric, который находит на видео различные артефакты: размытие, неестественное движение картинки, шум.

Как мы измеряем QoE


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

RTT (round-trip time). Это — время, необходимое для передачи сигнала, его обработки и подтверждения получения.


/ Расчет RTT / Слайд вебинара VAS Experts по теме QoE

Ретрансмит. Система регистрирует повторные попытки передачи данных, которые происходят каждый раз, когда клиент не дожидается ответа SYN/ACK от сервера в течение 10 секунд.

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


/ Графики изменения RTT / Слайд вебинара VAS Experts

Зачем это интернет-провайдеру


Мониторя ошибки при подключении, можно оценить общее состояние сети. Если они систематические, это стоит удостовериться в отсутствии проблем ИТ-инфраструктурой.

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

В блоге VAS Experts:

Let's block ads! (Why?)