Quantcast
Channel: Найцікавіше на DOU
Viewing all 8151 articles
Browse latest View live

Android-дайджест #2. Красивый и отзывчивый UI

$
0
0

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

Общие вопросы

Официальные UI паттерны от Google.

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

Сервис для комбинирования цветовой палитры Material Design.

Android notification system: серьёзные изменения в версии 5.0.

Подробный мануал на CodePath по Defining Custom Views.

Bitmap quality, banding and dithering: материалу уже 4 года, но принципы остаются актуальными.

Как делается 2D рисование: слайды (часть 1, часть 2) от ребят из CoreServlets.

UI поток, как и зачем его не блокировать: официальная документация, хорошие материалы есть и на Хабре (первый, второй).

Анимации и перемещения

Весь раздел документации: Property Animation, View Animation, Drawable Animation. Мне здесь самым интересным показался Android Property Animation framework.

Плавное появление элементов: самый незамысловатый способ — атрибут animateLayoutChanges. Документациячестно предупреждает, что возможна некорректная работа со вложенными элементами.

Cogito Learning ёмко рассказывает про интерполяции в анимациях. Кстати, на этом ресурсе можно найти и другие UI темы.

Scenes and Transitions API (начиная с Android 4.4): описание, видео с DevBytes. Backports для более старых версий ОС: первый, второй.

Cyril Mottier про нестандартные анимации на примере реального приложения Custom Animations With Fragments.

В Lollipop стали доступны изящные переходы между экранами (по состоянию на начало января в библиотеках совместимости для старых версий ОС они не представлены). Почти такого же эффекта, но приложив значительно больше усилий, можно добиться и на старых версиях: рассказывает Chet Haase, архив (!) с исходным кодом примера.

Библиотеки, которые помогают сделать красиво

Rebound: «пружинящие» анимации от ребят из Facebook.

EasyAndroidAnimations: коллекция из 50+ кастомных анимаций.

StickyListHeaders: makes it easy to integrate section headers in ListView.

PhotoView: ImageView for Android that supports zooming, by various touch gestures.

Android Sliding Up Panel: provides a simple way to add a draggable sliding up panel (как в Google Music, Google Maps и Rdio).

A simple showcase to show off Android’s new Material Design and some other cool new stuff. Демо приложения на Play Store у них совсем слабое сейчас, но вот код может быть полезен.

SwipeListView: An Android List View implementation with support for drawable cells and many other swipe related features.

Библиотеки для асинхронной загрузки изображений, если вдруг кто о них не знает: Universal Image Loaderи Picasso. В той или иной мере эта функциональность также реализована в ionи Volley.

Некоторые частные случаи, о которых полезно знать

Опыт внедрения библиотеки Intel Integrated Native Developer Experienceдля работы с видео.

Иногда азиатские производители делают свой очень кастомизированный UI, который не получается переопределить стандартными средствами. Пример — случай с популярным смартфоном Lenovo.

Android Performance Case Study by Romain Guy. Довольно много внимания уделено именно UI.

И напоследок — почти философские рассуждения от Mark Murphy Material Design: Strategic Considerations.

← Предыдущий выпуск: Android дайджест #1


24 января, Киев — Ops For Dev Conference at Cogniance

$
0
0

Компания Cogniance хочет пригласить вас на конференцию Ops For Dev.

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

Мы расскажем о том как:
— развернуть dev environment при помощи Vagrant.
— Docker — зачем он нужен и почему вокруг него так много шума.
— Что делать когда серверов больше чем один? Ansible спешит на помощь.

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

Расписание:
11.30 — 12.00 Регистрация участников, кофе
12.00 — 12.20 Вступительное слово
12.20 — 13.20 «Dev environment with Vagrant»
13.20 — 13.30 Кофе-брейк
13.30 — 14.30 «Docker 101»
14.30 — 15.00 Обед
15.00 — 16.00 «Make your own Docker»
16.00 — 16.15 Кофе-брейк
16.15 — 17.15 «Ansible 101»

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

22 — 23 января, Киев — Курс Certified ScrumMaster от ScrumAlliance на русском языке

$
0
0

Certified ScrumMaster — одна из сертификационных ступеней обучения международной организации ScrumAlliance. Цель этой программы: обучение скрам-мастеров — процессных лидеров проектов, с прохождением теста и сертификацией.

Это официальный тренинг от ScrumAlliance, проводящийся на русском языке.
Тренинг завершается допуском к онлайн-тесту для получения звания «Certified ScrumMaster».

Зарегистрироваться

Аудитория
— менеджеры проектов, которые хотят освоить Agile-принципы управления проектами
— тим-лиды и тех-лиды, ищущие свое место в Scrum команде
— де факто Скрам-мастера существующих проектов
— все — кто видит себя Скрам-мастерами — агентами по внедрению гибких итеративных подходов разработки

Цели тренинга
Заложить мощный фундамент для практикующих Скрам-мастеров, Agile-практиков и будущих коучей своих команд.

Процесс сертификации
Двухдневный тренинг в открытом или корпоративном варианте, с доступом к прохождению теста он-лайн и последующим получением сертификата ScrumAlliance.

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

Программа курса не предполагает рекоммендаций тренерами по адаптации процесса в комрании и детального рассмотрения рабочих ситуаций. Для этой цели мы работаем в формате коучинга, на основе полученной участниками теоритической подготовки в ходе тренинга.

Расписание работы, ориентировочно:
9:30 — регистрация, открытие дня
10:00 — начало программы
13:00 — перерыв на обед
18:00 — завершение дня

Тренер
Наталья Тренина, Agile коуч, управляющий партнер компании SCRUMguides, сфокусированной на построении эффективных процессов и создании сильных команд.

Подробности и регистрация

23 января, Киев — Сертификационный класс “Улучшаем доставку с помощью Канбан метода” в Киеве

$
0
0

SCRUMguides и университет LeanKanban приглашают вас на двухдневный класс «Улучшаем доставку с помощью Kanban метода». Этот класс включает в себя необходимый объём информации, вырабатывает навыки достаточные для начала использование метода Канбана в вашей организации. Этот тренинг является официальным тренингом университета LeanKanban, основанным Дэвидом Андерсоном — автором Канбан метода. Все участники получат международный сертификат о прохождении тренинга университета LeanKanban.

Зарегистрироваться

Аудитория участников

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

хочет начать работать с Канбан-системами и ищет первоначальной поддержки;
уже использует Канбан-системы и хочет проверить, соответствует ли его реализация лучшим практикам в индустрии и почерпнуть новые идея для улучшения своей системы.
Кроме того, тренинг помогает синхронизировать понимание Канбана для всех участников, ввести общий «язык» терминов, одинаково понимать термины, практики и, самое главное, цели процессных улучшений с использованием Канбан-систем.

Формат проведения

2-хдневная программа класса расширена предварительной самостоятельной подготовкой и «домашними заданиями». Это даёт возможность максимально эффективно использовать время на тренинге для дискуссий, индивидуальных и групповых упражнений.

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

Программа

1. Обзор Канбан метода
История, принципы, ценности
2. Внутренние и внешние источники неудовлетворенности процесса
3. Анализ балланса между спросом и возможностями системы
4. Управление рисками с канбан: классы обслуживания
5. Дизайн Канбан систем
— тикеты Канбан системы
— Канбан доски
— Ограничение работы в прогрессе (WIP)
— Политики и формальные правила
6. Очереди, управление потоком, метрики, измерения
— Закон Литтла
— Кумулятивная диаграмма потока (Cumulative Flow Diagram)
— Диаграмма распределения времени выполнения (Lead time distribution chart)
— Диаграмма контроля (Control chart)
7. Встречи в канбан
8.Полномасштабная симуляция Канбан системы

Почему Канбан — метод, а не Скрам

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

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

Участники научатся

— Определять внутренние и внешние источники неудовлетворенности процесса
— Анализировать баланс между спросом и возможностями системы
— Моделировать рабочий процесс
— Создавать канбан системы
— Выбирать частоту различных событий/встреч
— Определять классы обслуживания
— Создавать плана развертывания Канбан системы

Тренер

Кирилл Климов — гид, коуч, тренер и консультант в сфере гибких разработки (Agile).

Расписание

Общая длительность — 2 дня, с расписанием:
9:30 — знакомство, утренний кофе
10:00 — начало программы
13:00-14:00 —перерыв на обед
18:00 — конец программы

Перерывы на чай-кофе в режиме 90/15 мин.

Что вы получаете

— Два дня высококачественного обучения от лидера в обучении гибким методологиям разработки в восточной Европе
— Обеды, кофе-брейки во время курса
— Учебные материалы
— On-line профиль и членство в университете LeanKanban (LKU)
— Cертификат об окончании курса от университета LeanKanban
— Электронную книгу Дэвида Андерсона «Kanban: Successful Evolutionary Change for Your Technology Business», 2010
— 16 SEU (Scrum education unit) для вашей CSP сертификации от СкрамАльянса
— 16 PDU для членов PMI
— Возможность и знания для изменения работы вашей организации

Зарегистрироваться

5 февраля, Киев — Certified Scrum Product Owner от ScrumAlliance на русском языке в Киеве

$
0
0

Это официальный классот ScrumAlliance

Цели тренинга

1. Получить навыки помогающие эффективнее взаимодействовать со своими клиентами,стейкхолдерами и командами разработки, а именно:
— Доносить идею продукта: быстро, конкретно, лаконично, визуально.
-Описывать категории клиентов и пользователей, их ключевые характеристики, ценность продукта для каждого сегмента, желаемое влияние на их поведение.
— Проводить интервью пользователей для получения обратной связи по продукту.
— Отталкиваясь от бизнес-целей, определять приоритеты разработки.
— Видеть альтернативные способы достижения бизнес-эффектов и искать разные варианты реализации требований (по сложности, стоимости, копируемости и т.п.)
— Формулировать гипотезы требований и проектировать метрики для их проверки.
— Строить высокоуровневые модели требований и сценарии использования.
— Формулировать требования в виде, необходимом для их реализации командой
— Знать преимущества гибкой разработки и научиться их использовать
— Знать ответственность, права и обязанности роли Scrum Product Owner
— Понимать структуру процесса Scrum и особенности ролевого взаимодействия
— Управлять объемом и выбирать «достаточно хорошие» решения на текущем этапе.
— Понимать суть оценок и принимать участие в процессе планирования работы
— Понимать критерии завершенности и принимать реализованные требования
— Получить ответы на вопросы по организации процессу разработки на базе Scrum

2. Получить сертификат Certified Scrum Product Owner от международно признанной организации Scrum Alliance.

Форма проведения тренинга

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

Основной (сертифицирующий) тренер программы

Наталья Тренина — Agile коуч, управляющий партнер компании SCRUMguides, сфокусированной на построении эффективных процессов и создании сильных команд.

Зарегистрироваться

Стоимость участия

Специальная зимняя ценана первые два класса в 2015-м: $950!
*Цена в грн зависит от Межбанковского курса доллара на момент выставления счета

В стоимость входит членство в ScrumAlliance, обеды и кофе-паузы.

Быть vs. стать программистом

$
0
0

Представим ситуацию: вы зашли в больницу. И так, между делом, подходите к врачу и спрашиваете: «Подскажите, пожалуйста, как стать врачом?». Или вас в качестве свидетеля позвали на суд, и в перерыве между слушаниями вы обращаетесь к адвокату с вопросом: «Милейший, подскажите, как мне в этой стране стать адвокатом?». Затем вы идете в ресторан, и там уже зажигаете с шеф-поваром: «Скажите пожалуйста, не поздно ли становиться поваром, когда тебе уже за 50?». Далее возможны вариации на тему, какую поваренную книгу читать, на какие кухарские курсы записаться и как проходить собеседования на должность помощника повара.

Примерно то же самое происходит, когда к программистам обращаются по карьерным вопросам: «посоветуйте 50 книг», «с чего начать?», «как правильно программировать?», «объясните ООП» — всё это из одной оперы. Конечно, хочется человеку помочь, да и дать совет — дело нетрудное. Но волей-неволей начинаешь задумываться, почему у одних людей такие вопросы возникают, а у других — нет.

«Хочешь петь — пей». Хочешь программировать — читай книги?

Одни открывают Notepad и начинают с ходу фигачить хоть и простые, но скриптики, а другие не собираются писать ни строчки до тех пор, пока не будет готова солидная теоретическая подстилка в виде тех самых 50-тикниг. При том, что для теоретической базы сгодилась бы и десятая доля того объема литературы. Сдается мне, кто-то старается оттянуть самое важное (написание кода) напоследок.

Вся эта история напоминает жаждущего страдальца, который вовсю смотрит видео о том, как научиться кататься на роликах или скейте, делает зарисовки и даже визуализирует с закрытыми глазами, но всё так и не рискует выбраться на роллердром. Если он там и появляется, то нечасто, — только чтобы набить пару синяков, и всю оставшуюся неделю торчать у монитора со вскинутыми к небесам руками: «не получается!», «посоветуйте что-нибудь!». Так и хочется спросить: «а ты пробовать пробовал?».

Со всем этим потоком новичков в IT — та же беда. Если им по душе программирование и тестирование, то почему эта страсть просыпается аж в 25-30+ лет?В аккурат к завершению карьеры юриста или фитнес-тренера. Где вы были раньше? В то время как другие начинали писать свои первые скрипты в 13-14 лет,не называя это программированием, вы сидели за теми же компьютерами, но руки почему-то не чесались установить Visual Basic или C++.

IT-труба зовет

Бывают ситуации, когда человек, поскользнувшись на банановой кожуре и ударившись головой, вдруг в свои 32 обнаруживает, что его дико прёт программирование. Но тогда у него не возникает наивных вопросов, на которые он и сам бы мог найти ответы, — как в случае (описанном по ссылке выше), когда человек совершенно случайно и безо всяких советов находит туториалы по Linux и Perl, и его затягивает в программирование. То есть не человек, круша горы и распихивая локтями айсберги, пробивается к командной строке и компилятору, но они сами тянут его в водоворот технологий. Тот случай, когда не ты выбираешь IT, а IT выбирает тебя.

Я сторонник теории, что каждый человек уже при рождении умеет всё. Одна из задач жизни — откопать в себе эти навыки. Как в истории про камень, который мастер много дней колошматил зубилом, и сделал великолепную статую. Люди подходили, с восхищением ахали и говорили умельцу: «Вы создали невероятный шедевр!», на что он отвечал: «Я ничего не создавал, статуя уже была заложена в камне. Я лишь убрал всё лишнее».

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

Определить в себе программиста

Если вы пишете код, и вам это приносит удовольствие, — вы программист. И совершенно неважно, насколько ваш код оптимален, леп и пригож. Здесь достаточно следовать принципу из к/ф «Мирный воин»:воин не имеет отношения к совершенству. Вы как воин-программист не обязаны быть совершенством. Человеку лучше получать кайф, будучи посредственным разработчиком, чем страдать, будучи богом программирования.

Залётные казачки vs пытливые умы

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

«Но ведь в IT слишком много всего, чтобы будущий зеленец-джунец знал, с чего начать. С этими вопросами он и обращается к более опытным товарищам!», — крикнет бородатый мужик из зала. Да, мы уже слышали безобидное «подскажите, с чего начать». Здесь и зарыта собака. Человек, которому и правда интересно, будет скакать по разным темам, откусывая здесь и там — не только потому, что этого требует его pet-project, но и потому, что это чертовски интересно, и он вообще не понимает, как можно быть настолько дерзким, чтобы пользоваться интернетом, не зная хотя бы основ HTTP.

Быть или стать программистом

Я видел людей из обоих лагерей. Те, которые «быть» — никогда не заморачивались ни порядком изучения технологий, ни волшебными методикамиразработки софта. Кое-кто из них за всю жизнь не прочитал ни одной книги по программированию, хоть и успел уже выпустить пару фреймворков. Эти люди кайфовали от того, чем занимаются, программировать им удавалось чертовски хорошо. Тогда как товарищи из второго лагеря, которые «стать», делились на две категории:
1. Те, которые и так были программистами, но сами этого ещё не знали (например, начинали карьеру сисадминами, после чего переходили в разработчики). По сути, это невыявленные самородки из лагеря «быть», эдакие латентные программисты.
2. Те, которые решили освоить дело, к которому у них нет ни навыков, ни души. «Вдруг со временем понравится?»

Что ж, со временем, может, и понравится. Хорошая новость для заблудших ковбоев заключается в том, что терпение и труд таки всё перетрут — даже мою кошку удалось научить писать CRON-таски и деплоить на Tomcat.

Но есть для них и плохая новость: стать программистом тяжелее, чем быть им. Здесь требуется особый склад ума, умение мыслить абстрактно, логический аппарат и ещё много всего, в том числе и чугунная пятая точка. Хорошо, если всё это есть уже на старте, иначе придется потом ломать себя и перестраиваться. Захочет ли человек только ради зелёных купюр пересмотреть 30% своего времени (если программированием заниматься лишь в рабочее время) и начать мыслить иначе — каждый выбирает сам. Но хорошо бы все-таки не потерять себя и не остаться тем самым неотесанным камнем-выскочкой, который захотел под шумок срубить капусты.

Опрос по языкам № 6

$
0
0

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

14 февраля, Киев — Моделирование бизнес-процессов. От IDEF0 до BPMN

$
0
0

С чем в первую очередь работает бизнес-аналитик, что он изучает, улучшает, предлагает автоматизировать? Бизнес-процесс! Как изучить существующий процесс, понять какие в нем есть проблемы и перспективы для улучшения? Построить его модель! Тренинг посвящен изучению наиболее популярных нотаций бизнес-моделирования. В ходе тренинга будут рассмотрены нотации, определены их достоинства и недостатки, сферы применения, основное внимание будет уделено IDEF0, BPMN. Около 50% времени будет отведено практическим занятиям и рассмотрению реальных ситуаций из практики.

Цели мероприятия:
— Дать слушателям понимание предназначения и важности бизнес-моделирования для проектов по автоматизации и оптимизации бизнес-процессов.
— Понять назначение и правила использования элементов нотаций IDEF0, DFD, Erricson-Penker (расширение UML), BPMN при бизнес-моделировании.
— Научиться разрабатывать и читать модели в нотации IDEF0 и BPMN 2.0.
— Освоить способы выявления входных и выходных сущностей, ресурсов/механизмов и регламентов, правила — функциональной декомпозиции бизнесс-процессов для нотации IDEF0.
— Изучить ряд паттернов и антипаттернов для моделирования в BPMN.

Программа
— Моделирование бизнес-процессов.
— Элементы нотации IDEF0, их бизнес-смысл и правила изображения.
— Структура IDEF0-модели, принципы функциональной декомпозиции.
— Элементы нотации DFD, их бизнес-смысл и правила изображения.
— Элементы нотации Ericsson-Penker, их бизнес-смысл и правила изображения.
— Элементы BPMN, их бизнес-смысл и правила изображения.
— Оркестровка и межпроцессное взаимодействие в ВPMN: правила, паттерны и антипаттерны

Продолжительность: 8 часов.

Наш тренер:
— Профессионал-практик Business Analyst.
— Кандидат технических наук.
— Сертифицированный бизнес аналитик — Certified Business Analysis Professional (CBAP®).
— Имеет 14-летнийопыт в сфере информационных технологий, 10-летнийопыт в системном и бизнес-анализе.
— Принимал участие в более чем 40 проектах по автоматизации бизнес-процессов заказчика.

Целевая аудитория
Курс будет полезен для всех, кто связан с моделированием, разработкой и автоматизацией бизнес-процессов:
— бизнес-аналитики, бизнес-конультанты;
— системные аналитики;
— руководители проектов;
— архитекторы компьютерных систем;
— разработчики (автоматизация бизнес-процессов).

Акции:
— 20% — при предъявлении студенческого билета;
— Приведи друга и получи скидку 10% каждому;
— 40% — при заказе корпоративного обучения от 10 человек.

По просьбе наших слушателей мы выделили темы «Использование языка UML 2.0» (16 часов) и «Моделирование бизнес-процессов. От IDEF0 к BPMN» (9 часов) с общего курса Бизнес-аналитика (50 часов).
И сейчас Вы можете пройти полный курс «Бизнес-аналитика» (50 часов) или отдельные тренинги «Использование языка UML 2.0» и «Моделирование бизнес-процессов. От IDEF0 к BPMN».

Больше в Facebook

Запись на курс

Занятия проводятся два раза в неделю в вечернее время с 19.00 до 21.00, также формируются группы выходного и буднего дня.

Получить дополнительную информацию или записаться на курсыможно, отправив электронное письмо на адрес: post@aprit.orgили по тел. +380 (96) 540 98 19 (контактное лицо — Ирина).


7 марта, Киев — Топ 10 процессных практик разработки программного обеспечения

$
0
0

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

Программа мероприятия:
— Правила игры при разработке ПО;
— Центральное хранилище;
— Управление требованиями;
— Планирования и оценки;
— Управление инфраструктурой;
— Трассирование;
— Политика кодирования;
— Анализ производительности;
— Метрики;
— Конфигурационное управление.

Продолжительность: 3 часа.

Наш тренер:
— Имеет 14-летнийопыт в сфере информационных технологий (4 года — в роле Database Developer, 2 года — Teamlead, 6 лет — Project Manager, 2 года — Program Manager)
— Принимал участие в более чем 30 проектах с разработки программного обеспечения.
— Имеет опыт внедрение процессных практик в проектах по разработке программного обеспечения.

Больше в Facebook

Запись на курс

Занятия проводятся в вечернее время с 18.00 до 21.00, также формируются группы выходного и буднего дня.

Получить дополнительную информацию или записаться на курсыможно, отправив электронное письмо на адрес: post@aprit.orgили по тел. +380 (96) 540 98 19 (контактное лицо — Ирина).

Дайджест приколов 2014 года

$
0
0

По традиции — подборка всех приколов прошедшего года. Всем замечательного настроения!

Ссылки

The 20 Toughest Job Interview Questions Heard At Apple, Google, Twitter, And Others.

Кем вы меня видите в вашей компании через пять лет.

Не дразните программиста.

Прощальное письмо программиста.

25 вещей, которые поймут только интроверты.

BOOTSTRA.386

Fully Functional 1 KB Hard Drive in Vanilla Minecraft.

The Simpsons in pure CSS.

CSS-каламбуры.

Turbo Visionдля C#/XAML.

Игры

Untrusted, a JavaScript adventure game you play by modifying its source.

CodeFights: How Fast Can You Debug?

Pixactly — игрушка для проверки глазомера

Regex Crossword.

XSS game.

Game of Hacks.

Языки программирования (кстати, принимайте участие в опросе о языках)

Python with Braces.

ArnoldC — Arnold Schwarzenegger based programming language.

D# (DogeSharp).

The Difference Between Java and JavaScript.

If programming languages were weapons.

Картинки

Пример продуманного интерфейса



Premature optimization


If Microsoft made a smart watch...


Syntax highlighting

Кто такой data scientist:

How to Screenshot in 1983:

PHP Streetfighter






Maslow 3.0

Твиты (кстати, читайте DOU в твиттере)

Гифки

How a junior feels during a code review

git push --force

Как взламывать банки

Pair programming

Skimming emails from recruiters

Разблокировка всех существующих айфонов одним движением


Видео

JavaZone 2014: Game of Codes

JavaZone 2014: Writing Bad

JavaZone 2014: House of Codes

The 10,000 Domino Computer

РУССКАЯ операционная СИСТЕМА

The Testers Ballad

The Expert

Как я ездил «доставлять» в Москву

$
0
0

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

Содержание:

0. Предыстория: как и почему я поехал в московский офис Riot Games
1. Оффер, процесс переезда и отношение компании
2. Квартиры в Москве
3. Транспорт и такси
4. Питание и продуктовые магазины в Москве
5. Быт и то, что вокруг
6. Досуг: кафе, персонал, посетители
7. Досуг: парки и прогулки
8. Работа: офис, условия труда
9. Работа: коллектив, ценности, поведение
10. Политическая ситуация
11. Почему я решил вернутся в Киев
12. Выводы и полученный опыт
13. В качестве бонуса: казусы и интересные факты

0. Предыстория: как и почему я поехал в московский офис Riot Games

Никакого желания работать в РФ у меня не было и нет. Рекрутеры Riot Games просмотрели мой профиль в LinkedIn, я это заметил и почитал о компании, поглядел отзывы на Glassdoor, проверил наличие открытых позиций. Стало интересно: пройду ли? Без особых надежд я подал application на позиции QA Lead и QA Manager в главный офис в США в городке Санта Моника (на самом побережье около Лос Анжелеса).

Со мной связался тот же рекрутер, который смотрел мой профиль. Он сказал, что на эти позиции они ищут человека строго в США, но взамен предложил мне позицию Project Manager’а в московском офисе. Главная обязанность — построить адекватный процесс работы всех команд. Также было оговорено, что после того, как работа в московском офисе будет налажена (около года), можно переехать работать в США в качестве посла от RU&CIS региона (или на другую позицию), что, собственно, и заинтересовало. Задачи и требования были вполне реализуемыми за год, а я как человек с 20+ летним стажем «гейминга» всегда хотел совмещать работу и хобби.

Офис в Москве на тот момент состоял всего из 12 человек. В региональных офисах Riot Games нет разработки продукта (League of Legends), но есть локализация, поддержка игроков, комьюнити отдел, отдел маркетинга и eSports отдел.

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

  • собеседование с HR (Skype), с Senior PM европейского региона (Skype),
  • два собеседования с московскими Senior-ребятами и знакомство с командой непосредственно в Москве (компания оплатила мой перелёт, business номер в отеле, ужин в ресторане и т.д.),
  • собеседование с главным человеком по всем регионам (Skype),
  • собеседование еще с одним человеком из Head Stuff-а (Skype).

Могу сказать, что в Riot Games очень щепетильно подходят к подбору персонала. Заметно профессиональное и деликатное отношение, я был очень доволен.

Плюсы:профессиональный подход, отношение компании, компенсации.
Минусы:нет.

1. Оффер, процесс переезда и отношение компании

Успешно пройдя все этапы собеседования, я получил предложение.

Сам оффер состоял из ЗПи опциона (цена продажи акций, полученных с опциона за год, сравнима с годичной ЗП при текущем курсе) + релокейшен бонусв виде полной оплаты переезда (с женой), всех вещей и аренды квартиры на два месяца за счёт компании. Пересматривать оклад пообещали раз в год. Налогс ЗП — 13% — изымался автоматически. Оформлен я был как «высококвалифицированный специалист». Все расходы взяла на себя компания.

Размер ЗП озвучить не могу, но могу сказать, что изначально(!) она была существенно выше, чем в Киеве, — естественно, в абсолютных значениях. Однако это скорее исключение из правил и общая политика Riot Games, чем тенденция для Москвы. По тому, что я видел и знаю, я получал практически топовую ЗП для IT-сферы Москвы.

Еще нюанс — ЗП фиксируется в рублях и никак не пересматривается при изменении курса, но об этом дальше :)

Социальный пакет, помимо больничных и отпусков, включал «печеньки» в офисе (разнообразные снэки и напитки), частичную оплату ланчей (200 рублей в день), iPhone 5/Galaxy S4 + 3G/связь, страховка (для себя и для семьи: жена, дети), корпоративное такси, проездной на метро и «особый» доступ в игре. В планах был и абонемент в зал.

Пакет побольше стандартного для Украины, но куда меньше стандартного для Riot Games в США.

Компания оказывала полную поддержку в процессе всего, что было связано с переездом, документами, оформлением, проживанием. Даже, точнее, всё делалось за меня. Я лишь ставил подписи. Очень лояльно и профессионально, этим я был приятно удивлён.

Плюсы:ЗП существенно выше рынка, опцион (сравнимый с годичной ЗП при реализации акций), хороший релокейшен пакет, хороший соц. пакет.
Минусы: фиксация ЗП в рублях со всеми вытекающими.

2. Квартиры в Москве

Если кратко — квартиры очень дорогие и очень плохие. Цена аренды недвижимости за пределами центра в три раза выше, чем в Киеве, в центре — в пять.

Квартира, что нам понравилась, — однокомнатная студия в 45 метров с хорошим ремонтом в 10 минутах ходьбы от офиса на метро «Полянка» стоила порядка 90 тыс. рублей в месяц (на то время $2600). Естественно, это был перебор.

Мы сняли жилье в 10 минутах ходьбы от ст. м. «Нахимовский Проспект» (что-то типа района метро «Дарница» в Киеве) по той же ветке. Это была двухкомнатная квартира в 60 квадратных метров с откровенно средним ремонтом, которая стоила 46 000 руб/мес ($1350). Я добирался в офис «от двери до двери» за 30-35 минут,что для Москвы граничит с рекордом.

В отличие от Киева, в Москве найти квартиру от «хозяина» без агентства шансов нет. Так что платить надо сразу не 2.5 цены (первый и последний месяц + 50% риэлтору), как в Киеве, а три (риэлтору надо заплатить 100%). То есть единоразово приходится выкладывать достаточно крупную сумму.

Квартплату на себя берёт хозяин квартиры. По счётчикам за воду и свет выходило около 3000 рублей ($90) и еще 700 рублей ($18) за интернет в 100 мегабит.

Прежде чем выбрать эту квартиру, мы посмотрели около 15 разных вариантов, и все они были «один лучше другого». Быстро снять хорошую квартиру в Москве стоит очень дорого. Нам, можно сказать, повезло.

Плюсы: нет.
Минусы: очень дорого, плохое качество, большая конкуренция.

3.Транспорт и такси

Транспортная системав Москве развита хорошо: из любой точки города можно или дойти пешком, или доехать на транспорте до метро за 10-15 минут.Но это, наверное, чуть ли не единственный плюс этого города.

Сама Москва в пробках практически круглосуточно, а пробки длиной менее 5 км вообще пробками не считаются. В любую точку города в любое время (не считая отрезка с 2 ночи до 6 утра) быстрее добраться на метро, чем на машине.

Пробки в Москве

Воздух плохой, очень много грязи зимой, хотя коммунальные службы работают раз в 10 лучше, чем в Киеве. Дороги хорошие во всей Москве в пределах МКАД-а, бензин дешевый (95-ыйстоил меньше доллара), но из-за пробок получить наслаждение от езды сложно. У меня не было машины, так что все прелести московских пробок я ощущал только в такси.

Метро — огромное. Народу в нём — немерено. Я ездил на работу к 11, поэтому ветка не казалась сильно загруженной. Но те, кто ездит на 9 утра, будут «давиться» и утром, и вечером. На каждой станции от 2 до 10 полицейских (на платформе, на входах и выходах, в переходах). Вообще полиции очень много везде. Удивило то, что женщин-полицейских примерно столько же, сколько и мужчин.

Полиция в метро

В вагонах метро часто пахнет перегаром, почти каждый второй стоит с телефоном или планшетом. В Киеве людей с гаджетами в метро в разы меньше. Проездной на метро на 60 проездов стоил 1300 рублей ($0.61 за проезд).

В метро люди делают всё по команде. Например, все становятся только справа на эскалаторе, даже если внизу огромная толпа. И только когда голос скажет: «Занимайте обе стороны», люди начинают становиться и слева, и толпа рассасывается. Для меня это было очень яркой метафорой поведения и мышления.

Такси в Москве очень дорогое, минимальный проезд стоит 500 рублей (~$15 на то время) в зависимости от службы. Поездка в аэропорт — 1500 рублей (~$40). Время подачи машины — около 30 минут, чаще дольше (если не заказываешь заранее). Сами автомобили достаточно качественные и ухоженные, «ланосов» нет.

Водители по городу ездят в два раза быстрее и в три раза наглее.

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

4. Питание и магазины

Тут примерно так же, как и с квартирами: дорого, некачественно и невкусно. Мы перепробовали практически всё местное произдводсво (сыр, колбаса, макароны, сосиски и т.д.) и не нашли того, что нравилось бы по вкусу. Даже овощи были пластиковые. В итоге питались в основном европейскими и украинскими продуктами.

Если не вдаваться в подробности, цена продуктов питания и алкоголя в сравнении с Киевом примерно в два раза выше, если речь идёт о производстве РФ. Для европейских товаров разница могла быть больше чем втрое. Цены в мелких локальных магазинчиках существенно выше цен в Ашанах. Но скупаться в Ашанах без автомобиля в принципе нереально, поэтому мы отдавали предпочтение местным магазинам типа «Перекрёсток».

Толпа в Ашане

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

Из того, что реально понравилось, — шоколадные сырки «Б.Ю. Александров». Действительно вкусные. Стоили они 25-35рублей (около $1) в зависимости от магазина.

В магазинах часто большие очереди.

Плюсы: вкусные сырки в шоколаде.
Минусы: высокая цена при низком качестве, невкусная еда (по сравнению с украинской и европейской), очереди и толпы.

5. Быт и то, что вокруг

Первое, что бросается в глаза, — очень много полиции везде и всегда. Складывается впечатление, что за тобой постоянно следят, и это доставляет дискомфорт.

За дворами следят и убирают, всё освещается даже ночью. Красят бордюры и двери, и даже подвальные этажи... Запах краски выветривается больше месяца. Хорошо это или плохо — решайте сами.

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

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

Сложно объяснить словами, но что у меня, что у жены было ярко выраженное ощущение пребывания в современном варианте СССР.

А от этого минусов куда больше, чем плюсов.

Плюсы: освещение, попытки облагородить город.
Минусы: много мусора и пьяных, «коренные» москвичи, вонь краски от «благоустройства» дворов.

6. Досуг: кафе, персонал, посетители

Тут примерно так же, как с магазинами. Цены в 1,5-3раза выше киевских независимо от уровня заведения. Персонал такой же приветливый, но, несмотря на это, хамить официантам или издеваться над ними — модно, и происходит это достаточно часто (в заведениях классом от среднего и выше). Особенно этим любят заниматься коренные москвичи.

Сама еда и напитки мало чем отличаются от заведений в Киеве, не считая цен. Посидеть в заведении среднего класса, скушать телячий стейк и выпить по 150 грамм среднего виски обойдётся примерно в 4000 рублей ($115) на двоих. В пабе пару кружек пива с закуской — около 1000-1200рублей ($30) с человека.

Отличное место посоветовали местные украинцы — «Тарас Бульба», — украинский ресторан, как ни странно. Цены ниже средних, все повара и практически все официанты — украинцы. Еда прекрасная, обслуживание — шикарное. Национальные песни и даже танцы, за визитку «правого сектора» дали скидку в 10% (и попросили никому её не показывать). Это место было глотком свежего воздуха!

«Тарас Бульба»

Плюсы: находясь в заведении «Тарас Бульба», забываешь, что вокруг Москва.
Минусы: вспоминаешь об этом, когда москвичи общаются с официантами. Цены.

7. Досуг: парки и прогулки

Мы побывали в Сокольниках, ВДНХ и парке Горького, до остальных не добрались. Ситуация во всех примерно одинаковая: парки очень большие, в них куда больше асфальта, чем зелени, натыкано множество «лотков» с фастфудом. У меня сложилось впечатление, что многие туда ходят поесть. Есть прокат роликов, велосипедов и 20 вариаций скейтов (такого у нас пока нет, к сожалению). В выходные в парках просто гигантские толпы народа. А в другие дни особо и не погулять.


Парк Горького

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

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

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

8. Работа: офис, условия труда

Офис располагался в БЦ «Легион 1» на метро Полянка. Места достаточно, хороший дорогой кофе, всякие плюшки, напитки. Насколько мне известно, Riot Games уже перебрались в другой офис на метро Белорусская, поэтому как там у них сейчас — не знаю.

БЦ «Легион 1»

По приезду получил много SWAGа — футболки, рюкзак для ноута, две худи (толстовки), всякую мелочь типа брелков, стаканов, чашек, ручек, блокнотиков и так далее. Всё брендировано и очень высокого качества. Мелочь, а приятно.

Рабочее место — ноутбук DELL ценой в $3000+ с док. станцией и дополнительно 24″ DELL IPS-монитор. Более мощного и производительного ноута у меня не было, и это при весе чуть более 3 кг.

Сами условия работы были вполне лояльными. Народ приходил в 11 и уходил около 20. Часто засиживались в офисе, чтобы поиграть в LoL или в AD&D, был местный крутой гейм мастер. Вообще практически весь коллектив — игроманы со стажем.

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

Работа подразумевала достаточно много командировок, за три месяца я успел съездить в США (почти два раза) и в Ирландию.

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

9. Работа: коллектив, ценности, поведение

Вот тут начинается самое интересное и невесёлое. Всего за несколько недель стало понятно, насколько мы разные и как всё устроено в московском офисе. Riot Games в России и Riot Games вне России — две большие разницы, как говорят в Одессе. Некоторые вещи меня откровенно шокировали и расстроили.

Есть такое понятие —«начальник всегда прав». В московском офисе было два менеджера, которые исполняли в том числе обязанности кантри менеджера, пока его искали. Не соглашаться с ними или их не поддерживать было категорически не принято. Это несмотря на то, что парни в рамках региональных задач принимали откровенно неэффективные и даже глупые, с моей точки зрения, решения. Это понимал практически весь коллектив и даже сами парни. Они отлично исполняли свои прямые обязанности, но с глобальным мышлением на уровне стратегии региона у них были проблемы. В итоге все молчали, боясь «показаться не командными игроками и, не дай Бог, быть уволенными». А эти два менеджера продолжали свою политику, потому что её изменение означало бы, что они более года занимаются фигней, и тогда уже уволили бы их.

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

Второй момент, который хотелось бы отменить, — зависть к уровню ЗП. Эти два менеджера не раз и прямо, и косвенно тыкали меня носом в то, что я получаю условно «много». Видимо, получал больше них, и им это как-то мешало жить.

Были и толковые ребята, с которыми мне было очень приятно и работать, и общаться, с ними я поддерживаю контакт и сейчас (Жека, Луиза, Саня, приветы вам!).

С приходом кантри менеджера «эффективных менеджеров» подвинули с определённых обязанностей, другим скилловым ребятами дали те роли и задачи, в которых они хороши. Ситуация стала налаживаться, некоторых уволили, разум восторжествовал.

К моему удивлению, практически весь коллектив был достаточно пропутинским, и Украину воспринимал как какой-то третий мир. От «эффективных менеджеров» не раз слышал прямые намёки на то, что я должен быть чуть ли не до конца жизни благодарен, что меня из «задрыпанной Украины» привезли работать в Москву, что «мне тут не Киев». Это меня откровенно и смешило, и раздражало.

Некоторые люди в коллективе считали, что они всегда правы и не могут ошибаться по дэфолту. Это настораживало. С такими сложно работать, они просто не слышат или не слушают, а поэтому и не думают.

Бюрокритическая составляющая тоже зашкаливала.

Процесс самой работы был организован очень бедно и неэффективно. Не было толком никакой стратегии региона, которая транслировалась бы на отделы. Работа отделов никак не была централизована. Слова «Jira» и «процесс», которые для всего Riot Games вне России были давно нормой, коллектив московского офиса пугали больше Правого Сектора и бандеровцев.

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

Всё это подтверждалось тоннами статистики и аналитики (в этом Riot Games очень круты) и отличными результатами у конкурентов, но у «эффективных» было тотальное нежелание что-то менять, ибо «работает — не трогай» — наш девиз. Но это уже в прошлом.
Еще Riot Games — очень «секьюрная» компания. Не побоюсь сказать, что Apple могут быть даже менее круты в плане защиты информации. Их подходы впечатляют, но никакой заслуги региональных офисов, в том числе и московского, в этом нет.

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

10. Политическая ситуация

Украину сами москвичиобсуждают куда меньше, чем это делает их телевизор, и чем обсуждаем Россию мы. По большому счету я могу сказать, что примерно половине вообще пофиг, еще 30% уверены в том, что «Путин — Бог и поднял Россию с колен». Остальные 20% понимают, как обстоят дела на самом деле (так как изучали историю не по Киселёву, видимо), но ни с кем, кроме своей семьи, это не обсуждают, ибо и не принято и чревато последствиями.

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

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

Когда живешь в обществе, где у 80% одно мнение, а 20% «воздержались» от высказываний, сложно даже теоретически представить существование другой точки зрения, и совершенно невозможно поверить в правдивость последней и ошибку доминирующего большинства.

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

Но я уверен: когда вся эта история начнёт непосредственно влиять на их жизни (уже начинает), будет только два варианта. Либо они таки поймут, в чём дело, и будет серьезное восстание, либо причиной всех проблем будет назван запад и США, а Путин и его режим опять наденут костюмы «спасателей России» и заставят всех в это поверить.

К моему сожалению, второй сценарий выглядит более вероятным (судя по мировой истории 20 века), но я надеюсь на первый. Далеко не все в Москве — мудаки, на то и надежда.

Плюсы: нет.
Минусы: за «Слава Украине» и любую украинскую символику задерживают, можно получить «15 суток» или более долгий арест. За признание присутствия на Майдане и открытую поддержку новой украинской власти на тебя заводят уголовное дело.

11. Почему я решил вернуться в Киев

Причин было очень много, но основных, по сути, две.

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

Второстепенная, она же рабочая: коллектив, в котором на то время «решали» некомпетентные (для такого уровня) люди, вставляли палки в колёса, подставляли и не давали нормально работать, при этом всячески настраивая остальных против меня. В 80-90-е годы в гос. секторе СССР боялись «начальства», подставляли и строили заговоры. Я думал, этот подход канул в лету, но оказалось, что в России он жив даже в IT-секторе. Пропало всё желание работать в таком обществе.

Всё вышесказанное не способствовало желанию еще около года ждать потенциального переезда в США.

12. Выводы и полученный опыт

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

Побывал в США и в Ирландии, понял, насколько Riot Games — классная компания вне России. Познакомился с отличными людьми, почерпнул их опыта и знаний.

Осознал, как сильно на самом деле у нас развит IT-сектор, насколько в Украине другие ценности и настроения в коллективе.

Контраст был очень острым. Понял, что то, как мы видим россиян, несколько отличается (в лучшую сторону) от того, какие они есть на самом деле. На личной шкуре прочувствовал, как это — жить в полицейском государстве без возможности иметь свою позицию или не соглашаться с позицией власти, что на несколько порядков усилило мои патриотические чувства к Украине.

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

Финальный вывод:
Riot Games — отличная компания в США и очень «зелёная» в России.
Работать в России — отказать.
Слава Украине!

13. В качестве бонуса: казусы и интересные факты

№ 1: Хозяева квартиры
Семейная пара с ребёнком 8 лет, очень любили побухать. Когда мы заселялись, отец этого семейства умудрился напиться прямо в процессе нашего заезда, и так сильно, что не смог ничего писать в договоре, еще и забыл у нас паспорт. В итоге моя жена заполняла документы под диктовку. Объяснил он это празднованием 8-гомарта, хотя заселились мы 12-гочисла. В общем, мы виделись раз в месяц, но трезвым я его не видел. :)

№ 2: «Ласковые» соседи
Несколько раз мы просыпались от многоэтажного мата соседей в 8 утра с криками: «Ты меня с*ка зае*ала, я из-за тебя на вторую ходку не пойду!», которые сопровождались плачем ребенка и очень громким хлопаньем дверьми. Это учитывая «тихих соседей», действительно хороший район и то, что у нас прямо под окнами отдел милиции, а её в Москве боятся, то есть ведут себя тихо.

№ 3: Стоимость такси
Тарифов много, есть варианты по километражу, времени, а также комбинации, фиксированные цены. Когда я не пользовался корпоративным такси, меня очень убивало, что доехать в аэропорт стоит 1400 рублей, а из аэропорта — 1700 (порядка $50), при этом по тарифу «по времени» эта цена должна была бы минимум в два раза ниже даже при пробке в 2 часа, но его взять нельзя.

Московские такси

Также подача такси с задержкой в час считается нормой, за которую никто не извиняется и не предупреждает. Москва же!

№ 4: У власти фашисты
Таксист увидел украинский паспорт и спросил меня: «Вам не страшно, что к власти пришли фашисты?» Я спросил, кого он имеет виду, он ответил: «Ну как, фашисты, которые эти, как их, — националисты-нацисты?!» На вопрос, понимает ли он, что значит каждое из этих трёх слов, он ответа не нашел. Дальше ехали молча.

№ 5: Где красивые девушки?
У нас в час пик в каждом вагоне метро есть как минимум одна симпатичная девушка. Вот в каждом, и минимум одна, чаще больше. В Москве я за 3 месяца видел полторы симпатичных (с натяжкой) девушки в метро, да и на улице в том числе. По возвращении домой было очень непривычно и приятно видеть так много красивых дам вокруг.

№ 6: Cocoa heads ивент в Москве
Сухие цифры:
— в Киеве 200 мест на ивент разбирают за день, приходит 250 человек.
— в Москве с безлимитным количеством мест, с рекламой и анонсами на протяжении четырёх месяцев пришло 13 (!) человек, одним из которых была моя жена.

Казусы от «эффективного менеджера»:

№ 1: А давайте не доплатим?!
При контракте на первый месяц (февраль) с Riot International мне должны были выплатить ЗП в $ на счёт в банке Киева. То есть на этом этапе Riot RU никак не фигурировал в отношениях между мной (счёт в украинском банке) и Riot International (банк в США).

Но мне было сказано, что из-за ситуации с Крымом(?!) отношения США и России в плане финансов напряженные (wtf, да и ведь Россия никак не фигурировала по этому контракту на первый месяц!), а потому мне заплатят в рублях на счёт в банке России по курсу 33. Это при коммерческом курсе в 37.5 (то есть на 14% меньше денег).

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

№ 2: «Слава Украине» — лозунг...
Мне в приказном тоне было сказано убрать из подписи в игровом аккаунте «Слава Украине!», потому что (внимание, цитирую):

«Это часть лозунга фашисткой партии Украины»© «Эффективный менеджер».

После примерно двухчасового диалога на тему и взаимного обмена ссылками об этом словосочетании я таки изменил его на «Украине Слава», ибо незаинтересованному человеку крайне сложно что-либо объяснить или доказать. Видимо, я с 7 лет состоял в фашисткой партии, так как с этих слов начинался каждый день в школе.

К слову, «Слава России!» и «Vive la France!» почему-то фашистскими не оказались...

№ 3: Эффективное решение, или «ой, всё»
По поводу инициатив, которыми я начал заниматься, была запланирована двухнедельная командировка в США. Всё было расписано и согласовано еще в марте, заранее были выкуплены билеты, забронирован отель, забуканы митинги, предупреждены люди в США, куплен за свой счет билет для жены (её ДР выпадало на командировку).

Но за неделю до поездки «эффективный менеджер» всё отменил. Причиной было то, что он внезапно не увидел смысла и необходимости в этой поездке, и что я, по его мнению, принес бы больше пользы в московском офисе в это время. К слову, в эти две недели майских праздников я сидел бы там один в прямом смысле слова, так как половина сотрудников в отпусках, а остальные — на All Stars ивенте во Франции.

Попытки объяснить, что тут мне работать в это время не с кем, что всё давно спланировано и что это ломает всю мою работу в щепки, никакого эффекта не дали. По эскалации в США офис на Director of Project Management (кстати, очень крутая, умная и образованная женщина, москвичка и противница Путинского режима) мне ответили, что регионы должны сами решать такого рода ситуации, так как central office не погружается глубоко в то, что происходит в регионах, — им есть чем заняться с аудиторией в 8 млн CCU, помимо офиса из 14 человек с CCU региона в 20k... А раз «эффективный» — временно и.о., то ему виднее. Oh well.

К тому же, те билеты, что были куплены Riot Russia, нельзя было сдать. Я потерял порядка 900 долларов. К тому же, полетели под откос планы, начатые проекты и инициативы по всей моей работе.

Это стало последней каплей для меня в работе с этим человеком и в России в целом, наряду со всеми остальными «радостями» и ситуациями. Решение было принято за вечер и «обмыто» с Жекой, сотрудником Riot Russia и одним из самых интересных людей, которых я встречал в свой жизни. После этого я поехал на 4 дня в Киев и по возвращении в Москву, 7 мая, в 23:00 написал email «по собственному». На следующий день сдал ноут, телефон и пропуска, и уже через три дня улетел в Киев окончательно (причем так быстро, что забыл оставшиеся рубли на доллары поменять в аэропорту).

Судя по реакции «эффективных», если бы я не ушел сам, то меня бы «ушли» они, — иначе сложно объяснить такие ущемляющие действия с их стороны.


P.S.Было много чего еще достаточно шокирующего и неприятного, связанного с обманами и «подставами», но я решил, что не стоит так много об этом писать. Думаю, что и так всё понятно ;)

24 января, Киев — Курс «IT рекрутинг»

$
0
0

Длительность: 15 занятий
График: среда (19:30-21:30),суббота (12:00- 14:00)

Кому будет полезен курс «IT рекрутинг» (подбор и управление персоналом в IT сфере)?
— Начинающим IT-рекрутерам, которые хотят прокачать уровень знаний
— Рекрутерам/менеджерам по персоналу не IT-компаний, которым необходимо эффективно закрывать IT-вакансии
— Молодым специалистам, которые хотят освоить профессию IT-рекрутера
— Тем, кто любит общаться с людьми
— Тем, кто хочет поменять профессию и хорошо зарабатывать

Что предлагают наши курсы?
—  IT рекрутинг. Компании. Технологии. Люди
—  1 правильное резюме — 1 звонок — 1 placement
—  Освоение практического инструментария для эффективного поиска ИТ-специалистов
—  «Охота за головами»
—  Выйти замуж за программиста не понимая. что такое рефакторинг или же введение в техническую специфику
—  Встречают по «мылу» провожают по Уму. Переписка с кандидатами
—  Нет ничего эффективнее, чем простое собеседование
—  Искусное взаимодействие с людьми
—  Рекрутер — самая впечатляющая профессия

Преподаватель курса
Зарегистрироваться на курс

С наилучшими пожеланиями, IT Labs

Информационная самооборона

$
0
0

Фильтровать информацию было легче два-три года назад, когда вездесущая реклама проникала в наши головы, но ещё не лилась из ушей и глаз. Когда же в Киеве прямо на перекрестках начали устанавливать огромных размеров цветные и яркие экраны со звуковой рекламой, стало очевидно, что рубикон пройден. Последним ударом были агитмобили с громкоговорителями и музыкой: “цибуля, картопля, огірки...”. Видать, китайская практика мобильных рекламных громкоговорителей добирается и до наших краев — зачем рвать глотку, если можно использовать технологии? Но я бы не спешил радоваться этому вторжению в личное звуко-волновое пространство.

Если в былые времена было принято падать ниц перед людьми, закончившими КПИ по специальности “защита информации”, то теперь пора падать вниз и рыть траншеи-блиндажи в преддверии информационной войны. И речь идет не только о зомбоящике, рекламных щитах и баннерах, вывесках и объявлениях на столбах, хоть они и являются патронами инфовойны. Речь идет о её солдатах, которыми — сюрприз! — являемся мы сами.

Участники военных действий

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

В виртуальном мире — мы, пересылающие друг друг ежедневные полчища ссылок. Интересно бы подсчитать, сколько десятков линков на статьи/видюшечки/картиночки мы получаем за день. И ведь они валятся не только из Skype, Facebook, “Контакта” и других соцсетей. Даже на почту теперь страшно заходить — обязательно кто-нибудь пришлет статью или видос. А если не пришлет, то там точно будет пара уведомлений с форума.

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

Это агрессивные продажи, детка

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

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

Социальные сети
Наверное, нет ничего хуже кнопки Share. По-русски звучит как “поделиться” — будто это что-то хорошее. Я бы переименовал эту кнопку в LoadShit (“Нагрузить”). И не важно, чем. Пусть даже это добротная статья о том, что черных дыр не существует. Почему мы всё это читаем? Зачем смотрим никчемные, но красивые ролики про серфингистов, лыжников-экстремалов и котеек? Пощекотать мозги. Предательский мозг так устроен, что любит всё удивительное. Вот мы и кормим его всякими ништяками, которые сгодились бы на перекус, но никак не на полноценный прием пищи для размышлений. Дома-то целые стеллажи нечитанных книг, а мы котиков смотрим.

Если б можно было убрать из соцсетей кнопки Share/Retweet, в мире стало бы заметно меньше спама. Людям было бы лень самостоятельно репостить даже годный хлам. По крайней мере, мы бы отправляли друг другу лишь самое стоящее. Но это уже из разряда фантастики, пора вернуться на землю.

Способы защиты от информации бывают:

— Ментальные.В их число входит целый вагон навыков, начиная от целенаправленного развития рекламной слепоты к интернет-роликам, ТВ- и радиорекламе и заканчивая навыками противостояния глубоко завуалированной обработке через кино (актрисы-актеры, их образ и стиль жизни, ценности и цели, девайсы, патриотизм), музыку (даже московские ниггеры поют про секс и money in the bank), СМИ (газеты, новостные порталы, заказные статьи).

Сюда же я добавил бы и “дулю в кармане”, которую можно использовать не только против цыганок и котов-гипнотизеров, но и против рекламных бигбордов. Этот способ 100% работает. В разгар предвыборной гонки возле моего дома появился огромный щит с фейсом Тигипко, который кто-то уже успел замарать зелёнкой. Каждый день, возвращаясь с работы, я видел знакомое лицо и сжимал известный жест (не только дулю и не только в кармане). Результат: выборы проиграны. Подобные штуки также работают против любых брендов и откровенно безвкусной социальной рекламы.

И напоследок, высший пилотаж 80lvl — не открывать вообще. Часто бывает достаточно беглого просмотра текста ссылки (news.com/...out_to_be_alive), чтобы понять, что это третьесортная желтизна, с которой не будет толку.

Также можно научиться не открывать всё, что начинается на http://youtube.com/или http://youtu.be/.
Логика здесь такова: вряд ли видеоролик изменит мою жизнь к лучшему, если это не под силу даже роликам с TED, не говоря уже о крутейших американских фильмах с многомиллионным бюджетом и оскароносными актерами. Если же кино таки способно посеять что-нибудь светлое в наших головах и сердцах, то зачем смотреть аматорское видео дорожных происшествий и уличных драк?

— Физические.Выбросить телевизор, выключить компьютер, отрубить телефон. Не оформлять дисконтных карточек и не оставлять нигде свой номер — иначе гады достанут своими SMS. Попросить родителей и друзей прекратить слать новости из Рады и с передовой. Если надо — попросить несколько раз. И не лишним будет научиться бить себя по рукам, когда лапища тянется что-нибудь зашарить. Тот случай, когда актуальна поговорка “начни с себя”.

— Программные.Пользуясь случаем, хочу поблагодарить всех разработчиков веб-плагинов для блокировки pop-up окон. Также хочу передать привет авторам расширений типа Block site, которые не только помогают покончить с зависимостью от определенных сайтов, но и таким образом блокируют спам от горячо любимых друзей. Ты кликаешь на ссылку (и тебя не гложет чувство вины), но сайт не открывается — и волки сыты, и овцы целы. Кстати, так мне удалось полностью избавиться от новостей с Цензор.нет.

Но самое главное — это, конечно, сознательный выбор своих жизненных приоритетов. Что важнее — создавать или продолжать потребительский образ жизни, бездумно открывая все подряд ссылки и протягивая руку за очередной порцией макулатуры, чтобы “поддержать зайку”? Хватит это терпеть!

Поэтому — домашнее задание на четверг:

— Ничего не лайкнуть (лечение синдрома ссылко-нажимания начинается с профилактики неконтролируемого лайканья).
— Не переслать никому ни одной ссылки (открывать пока что можно).
— Ознакомиться с § 49-50 про “Новітні веб-засоби, що дозволяють унеможливити появу потворних блимаючих вікон” и “Засоби захисту від неконтрольованого натискання на посилання”.
— Дополнительно (задача з двома зірочками **): не брать рекламных буклетов.

Як ми реалізували крос­платформенну розробку мобільного додатку на Xamarin

$
0
0

Якщо вам дістався класний проект на довготривалий термін, ви хочете його грамотно реалізувати з застосуванням шаблонів проектування, сучасними методологіями та відповідно до всіх канонів, що описані в SWEBOK та ISO 12207, або ж хочете розробляти крос­платформені мобільні додатки — тоді вам точно сюди. Представляємо наш «case study» aka «real­life story» — розробка крутого проекту зі встановленням та впровадженням Scrum в команді нашої компанії WebKate.

Отже, я розповім про технологічну сторону й частково торкнуся команди, проінформую про наші три помилки, яких можна було б уникнути та зберегти дорогоцінний час. З цього приводу пригадується цитата: «Як можна збільшити продуктивність в два рази? Треба збільшити кількість помилок удвічі!».

Проект:соціальна мережа для спортсменів, тренерів, вболівальників з усіма витікаючими можливостями значення соціальної мережі.

Платформа використання додатку: iOS та Android.

Головні питання, які ми ставили на етапі збору вимогта початковій стадії проектування:
− Аналіз мокапів та розбивка їх до реальних екранів;
− Прототипування (Axure
− Technical Specification, API Documentation;
− Підтримка двох широко використовуваних мобільних платформ;
− Amazon EC2 — платформа серверу (Как задеплоить на Symphony2
− Шифрування даних.

Перша помилка — застосування Corona SDK

Для початку шукаємо, які технології може нам запропонувати сучасний світ. Маю на увазі такі:
− Corona — Lua;
− QT (Widget, QML) — С++;
− Xamarin — С#.

Оскільки в команди був досвід розробки ігор (Corona SDK), в основному на iOS (Objective­C), то не виникало й питання, що інше можна застосувати. В цьому і була перша помилка.

Corona SDK — засіб крос­платформенної розробки, призначений насамперед для розробки ігор, але у ньому можна писати й бізнес­додатки. В нашому випадку все почалося з Corona. Скажу відразу — це було не досить вдале рішення для побудови UI­елементів. Це двигун для розробки ігор, і цим все сказано!

Дві основні проблеми, з якими ми зіткнулися, що призвели до зміни технології:
− проблеми з багатопоточністю, асинхронними запитами на сервер;
− «пластмасовий» інтерфейс, відсутність UI­редактора. В більшості випадків елементи будувалися за допомогою коду й встановленням навмання за принципом «Скомпілював — о, норм! Кнопка стоїть. А не треба на 1 піксель здвинути?». Такі елементарні функції, як обрізання тексту в текст інпуті чи дроп­листи ставали дійсно проблемними. Елементи інтерфейсу не здавалися нативними, а були начебто пластмасовими. Не було відчуття, що це дійсно гарний додаток, і коли взаємодієш з UI, то боїшся, щоб він не зламався і не «поплив».

Це ще не кажучи про забагованість окремих елементів UI, що призводило до пошуку сторонніх рішень та їх подальшого доопрацювання. Детальніше про технологію можна почитати тут.

Друга помилка — вибір методу розробки додатку

Спочатку будуємо всі екрани (повірте, їх було чимало, перевалило за півсотні), а потім думаємо про інше. Це рішення було обране не випадково, не через нашу некваліфікованість, а через те, що ще не було реалізовано API сервер, про котрий поговоримо дещо згодом. Можна сказати, що це був прототип, який можна було запустити на кінцевій платформі, з частковими працюючими UI­функціями (перехід по екранах, вибір фото, локалізація та інше). З точки зору розробки це правильно, але на це пішло багато часу, щоб далі усвідомити, що не підходить під конкретну задачу. Даний метод можна використати після прорахунку можливого функціоналу та побудови нормальної архітектури додатку та реалізації мінімального функціоналу. Утім, я все ж переконаний, що краще будувати більш­менш закінчений функціонал і далі його нарощувати.

Qt — крос­платформенний інструментарій розробки ПЗ мовою програмування C++. Дозволяє запускати написане за його допомогою ПЗ на більшості сучасних ОС, шляхом простої компіляції тексту програми для кожної ОС без зміни сирцевого коду.

Включає всі основні класи, які можуть бути потрібні при розробці прикладного ПЗ, починаючи з елементів графічного інтерфейсу й закінчуючи класами для роботи з мережею, базами даних, OpenGL, SVG і XML. Бібліотека дозволяє керувати нитями, працювати з мережею, і забезпечує крос­платформенний доступ до файлів.

Qt також може бути використаний у багатьох інших мовах програмування: Ada (QtAda), C# (Qyoto/Kimono), Java (Qt Jambi), Qt Jambi, Pascal, Perl, PHP (PHP­Qt), Ruby (QtRuby) та Python (PyQt, PySide).

Знаю, що це дійсно класна технологія, хоча я особисто «не подружився» з нею ще зі студентських років. Найголовніше, що мені в ній не подобається — це їх Qt Creator IDE, котра надто незручна в порівнянні зі стандартними VS, Eclipse та IDE компанії JetBrains. Другим фактором було те, що не досить комфортні деякі елементи С++, мені зручніше писати на C# і Java. О, якби так сталося, щоб вони покращили свою IDE і розширили якимось магічним способом підтримку технології в мові C#! ;)

Чого варта лише їх декларативна мова QML?!

Приклад:

import QtQuick 1.0

Rectangle { 
    id: canvas
    width: 200
    height: 200
    color: "blue"

    Image {
        id: logo
        source: "pics/logo.png"
        anchors.centerIn: parent
        x: canvas.height / 5
    }
}

Нарешті, я зустрів великого Xamarin’a, що використовує мою улюблену мову програмування С#.

Xamarin — це фреймворк для крос­платформенної розробки мобільних додатків (iOS, Android, Windows Phone). Ідея дуже проста: ви пишете код із застосуванням всіх звичних для вас мовних фіч (LINQ, лямбда­виразів, Generic, async тощо) і при цьому маєте повний доступ до всіх можливостей SDK платформи й рідного механізму створення UI, отримуючи на виході додаток. В цілому це нічим не відрізняється від нативних і не поступається їм у продуктивності.

Наведу декілька посилань на інші джерела, що допомогли в освоєнні даної технології:
developer.xamarin.com
xamarin.com/faq
xamarin.com/university
blog.xamarin.com
blog.pluralsight.com/xamarin­
habrahabr.ru/post/188130/

Розпочавши в повній мірі етап проектуванняй обравши технології, на яких будемо розробляти — починаємо шукати, в якій же є плюшки. Насамперед це:

Всі ці штуки дуже допомагають при роботі. Я не буду розповідати про кожну з них (в інтернеті інформації вдосталь), детальніше зупинюся на Xamarin.Forms.

Xamarin.Forms — крос­платформенний інструментарій, який дозволяє розробникам легко створювати користувацькі інтерфейси, які можуть бути розділені таким чином: Android, iOS і Windows Phone. Інтерфейси відображаються за допомогою вбудованих елементів керування на цільовій платформі, що дозволяє зберегти відповідний зовнішній вигляд для кожної платформи (guides).

Цей інструмент в перспективі є настільки могутнім, що його можна порівняти з WPF. Інтерфейс описується в XAML. На даному етапі розвитку немає графічної побудови в creator та звичних можливостей елементів керування. До того ж, їх кількість обмежена. На нашому проекті ми не застосовували даний інструмент, тому що він є досить сирим. Якщо вам не дуже важливий інтерфейс і не вимагається точного співпадіння екранів з дизайном (pixel perfect), то можете його використовувати.

Для побудови UІ ми використали стандартні засоби розробки інтерфейсу для iOS — storyboard, xib; а для Android — axml. Якщо ви переходите розробляти на дану платформу зі стандартних засобів розробки мобільних додатків, то для вас не буде ніякої складності в розумінні, оскільки засоби майже аналогічні.

Найбільш незручним для мене при розробці під iOS було те, що кожного разу коли щось змінював в storyboard­і, XCode закривався після синхронізації. Це виникло після чергового оновлення SDK, яке в них досить часте, і далі доводилося спочатку відкривати storyboard в xCode через Xamarin Studio.

Також не треба забувати про могутність .NET та його ком’юніті. Наприклад, про такі гіганти, як Telerikта DevExpress, що також підтримують дану технологію.

Архітектурні рішення та CASE засоби

Тепер прийшов час поговорити про самий смак — наші архітектурні рішення, CASE засоби та команду.

Засоби розробки та штуки, які ми використали:
PM Methodology: Waterfall з переходом на Scrum;
PM Tool: Atlassian JIRA з переходом на Pivotal Tracker. Не знаю, чим Pivotal кращий за JIRA, і наскільки це було потрібно — однак це було резонним рішенням при переході на Scrum.
Prototype:Axure;
OS: OS X Mavericks;
IDE: Xamarin Studio, XCode. Дехто з нас ще на віртуалці юзав Visual Studio + resharper, бо ця зв’язка надає більше функціональності для кодування. (Коли вже Microsoft почне підтримувати всі платформи технології .NET і JetBrains напише нам нормальну IDE? Ех...);
SCM: Git — SourceTree (у жодному разі не радив би використовувате SVN, порівняно з гітом — це «дрова»!) Під час розробки була ситуація з конкретно різними гілками, починаючи зі зміни назви проекту (папки) до перебудови структури. Після мерджу приблизно в двохсот файлах були примітивні конфлікти з namespace, які швидко потім вирішили. Git сам визначив, що файли були переміщені, перейменовані та ін. зі збереженям історії комітів файлів (тобто не вийшло так, що я став творцем всіх файлів), SVN у цьому випадку би подумав, що файли видалилися і створилися нові. Можна ще було використати TFS, але оскільки ми на маках всі сиділи й досвіду у використані не було, то цей варіант не розглядався;
Simulator: iOS Simulator, Genymotion.

Як я згадував раніше, у нас був сервер, реалізований за допомогою фреймворка Symfony2. Зв’язок відбувається на основі REST. Формат даних — JSON, також може буде досить швидко сконфігурований для передачі XML-­даних. API aвтентифікація виконана на основі WSSE. Детальніше про це розписано в окремій статті.

Додаток побудований за архітектурним шаблоном MVC. Дехто тут, можливо, скаже, що можна було використати MVVC, це б дало... бла­бла­бла. Але оскільки ми не використовуємо Xamarin.Forms, то для команди це було не досить зручно, тому що більша її частина прийшла з розробки iOS на Objective C, і ще — бо так історично склалося :)

Проектне рішення було розділено на три основні проекти + декілька проектів для різних додаткових компонентів, наприклад, SlidingMenu та ін. Також проекти для тестування під кожну з платформ.

В основному, ми дотримувалися такої схеми:

Core був створений на основі Shared Projects. Альтернативою є PCL, але вона не дозволяє використовувати директиви компілятора (наприклад #if __ANDROID__) та ін. Детальніше ви можете ознайомитися в документі. Також тут розмістилися бізнес моделі, що заповнювалися за допомогою RestSharp відповідями від сервера, різні менеджери для роботи з сервером, даними, сервіси, елементи валідації (constraints), івенти, локалізація (застосований Extension для класу string) та ін.

Інші основні два проекти — це вже реалізації під конкретну платформу (Android, iOS).

Третя помилка — порушення темпу розробки

Відтак, ми впритул підійшли до команди, а саме нашого становлення та переходу на Scrum (це тема для окремої статті) в процесі етапу конструювання.

І тут якраз і сталася наша третя помилка: початковий темп, в якому починалася розробка на другому етапі, зміни, що вносились без погляду наперед, щоденні мітинги, на яких треба було показати результати роботи (це тримало нас в якомусь незрозумілому стані), а також нові й нові правки клієнта. Це призвело до недосконалої перевірки якості коду кожного із розробників, виснаження команди та нестачі часу для тестування.

Але не дивлячись на це, усвідомивши все, ми виправили становище і увійшли в нормальне русло розробки. Як?

Для початку ввели pull request і сode review (це покращило якість коду, кожен міг написати свій коментар, а також підвищити свої знання в Xamarin, оскільки ця технологія була нова для нас), перейшли на методологію ведення проекту Scrum (змінилося деяке уявлення — наше та клієнта, зменшилося навантаження на команду), провели рефакторинг та ввели деяку ієрархію у веденні гілок в гіту (перший рівень — master, dev; другий рівень по підпапках застосування: feature/..., fix/... та ін., під конкретну платформу). Написали декілька інструкцій для входження нових людей в команду, наприклад, для деплою на AWS EC2.

Далі ми перейшли на інший етап ЖЦ ПЗ, але це вже інша історія.

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

Я вважаю, що ми повністю це довели! Команда, що зовсім не мала досвіду в даній технології, змогла за кілька місяців реалізувати досить складний крос­платформенний додаток.

23 января — ONLINE курс Java Pro

$
0
0

Время: по пятницам с 19:00-21:00
Цена: 2300 грн.

Программа:

● Reflection API. java.lang.Class. Аннотации.
● Работа с XML и JSON.
● Обзор паттернов проектирования.
● Протокол HTTP. Проект «Web-сервер».
● Веб-приложения. J2EE, Servlets.
● JSP, JSTL.
● Фреймворк SPRING (IoC, MVC).
● Проектирование баз данных. Основы SQL.
● Работа с базами данных. JDBC.
● Технологии ORM. JPA. Фреймворк HIBERNATE.
● Автоматическая сборка проектов. Ant/Maven/Gradle.
● Разбор более 100 вопросов и задач для прохождения собеседований.
● Подготовка к экзаменам Oracle Certified Associate, Java SE 7 Programmer.
● Написание дипломного проекта.

Видеозаписи курсов Start + ООП в подарок!Онлайн поддержка между занятиями.

Детали и запись
Другие наборы на очные курсы
Отзывы
Пример онлайн занятия

ВКонтакте
Facebook
Google Plus
Twitter

(044) 232-65-48
(093) 256-51-48
(050) 3-555-999


Дайджест цікавих вакансій № 169

$
0
0

Zakaz.uaшукає адміна, можливо студента, з базовими знаннями Ubuntu Linux & Windows Family.

Sergey Kirillovшукає для проекту в сфері text mining Python-розробника. Big data, natural language processing і т.д. Пристойна зарплата в EUR/USD.

Компанії O:Labsпотрібен аналітик-математикдля роботи над продуктом з використанням data mining у сфері рітейлу і FMCG.

Стартап Antresol.it, мобільний сервіс для p2p-покупок, шукає в команду Android-розробника.

Jelasticшукає в Житомирі Bash/Perl розробника/сисадміна. Зарплата 16000 грн.

Open source проектам SmartAnthillі PlatformIOпотрібна допомога розробниківзі знанням Python (Twisted, SCons), C (Embedded), Angular.JS.

Clickky Familyзапрошує на роботу в Одесі молодшого PHP-програміста. Зарплата до $1000.

Кур’єрська служба доставки Postmanшукає IT-директора.

Держстат Українизапрошує на роботу головного спеціаліста. Обов’язки: перевірка працездатності комп’ютерного обладнання, локальної мережі, операційної системи та офісних додатків. Роботи щодо заміни комп’ютерного обладнання із оновленням операційної системи та офісних додатків. Облік комп’ютерного обладнання, роботи з телефонією.

Компанії VD MAISпотрібен хакерз досвідом роботи від двох років.


Слідкуйте за Python-вакансіями в twitter за допомогою @py_vacancies.


Більше вакансій шукайте на jobs.dou.ua.
← Попереднійвипуск дайджесту.

Якщо зустрінете цікаву вакансію, яку варто додати в наступний дайджест — надсилайте її на editors@dou.ua.

Краудфандинг политиков

$
0
0
Image via Shutterstock.

Cотни гениальных и просто полезных продуктов появились на рынке благодаря краудфандингу — новой форме привлечения финансовых ресурсов от большого количества людей (от англ. Crowd — толпа и Funding — финансирование). Люди добровольно объединяют свои деньги или другие ресурсы вместе — как правило, через Интернет, — чтобы поддержать усилия других людей или организаций (реципиентов) с целью реализации продукта или услуги, помощи нуждающимся, проведения мероприятий и другой общественно полезной активности.

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

Кому принадлежат СМИ? Правильно — тем, у кого есть деньги. Бан в медиа — сколько бы ты не упирался, если ты отсутствуешь в медиапространстве, для большинства тебя не существует вообще. И наоборот, при поддержке инфоресурсов результат достижений может быть умножен на 10. Что сказывается не только на эффективности, но и на мотивации активиста.

Так называемый «социальный» (неденежный) краудфандинг хорошо работает в соцсетях. Да, денег на поддержку активиста никто не тратит, но лайками и репостами мы делаем его известным. Благодаря этой технологии вначале стали звездами Фейсбука, а потом уже и политиками и просто известными людьми такие личности как Дмитрий Тымчук, Семен Семенченко, Юрий Романенко и другие.

Политики «с низов»

Мы уже напрямую финансируем армию и добровольцев, и это работает. Почему бы не проделать то же самое с политиками? Выдвигать «с низов» людей, которым мы доверяем, помогать им, и впоследствии делегировать им полномочия — так, как это и должно работать в идеале. А не оказываться перед каждыми выборами в ситуации, когда снова и снова нужно выбирать из 2-хи более зол.

Чтобы политик был действительно народным, его должен выдвинуть народ. Не только выдвинуть, но и профинансировать. Используя известные и проверенные механизмы — праймериз, пожертвования, благотворительные взносы. В противном случае — о какой независимости можно говорить, если «народный кандидат» (марионетка) получает деньги на предвыборную кампанию из кармана олигарха? Или сам же таковым и является...

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

Сам процесс такого краудфандинга можно было бы превратить в уникальное интерактивное шоу. Как на этапе первичного финансирования, так и при разработке «проекта». Прозрачность получения и эффективность расходования полученных средств можно контролироват онлайн и корректировать в режиме реального времени путем «моментальных референдумов» и электронного голосования (того, что давно уже надо бы сделать на уровне страны).

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

Кандидат от IT-коммьюнити

Члены «IT-профсоюза» как наиболее рационально и логически мыслящая категория современного мира могли бы привнести много нового не только в отбор и корректировку работы общественников и кандидатов, но и в сам процесс законотворчества и рационализацию процессов на уровне государства. Многие сферы регулируемы, некоторым не хватает автоматизации. Сколько идей, выдвинутых IT-сообществом, и с его помощью можно было бы реализовать! А начать можно с малого — например, отработав предлагаемые модели на небольших районах.

Сам процесс такого краудфандинга можно было бы построить по принципу Kickstarter — кандидат делает презентацию, рассказывает о себе, о команде, знаниях и достижениях. Сюда можно было бы добавить рекомендации тех, кто его знает и доверяет. И начать сбор пожертвований. Даже не пожертвований, а скорее взносов. Сумма может быть меньше, но она должна быть регулярной, чтобы можно было планировать работу на ближайшее будущее (по такому принципу, как это делает известный сайт создания общественных петиций «Авааз»).

На Кикстартере с достижением определенной суммы сборов открываются новые «уровни» развития продукта, а каждый, кто вносит определенную, более-менее значимую сумму, может рассчитывать на вознаграждение, начиная от записи на «Доске почета» и заканчивая преимуществом первоочередного получения товара в особой упаковке или с гравировкой золотом своего имени на нем.

Какие же «плюшки» могут получить «бэкеры» политика? Всё это нужно обсуждать с сообществом, но первое, что приходит в голову, — внеочередное право доступа «к телу» для юридической или другой консультации в рамках компетенции кандидата. Надо понимать, что политики и общественники — это «люди-социальные сети». Общаясь со многими по роду деятельности и имея разнообразные связи, они могут решать широкий спектр проблем, просто «стыкуя» нужных людей друг с другом. А если таких политиков будет несколько, объединяя усилия, они могут лоббиторовать интересы целой отрасли или территориальной единицы.

Недавно тут проскочила хорошая статья, ставящая важные, глубокие вопросы: «Что дальше, программист?». Влиять на что-то большее, чем исполнение кода. Реформировать общество. Делать жизнь окружающих лучше. Чем не ответ на этот вопрос? Мы ведь можем себе это позволить?

P.S. И да, у меня есть кандидаты. Но я сознательно опускаю этот момент, потому что не хочу переходить на личности вместо идеи. Что думаете?

20 февраля — Онлайн курс “PRO РОБОТІВ” (MOOC Robotics)

$
0
0

Відкрийте для себе світ мобільних роботів — як вони рухаються, як вони взаємодіють зі світом, і як їх будувати!

Про що йдеться? Від поверхні Марса до Вашої підлоги у вітальні, ви можете знайти мобільних у самих несподіваних місцях. Разом ми будемо вивчати, як і чому.

Старт курсу 20/02/2015.

Головні розділи курсу (mooc robotics)

1. Які існують роботи?
2. Як робот пересувається?
3. Що і як робот відчуває?
4. Як контролювати робота?

Що ми будемо вивчати?

  • Що є роботом, а що роботом назвати неможна? Більш конкретно, мобільний робот — який він?
  • Чому нам необхідні роботи?
  • З яких підсистем складається робот?
  • Різні типи пересування роботів. Як мобільні роботи можуть рухатися, і які є найбільш придатними для різних середовищ?
  • Як різні датчики отримують інформацію про навколишнє середовище у якому знаходяться?
  • Які класифікації датчиків існують?
  • Як у робота працює система зворотного зв’язку?
  • Чи можна винайти свого власного робота?
  • Як скласти список вимог до конструкції власного робота?
  • Як спроектувати, створити та налагодити свого власного робота?

Цей курс вимагає приблизно 2 — 4 годин занять на тиждень, але може варіюватися залежно від студента. Курс включає в себе перегляд відео, ознайомлення з додатковими текстовими матеріалами, відповіді на запитання та 4 підсумкових тестування. Загальний час відео для цього курсу становить більш ніж 2 години.

Якщо ви вдало вивчите цей курс, то будете мати змогу отримати сертифікат за таке досягнення. Цей сертифікат формально не є гарантом вашої кваліфікації, але ви зможете використовувати його, щоб продемонструвати свій інтерес у даній області для вашої поточної освітньої установи чи компанії де Ви працюєте.

Реєстрація.

QA дайджест #3: карьера тестировщика, игровые паттерны, ответы на вопросы из собеседований

$
0
0

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

Новости

В системе защиты от подделки запросов PayPal обнаружена серьезная уязвимость

Полиция Лондонского метрополитена начала тестирование программы по предотвращению вероятных преступлений в будущем. Вспомнился фильм «Особое мнение» Стивена Спилберга.

Продолжаются судебные разбирательства по поводу политики конфиденциальности Google.

Почитать

Многие из начинающих тестировщиков слабо представляют своё дальнейшее развитие. В этом поможет замечательная статья:
Testers: Challenge Yourself Just Barely Above Your Current Skill Level

Удобный инструмент для облегчения работы с текстовыми полями. Bug Magnet: A Free Exploratory Testing Tool

Кто не знает о Fiddler — обязательно прочитайте. Разработчики пожмут вам руку, увидев, как вы детализируете баги с помощью этого инструмента☺

Полезная подборка ресурсов по UX и Usability. Будет полезно всем, кто работает с веб-продуктами.

Пора расширить функционал Redmine — набор плагиновдля популярного баг-трекера.

Грандиозное тестирование батареек — автор провел шикарное исследование, check it out.

А это просто мегакрутой материалпо «паттернам» создания игрушек — описание 47 игровых механик!

Оценка тестирования — предмет споров тестировщиков всего мира. Автор предлагаетинтересную идею — не просто давать оценку на тестирование, а давать три оценки: реалистичную, оптимистичную и пессимистичную. Предложите такой вариант своему менеджеру, доводы предлагаются☺

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

Обучение тестировщиков. Практический опыт и советы

Мы твердо убеждены, что разработчики обязаны писать юнит-тесты. Автор с нами солидарен.

Сохранить, не потерять и воспользоваться при первом случае. Free Web Load Testing Services

Друзья, ведь в автотестах багов не меньше, чем в приложениях, которые мы хотим протестировать☺ - Static code analysis for LoadRunner scripts

Ребята, а это мега-полезный пост. Checklist for Database testing

А как вам такой чеклист? Не говорите менеджеру, а то обрежет все эстимейты на тест-дизайн☺ Checklist for Usability testing

Обзор частых вопросов на собеседованиях и краткие ответы на них.
The ultimate series of Software testing interview questions:
— Part 1
— Part 2
— Part 3
— Part 4

Автоматизация

Selenide — интересный фреймворк для UI автотестирования на java.

Чистая правда — автоматизированное тестирование идеально дополняет мануальное. Stop thinking in terms of «or.» Use both manual and automated testing to make sure your application is in tip-top shape.

Bringing manual & automated testing together

TestComplete and QAComplete Integrated with Selenium WebDriver — отличная новость!

Всем: плавающая верстка — едва ли не главная головная боль веб-проектов. И функциональные авто-тесты это дело редко ловят. Совет от 2gis, как автоматизировать статическую верстку. Интересно!

Юмор

Сборник интересных рассказов о жизни тестировщиков:
Хроники Отдела Тестирования.
— Часть 1: Джуниор
— Часть 2: Эскалация Ситуации
— Часть 3: Райская Жизнь
— Часть 4: На недельку, до второго
— Часть 4.2: Мировое господство

Булшит бинго. О заимствованных иностранных словах в корпоративной среде.

Просто лучший URL на вакансию:



Мы с девелопером — прямо как Альф и Вилли



Качелька на дереве — это боян. А это не боян, и тоже смешно☺



Как вам такой сценарий классического pinball из Windows?
«С самого начала игры, когда шарик подавался на пусковую пружинку, он просто медленно проходил сквозь неё и исчезал. То есть игра завершалась крайне быстро.»
Вроде баг и баг, который нужно пофиксить, что для майрософта с капитализацией в 219 $ млрд не должно быть проблемой. Но его не пофиксили и не включили в Windows Vista. Почему? Делаем фейспалм и читаем.


За помощь в составлении дайджеста огромное спасибо Максиму Сальникову!


Полезные и интересные сообществу тестировщиков ссылки присылайте на viktor.bezhenar@softengi.com — посмотрим, рассмотрим, включим в дайджест и скажем «спасибо».

← Предыдущий выпуск: QA дайджест #2

#ITeaTalks: Стас Матвиенко (Settle) – «Cамые успешные украинские стартапы уже переехали в США»

$
0
0

«О продукте должны говорить люди, а не реклама»

Досье:Стас Матвиенко — 23 года, основатель и СЕО сервиса мобильных предзаказов Settle и мобильной программы лояльности Advice Wallet, co-founder Hashtag Bar, эдвайзер в Chooos, HASHTAGO и Publiсfast. Стартапами занимается более четырех лет. Живет и работает в Сан-Франциско.

Часть 1. Великий Y Комбинатор

Как получилось, что Пол Грэм пригласил команду Settle пройти отбор в Y Combinator Startup School в Сан Франциско?

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

Какие были вступительные экзамены? Была ли бумажная работа, связанная с отбором? Кто в результате поехал от Settle?

— Y Combinator просили брать на интервью всех фаундеров стартапа. Поэтому поехали я и Анна Полищук (COO и кофаундер). Бумажной работы не было. Интервью длилось ровно 10 минут. На основе предоставленных нами данных нам задавали дополнительные вопросы по продукту и тому, как мы будем его развивать в США. Важно давать четкие ответы на поставленные в ходе интервью вопросы.

Расскажи о самой программе — кто менторы, как строятся курсы, какие кейсы тебя впечатлили?

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

Под чутким руководством Игоря Шойфота (Happy Farm Incubator, TMT Investments)

Кроме знаний, контактов, расширения кругозора — что еще дает Y Combinator? Возможность показать свой проект большему числу инвесторов?

— Y Combinator в целом дает твоему стартапу значок («маячок») для инвесторов — своего рода знак качества, который существенно облегчает поиск инвестиций. Как правило, после заключительного демо дня почти все стартапы привлекают инвестиции.

Знаю, ты собираешься на 8th Annual Crunchies Awards в начале февраля? Хотел бы ты, чтобы в Украине проходили такие мероприятия?

— Да, я собираюсь туда пойти. Два года назад, когда мы были в Сан-Франциско по программе акселератора Happy Farm, мы хотели попасть на это мероприятие, но, к сожалению, не оказалось билетов. Тогда организаторы предложили нам принять участие в качестве волонтеров, и мы согласились. Для нас это был первый подобный опыт, и он оказался весьма интересным. Мы проводили на свои места таких гостей как CEO Facebook, CEO Airbnb, CEO Instagram и т.д. Это отличная церемония награждения стартапов. В Украине идея проведения подобных мероприятий сомнительна, так как у нас еще недостаточно развит этот рынок. Кроме того, украинских стартапов не так много, а самые успешные из них уже переехали в США.

Что бы ты порекомендовал тем, кто впервые летит в США в стартап-инкубатор, на митап или венчурную конференцию? Как максимально эффективно использовать время?

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

Часть 2. Платформа предзаказов

Очередь в культовый ресторан Mama’s on Washington Square в Сан-Франциско. А Settle позволяет заранее заказать еду в меню и прийти в заведение на всё готовое. При этом забронировать столик или забрать еду с собой. Фото: Alex Grechanowski

В недавнем интервью на блоге InVenture ты сказал, что в январе 2015 вы запускаете Settle в Штатах. Все идет по плану?

— Да, в конце января планируем начать тестирование с первыми заведениями в США. Для этого мы обновляем дизайн и функционал продукта.

Как вы будете конкурировать с уже зарекомендовавшими себя игроками, например, OpenTable и Dash?

— OpenTable занимается букингом столов, мы занимаемся предзаказами еды. Мы скорее планируем с ними сотрудничать, чем конкурировать. Dash и ряд остальных подобных сервисов занимаются исключительно мобильными платежами. Settle тоже начинал с мобильных платежей. Однако сейчас мы занимаемся решением более глобальной проблемы, чем просто оплата счета внутри заведения.

Что нового с точке зрения запуска бизнеса ты открыл для себя, уже будучи в Сан-Франциско?

— В США очень развит рынок венчурных инвестиций. Поэтому привлечь средства на запуск и развитие стартапа легче, чем в Украине. В остальном нужно много работать, чтобы достичь запланированных показателей.

Вы уже нашли sales people в США? Что входит в их круг обязанностей?

— К нам обратилось много кандидатов. Мы отобрали лучших, и сейчас проводим с каждым интервью. Основная задача Sales manager’a заключается в поиске и привлечении к сотрудничеству самых популярных ресторанов в Сан Франциско.

Как вам удается убедить владельцев кафе и ресторанов использовать Settle? Как быстро заведение сможет ускорить процесс обслуживания и увеличить продажи?

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

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

Как Settle позволяет оплатить заказ через приложение — это платежные карты, PayPal? Где хранятся данные платежных карт?

— В американской версии приложения мы работаем с различными банковскими картами, Apple Pay — все это реализовано через Stripe. В приложении данные карт не хранятся. Безопасность платежей гарантируют наши платежные партнеры. В США — это Stripe, в Украине — Приватбанк, в России — Cloudpayments.

Какие ты можешь отметить тренды в индустрии? Какие тенденции актуальны для restaurant/food booking приложений и мобильных платежей?

— Предзаказы с помощью приложения на телефоне являются новым популярным трендом в США в сфере restaurant/food booking. Несколько американских брендов начали разработку и тестирование mobile pre-orders еще с 2014 года (Starbucks, Pizza Hut, Panera Bread, MacDonalds Corp, Burger King) и сейчас успешно работают с мобильными предзаказами. В основном все американские сервисы сделали упор на опции take away (забрать готовую еду с собой).

Мы же сделали акцент на dine in — человек делает заказ на телефоне и приходит в ресторан, когда еда готова. В Settle мы не ориентируемся на фаст-фуд и небольшие кофейни, а работаем с хорошими популярными ресторанами. При этом раньше в ресторане приходилось ждать приготовления еды, а теперь можно сделать предзаказ через Settle и прийти на все готовое, забыв о быстрой еде на ходу.

Часть 3. Команда

Как выстраивается процесс разработки, какие технологии и методологии вы используете? Есть ли у вас какие-то свои наработки и фишки, которые помогают в процессе?

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

Сколько времени вам понадобилось в Украине, чтобы отшлифовать продукт?

— Нам понадобилось порядка двух месяцев.

Как ты относишься к удаленной работе? Есть шансы у распределенной команды добиться успеха?

— Все зависит от людей. У меня есть на удаленке отличные спецы, которые справляются лучше тех, что сидят в офисе. Основная команда, включая СТО, должна находиться в офисе ежедневно.

Чем именно ты занимаешься в Settle как основатель и CEO? Как проходит твой рабочий день?

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

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

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

Глава 4. Личное

Что тебя мотивирует?

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

C каких сайтов ты начинаешь день?

— Gmail, Facebook, Trello.

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

— У меня в телефоне много приложений, которые предоставляют схожие с Settle сервисы, так как нужно изучать, анализировать конкурентов. Конечно, есть Фейсбук, Скайп, Вайбер, почта Gmail, Trello — то, что ежедневно используется. Пользуюсь обычным календарем с напоминаниями, чтобы не забывать о встречах и мероприятиях. Я не особо организовываю свое рабочее место. Макбук, стол, кресло и вайфай — все, что нужно.

Какие книги и подкасты ты можешь порекомендовать нашим читателям?

— Brad Feld «Venture Deals»,
— Пол Грэм «Как начать стартап»,
— Эрик Рис «Lean Startup».

Иногда смотрю bloomberg.tv. В основном черпаю информацию с таких сайтов как TechCrunch, VentureBeat, CNet, TheNextWeb, Mashable и др.

Какая музыка тебя вдохновляет?

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

На каких конференциях и митапах планируешь побывать в ближайшее время?

— 5 февраля буду на 8th Annual Crunchies Awards в Сан-Франциско.

Стас, большое спасибо за беседу. Где тебя можно найти в Интернете?

— Всегда открыт для общения в Фейсбук facebook.com/stas.matviyenko


Ранее пили чай в ITea Talks:
— Юлия Петрушенко (Nexmo) — о том, как junior-разработчику переехать в Лондон
— #ITeaTalks: Андрей Клен (Petcube)про жизнь в Сан-Франциско, работу на «условного» дядю и о том, что должно остаться в Вегасе

Viewing all 8151 articles
Browse latest View live