Русский
Русский
English
Статистика
Реклама

Начало карьеры

Из песочницы Про анализ без страшных слов

04.07.2020 16:09:21 | Автор: admin
Приветствую, читатель!

В этой статье я постараюсь рассказать о профессии бизнес-аналитика для начинающих специалистов и тех, кто хочет начать свою карьеру.

image

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

Одна из них: Бизнес-аналитик и системный аналитик в IT. Разбираемся в сортах

Введение


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

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

Чем занимается аналитик?


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

На самом деле, аналитика состоит из следующих шагов:

  1. Получение запроса на доработку системы
  2. Уточнение желаемого результата, получаемого пользователем в конце вашего процесса
  3. Уточнение текущего процесса работы
  4. Предварительная проектировка решения
  5. Согласование с заказчиком дополнительных шагов процесса, если они необходимы для достижения результата,
  6. Корректировка решения
  7. Согласование процесса с заказчиком
  8. Оформление технического задания для разработчика
  9. Тестирование основных сценариев работы функционала
  10. Оформление документации, написание пользовательских инструкций
  11. Передача функционала заказчику

Подробнее о каждом шаге


Получение запроса на доработку


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

Уточнение желаемого результата


Здесь вы должны уточнить, чего конкретно хочет заказчик. Это может быть чем угодно: смена статуса заявки, генерация документа, отправка SMS или E-mail, в общем и целом, все, что может делать IT-система.

Всегда руководствуйтесь следующими принципами на этом этапе:

  1. Для вас не должно быть ни одного абстрактного понятия в постановке. Если вы не уверены, что понимание некоторых слов у вас и у заказчика одинаковы, убедитесь в том, что это не так.
  2. Не бывает глупых вопросов, бывают неправильно сформулированные и неправильно адресованные. Аналитик не является экспертом во всех областях бизнеса, но должен уметь быстро разобраться в новой области. Не бойтесь спрашивать.

Уточнение текущего процесса


Чаще всего текущий процесс работы называют процесс AS-IS
После завершения данного этапа, вы должны представить себе процесс в виде черного ящика.

image

Предварительная проектировка решения


Этот этап подразумевает под собой определение будущего процесса или, как говорят, процесс TO-BE.

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

image

Руководствуйтесь следующими принципами:

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

Согласование дополнительных шагов


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

Корректировка решения


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

Согласование процесса


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

Оформление технического задания


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

Тестирование функционала


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

Документация


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

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

Передача функционала заказчику


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

Вывод


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

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

Надеюсь, моя статья помогла вам сложить впечатление об аналитике и привела к осознанию вашего пути в жизни. Успехов!
Подробнее..

Дайджест IT-событий первой половины сентября

12.08.2020 14:11:32 | Автор: admin


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

Интенсив по Android-разработке на Kotlin

Когда: 1 сентября 31 октября
Где: онлайн
Условия участия: бесплатно, требуется регистрация

Хорошая (и бесплатная) возможность разом освоить всё, что касается основ разработки на Kotlin под Android за осень. Курс рассчитан на начинающих, но базовое знакомство с Java-синтаксисом упростит слушателям жизнь. Организаторы нацелены в первую очередь на то, чтобы дать знания, которые точно понадобятся на практике: обзор современных инструментов, популярные паттерны, архитектурные решения. Программа включает в себя девять модулей (вводное занятие, компоненты платформы, архитектура, Material Design, работа с сетью, ORM Room, Socket.io и другие темы); соотношение теории и практики примерно один к трём.

Kaspersky Industrial Cybersecurity Conference 2020

Когда: 2-4 сентября
Где: онлайн
Условия участия: бесплатно, требуется регистрация

Крупный международный форум по промышленной кибербезопаности и защите критических инфраструктур пройдет в этом году за закрытыми дверями, в узком кругу участников но с возможностью следить за дискуссиями онлайн для всех желающих. На площадке соберется более сорока экспертов по киберугрозам, включая Дейла Питерсона (основатель Digital Bond и S4 Events), Патрика Миллера (Archer International), исследовательницу Марину Кротофил. Основные темы конференции: новые тенденции, текущий ландшафт угроз, регулирование и лучшие практики киберзащиты. Свежие решения по ИБ представят Лаборатории Касперского, Arinteg, ICL System Technologies, MOXA, Jet и PcVue. Регистрация для удаленного участия откроется 17 августа.

Академия Playnesis

Когда: 7 сентября 12 октября
Где: Новосибирск, ул. Инженерная, 4А
Условия участия: бесплатно, требуется регистрация

Глубокое, полуторамесячное погружение в мир мобильных приложений для всех, кто хочет с ними работать. Выпускникам и студентам вузов предлагается пройти полный курс по одному из четырёх направлений и, если сойдутся звёзды, сразу устроиться на работу. В академии приставлены курсы для iOS-разработчиков (Swift, вёрстка, анимация, многопоточность, управление памятью), программистов на Unity (работа с кодом и движками, библиотеки, использование физики, создание интерфейсов), маркетологов (монетизация, ASO, коммуникации, исследования и аналитика) и продакт-менеджеров (Agile, SCRUM, целеполагание, мотивация, командная работа). Занятия будут проходить дважды в неделю в офисе организатора. По итогам сертификаты для всех и трудоустройство для лучших.

MOBILE Z-DAYS

Когда: 8-10 сентября
Где: онлайн
Условия участия: бесплатно, требуется регистрация

Трёхдневное мероприятие для мобильных разработчиков всех мастей. Области интересов аккуратно разделены по дням: сначала iOS, затем Android и, наконец, Flutter. Благодаря онлайн-формату, состав участников смешанный выступать будут практикующие специалисты из России и Европы. Программа находится на стадии формирования, ознакомиться с уже поданными докладами можно на сайте.

Администрирование кластера Kafka

Когда: 9-11 сентября
Где: Москва, ул. Илимская, 5/2
Условия участия: 54 000 руб.

Лаконичный курс для системных администраторов, разработчиков bigdata-систем и DevOps-инженеров, которые хотят быть на ты с Apache Kafka. Участники освоят установку, настройку и поддержку кластера, изучат настройки безопасности, отработают методы администрирования, научатся интегрировать Kafka с другими фреймворками и внешними системами. Практические занятия, которые занимают больше половины аудиторного времени, предполагают развёртывание собственного кластера с настройкой конфигурации, системы безопасности и мониторинга. Для участия необходим минимальный опыт работы в Unix.

XIII Межотраслевой Форум CISO FORUM: музыка кибербезопасности

Когда: 10-11 сентября
Где: Москва, ул. Лесная, 15.
Условия участия: по запросу

Крупнейший форум по кибербезопасности с горячими темами и музыкальным оформлением. В программе хватает и классики (лучшие практики, базовые меры безопасности, аудит и менеджмент ИБ), но центральное место занимают угрозы и осложнения, которые возникли в период пандемии: новые типы атак, защита каналов удалённого доступа и другое. За два дня на площадке выступят более семидесяти экспертов из разных стран (доклады разбиты на три потока), пройдут четыре мастер-класса, пять интерактивных дискуссий, а также игра Угадай мелодию и караоке-баттл. Обширная программа уже доступна на сайте мероприятия.

Город IT

Когда: 11-12 сентября
Где: информация уточняется
Условия участия: информация уточняется

Многоаспектная конференция для всех, кто задействован в IT-бизнесе от руководителей до аналитиков, от программистов до маркетологов. Для технических наибольший интерес представляет второй день именно на него запланированы соответствующие трэки: мобильная и веб-разработка, машинное обучение, VR&AR, big data, геймдев. Отдельные секции выделены для разработчиков на Python и C++. В оставшееся же время можно принять участие в многочисленных активностях: послушать откровения спикеров на darkside, внести вклад в облагораживание города на placemaking, поговорить о житье-бытье IT-компаний на ток-шоу или насладиться живой музыкой.

Russian Python Week

Когда: 14-18 сентября
Где: онлайн
Условия участия: от 4 900 руб.

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

TestCon Moscow 2020

Когда: 15-17 сентября
Где: онлайн / Москва, Измайловское шоссе 71, 3В
Условия участия: 47 000 руб.

Космополитическое собрание тестировщиков в этом году также вирутализируется, но не отменяется. В конференции примут участие эксперты из целой дюжины стран; ключевые спикеры Нил Малотоу (N R Malotaux Consultancy), Егор Бугаенко (Zerocracy), Бйорн Бойсщот (CTG), Рон Вернер (Joyn). Первый день будет занят мастер-классами, доклады пройдут во второй и третий по трём потокам. Те, кто настроен извлечь из TestCon максимум пользы и удовольствия, могут принять участие в викторине и пообщаться с докладчиками в специально отведённых зонах.
Подробнее..

Советы начинающему GameDeveloperу

24.02.2021 00:19:22 | Автор: admin

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

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

Ресурсы, популяризирующие GameDev

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

Книги

Фильмы

Youtube-каналы

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

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

В целом, данного конфига мне хватает, пробовал вариант с бОльшим количеством каналов, но тогда количество дублирующей информации просто зашкаливает (хотя те же самые XYZ и DTF часто ссылаются на GDC)

Ресурсы по геймдизайну

Книги

Youtube-каналы

Ресурсы по разработке

Книги

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

Youtube-каналы

Unity-сообщества

И те и другие - отличные ребятки, могут помочь, если возникнут трудности, делятся ресурсами и ищут единомышленников.

Советы

  • Наличие GitHub аккаунта повышает вероятность положительного ответа, главное не забывать подробно расписывать README-файл.

  • Неплохо бы иметь аккаунт на итче, в идеале, чтобы как раз GitHub вел на итч: так можно будет потрогать игру ничего не скачивая и не собирая (делайте web-билды).

  • Также приветствуется наличие выпущенных тайтлов в сторы.

  • Не лишним будет участие во всевозможных хакатонах/гейм-джемах (хорошая возможность познакомится с единомышленниками и положить проект в копилочку).

  • Геймдев-встречи в Random Coffee - отличный способ узнать много нового, а главное побороть страх общения с незнакомыми людьми.

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

  • Старайтесь не делать однотипные проекты - у каждого второго в портфолио игра астероиды и код Ctrl-C, Ctrl-V под копирку (к вопросу про курсы выше).

Надеюсь, данная статья принесла вам пользу, планирую дополнять ее по мере поступления новой информации. Если зайдет, то возможно будет пост посвященный вопросам собеседования на позицию Unity-джуна.

Ну и самое главное - любите игры

Подробнее..

Хочу в геймдев 27 ответов от 8 профи

17.06.2020 16:18:48 | Автор: admin
Это материал для джунов, которые хотят устроиться в геймдев. Восемь директоров дают советы: с чего начать, как вести себя на собеседовании, как на собеседованиях оценивают кандидатов, что делать, если нет нормального портфолио, нужно ли высшее образование, есть ли стажировки и многое другое.




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

Кто давал советы и делился опытом:
  • Константин Сахнов (Kallist) совладелец издательства JustForward и игровой продюсер;
  • Михаил Кузьмин Marketing Director в TinyBuild;
  • Олег Доброштан директор по развитию и обучению в 101xp;
  • Сергей Волков HR Director в 1C Game Studios/1C Entertainment;
  • Алина Мудрая СЕО Values Value;
  • Роман Васильев Co-founder & CEO платформы inGame job;
  • Владимир Пранов Head of HR в Vintersaga;
  • Вячеслав Уточкин (viacheslavnu) директор образовательных программ по игровой индустрии ВШБИ НИУ ВШЭ.




Главный вопрос: сколько будут платить джуну?


Роман Васильев привел данные с ежегодного зарплатного опроса на inGame job.
Вот как выглядит медианная зарплата новичков по направлениям:



Лучше всего с зарплатами для джунов в локализации, аналитике и менеджменте, а замыкают список DevOpsы.

А вот медианная зарплата новичков по странам:



Где искать вакансии


Владимир Пранов: В Фейсбуке по запросу геймдев легко найти много интересных групп, где выкладываются вакансии, делятся новостями люди из индустрии, и можно выложить свое резюме. Еще есть платформы inGame Job и Talents in Games, где можно регистрироваться в качестве кандидатов, создавать резюме, откликаться, писать сопроводительные письма и пытаться найти работу.

Что должно быть в резюме



Это инструкция от Values Value. Подробнее тут

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

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

Ошибки при создании резюме и на собеседовании


Владимир Пранов:
  • Слишком длинное и нерелевантное резюме.
  • Резюме с недостаточным количеством информации о задачах, достижениях и платформах.
  • Еще одна ошибка не посмотреть, с каким проектом (жанр, монетизация) и в какой компании соискатель собирается работать.
  • Очень важно правильно сформулировать желаемую зарплату, не продешевить, не переоценить себя.


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

Какое образование нужно


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

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


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

Роман Васильев: Многие руководители смотрят на образование не как на корочку, а как доказательство целеустремленности и способности к обучению соискателя, потратившего время на серьезную учебу.

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

Что делать, если нет опыта


Михаил Кузьмин: Если у соискателя не было опыта в геймдеве, он, скорее всего, попадет на начальные позиции вне зависимости от того, чем он раньше занимался. Кроме программистов фронтенда и бэкенда: для них ограничений не существует. Чем лучше вы понимаете свой желаемый карьерный путь, тем скорее сможете по нему двигаться, и выйдет это у вас за год-три в компании об этом узнают на собеседовании и дальше смотрят, насколько вы подходите. Для успешного старта нужна большая наигранность в самых разных жанрах, которая выражается в том, что вы знаете рынок, можете про него рассказать, и желание много работать, поначалу даже немного механистично. Первичные профессии: Q&A, техподдержка и иногда все, что с приставкой джуниор, если уже где-то подучились или есть релевантное портфолио.

В tinyBuild часто просят у геймдизайнеров ссылку на открытый Steam-профиль (или другую платформу), который может многое сказать о соискателе и его понимании жанров.

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

Иногда от резюме почти ничего не требуется: покажите мотивацию и готовность муторно работать руками.


Стартовые позиции зависят от компании, иногда достаточно горящих глаз.

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

Стажировки в геймдеве


Алина Мудрая:
Стажировки востребованы в IT и медиа, но не в геймдеве это занимает очень много ресурсов компании.


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


Алина Мудрая СЕО Values Value

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

Во многих компаниях, например 1С Games и 101XP, начальные позиции как раз и выступают как стажировки.

Что может оттолкнуть в кандидате


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


Сергей Волков HR Director в 1C Game Studios/1C Entertainment

На собеседовании или обсуждении проекта с издателем


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


Константин Сахнов совладелец издательства JustForward и игровой продюсер

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

Совет про питчинг (презентацию проектов)


Константин Сахнов: Часто встречающаяся ошибка начинающих разработчиков пытаются придумать сложную концепцию. Лучше сделать что-нибудь попроще, хотя амбиции это хорошо.

Михаил Кузьмин: Есть примеры успешных кейсов у свежесобранных на энтузиазме команд. Black Skylands игра с очень красивой рисовкой, которая разрабатывалась на редко используемом движке. TinyBuild подписались на проект, дали денег, помогли с арендой офиса в Москве. Автор доукомплектовал команду, перенес игру на Unity (потому что игру будет проще портировать на различные платформы), и они сейчас ее допиливают.

Кто такой геймдизайнер и чем отличается от продюсера


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

Как придумывают игровые механики


Константин Сахнов: Все, что мы придумываем, мы осознанно или неосознанно копируем из природы или из произведений других авторов. Можно использовать эту методику открыто и последовательно.

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

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

Удаленка и офис в геймдеве


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


Олег Доброштан директор по развитию и обучению в 101xp

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

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

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

Если геймдев супермечта


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

Профессиональное выгорание в геймдеве


Олег Доброштан: От выгорания может помочь отдых или занятие спортом. Если жить и работать как в сериале Lets dance, выгорание не создает больших проблем.

Про шансы, перспективы и трудоустройство


Сергей Волков: Хотя часто выглядит, особенно по рассказам бывалых, что геймдев негостеприимный, что на пути новичка полно преград, случается, что компания и кандидат находят друг друга, и тогда сотрудничество получается взаимовыгодное и приятное.

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

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

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

Вячеслав Уточкин: Будет прекрасно, если спустя несколько лет у вас появится чувство, что приняли правильное решение и стали заниматься тем, что приносит исключительное удовольствие и финансовую стабильность.

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

Роман Васильев: Бояться не надо, надо пробовать. Иногда стоит откликнуться на вакансию, ведь не все требования там ключевые. В любом случае это лучше, чем не сделать ничего.
Подробнее..

Из песочницы Подготовка к собеседованию QA starter pack или самая большая шпаргалка вопросов-ответов по тестированию

18.07.2020 14:05:59 | Автор: admin

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

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

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

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

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

Эта статья не заменит хорошую книгу или курс, с другой стороны, здесь больше реальности.

ВНИМАНИЕ! Для того, чтобы увидеть материал целиком, нужно открыть первую или вторую часть в файлах на гитхабе (Manual part 1 или Manual part 2).

Оказалось, что такой объем практически нереально предоставить общественности. К сожалению, Хабр пока не умеет парсить исходники больше 150кб, а это означало бы разбиение материала на 8 статей (разработчики пообещали исправить, задача уже в активных).

На гите дополнительно пришлось поделить материал на 2 файла ввиду ограничения на размер одного в 1 мб. Если есть что исправить или дополнить пишите тут/создавайте issue/форкайте и коммитьте! Призываю участвовать всех неравнодушных!

Оглавление


Manual part 1


  • HR-часть
  • Вопросы с реальных собеседований с этапа HR
  • Общее о тестировании
  • Что означает тестирование ПО?
  • Почему требуется тестирование ПО?
  • Что означает обеспечение качества (Quality Assurance QA) при тестировании ПО?
  • Что означает контроль качества (Quality Control QC) при тестировании ПО?
  • Что означает качество ПО? (Software Quality)
  • Объясните отличия в QA, QC и тестировании
  • Что означает Verification при тестировании ПО?
  • Что означает Validation в тестировании ПО?
  • Разница между Design Verification и Design Validation?
  • Принципы тестирования?
  • Что подразумевается под тестовым покрытием? (Test Coverage)
  • Что такое модель зрелости тестирования (TMM Test Maturity Model)?
  • Что такое CMM?
  • Что такое тестирование со сдвигом влево? (Shift left testing)
  • Что такое независимое тестирование? (Independent testing)
  • В чем разница между превентивным и реактивным подходами в тестировании? (Preventative and Reactive approaches)
  • Перечислите типичные возможные обязанности инженера по обеспечению качества?
  • Что такое аудит качества?
  • Почему тестирование делится на отдельные этапы?
  • Почему невозможно полностью протестировать ПО?
  • Как вы тестируете продукт, если требования еще не зафиксированы?
  • Как вы узнаете, было ли создано достаточно тестов для тестирования продукта?
  • Как вы понимаете инспекцию?
  • Какие есть роли/должности в команде?
  • Опишите жизненный цикл продукта по этапам какие участники на каждом этапе, какие у них роли? Какие артефакты на каждом этапе?
  • Кто такой SDET?
  • Что такое тестирование как сервис? (TaaS testing as a Service)
  • Что подразумевается под тестовой средой? (Test Environment/Test Bed)
  • Что подразумевается под тестовыми данными?
  • Основные фазы тестирования?
  • Подробнее про бета-тестирование?
  • Что означает пилотное тестирование? (Pilot)
  • В чем отличие build от release?
  • Что такое бизнес логика (domain)?
  • Ты единственный тестировщик на проекте. Что делать?
  • Основные инструменты тестировщика?
  • Виды тестирования
  • Какие существуют основные виды тестирования ПО?
  • Типы тестирования? (White/Black/Grey Box)
  • Что означает тестирование черного ящика?
  • Что означает тестирование белого ящика?
  • Что означает тестирование серого ящика? (Grey box)
  • Основные отличия White/grey/black box?
  • Что такое деструктивное/разрушающее/негативное тестирование? (DT Destructive testing)
  • Что такое недеструктивное/неразрушающее/позитивное тестирование? (NDT Non Destructive testing)
  • Что такое пирамида/уровни тестирования? (Testing Levels)
  • Что подразумевается под компонентным/модульным/юнит тестированием? (Component/Module/Unit testing)
  • Что подразумевается под интеграционным тестированием? (Integration testing)
  • Разница между Unit testing и Integration testing?
  • Что такое системное интеграционное тестирование? (SIT System Integration testing)
  • Что подразумевается под инкрементальным подходом? (Incremental Approach)
  • Что подразумевается под подходом снизу-вверх? (Bottom-Up Approach)
  • Что подразумевается под подходом сверху-вниз? (Top-Down Approach)
  • Что подразумевается под гибридным/сэндвич-подходом? (Sandwich Approach)
  • Что подразумевается под подходом Большого взрыва? (Big Bang Approach)
  • В чем разница между тест-драйвером и тест-заглушкой? (Test Driver and Test Stub)
  • Что подразумевается под системным тестированием?
  • Можем ли мы провести системное тестирование на любом этапе?
  • Что такое функциональное тестирование?
  • Что такое тестирование совместимости/взаимодействия? (Compatibility/Interoperability testing)
  • Что такое тестирование на соответствие? (Conformance/Compilance testing)
  • Что такое нефункциональное тестирование?
  • Основные понятия в тестировании производительности?
  • Тестирование производительности клиентской части и серверной, в чем разница?
  • В общем виде что такое тестирование производительности?
  • Что такое тестирование емкости/способностей? (Capacity)
  • Что означает тестирование масштабируемости? (Scalability)
  • Разница между тестированием ёмкости/способностей и тестированием масштабируемости? (Capacity vs Scalability)
  • Расскажите о стрессовом тестировании? (Stress testing)
  • Расскажите о нагрузочном тестировании? (Load)
  • Что такое объемное тестирование? (Volume testing)
  • Тестирование выносливости/стабильности/надежности (Soak/Endurance/Stability/Reliability testing)
  • Что такое спайк/шиповое тестирование? (Spike)
  • Что такое тестирование устойчивости? (Resilence)
  • Что такое тестирование времени отклика? (Response time testing)
  • Что такое Ramp тестирование?
  • Что такое тестирование хранилища? (Storage testing)
  • Что такое тестирование на отказ и восстановление? (Failover and Recovery testing)
  • Что вы знаете о Тестировании удобства пользования? (Usability testing)
  • Отличия тестирование на удобство пользования и тестирования доступности? (Usability Vs. Accessibility testing)
  • Что такое тестирование интерфейса? (UI testing)
  • Что такое тестирование рабочего процесса/воркфлоу? (Workflow testing)
  • Что вы знаете о пользовательском приемочном тестировании? (UAT User Acceptance testing)
  • Что такое эксплуатационное приемочное тестирование? (OAT Operational Acceptance testing)
  • Расскажите об инсталляционном тестировании?
  • Что вы знаете о тестировании безопасности? (Security and Access Control testing)
  • Что означает оценка уязвимости/защищенности? (Vulnerability Assessment)
  • Расскажите подробнее о тестировании на проникновение? (Penetration testing)
  • Отличия Vulnerability Assessment от Penetration testing?
  • Что такое Fuzz тестирование?
  • Можно ли отнести тестирование безопасности или нагрузочное тестирование к функциональным видам тестирования?
  • Что вы знаете о конфигурационном тестировании? (Configuration testing)
  • Что подразумевается под проверкой дыма/дымовым тестированием? (Smoke testing)
  • Что такое тестирование встряхиванием? (Shake out testing)
  • Что подразумевается под санитарным тестированием/согласованности/исправности? (Sanity testing)
  • Отличие санитарного тестирования от дымового? (Sanity vs Smoke testing)
  • Что вы знаете про регрессионное тестирование? (Regression testing)
  • Объясните, что такое тестирование N+1?
  • Что означает подтверждающее тестирование? (confirmation/re-testing)
  • В чем разница между повторным и регрессионным тестированием?
  • Типы регрессии по Канеру?
  • Что вы знаете о тестировании сборки? (Build Verification Test)
  • Что такое тестирование файлов cookie?
  • Что такое тестирование потоков? (Thread testing)
  • Что такое тестирование документации? (Documentation testing)
  • Какие вы знаете уровни тестирования данных?
  • Что такое подкожный тест? (Subcutaneous test)
  • Расскажите о локализации, глобализации и интернационализации? (Localization/ globalization/internationalization testing)
  • Что такое исследовательское тестирование? (Exploratory testing)
  • Что такое Свободное или Интуитивное тестирование? (Adhoc)
  • Что вы знаете о мутационном тестировании? (Mutation testing)
  • Что означает механизм тестирования по ключевым словам? (Keyword Driven testing Framework)
  • Что вы знаете о тестировании интерфейса прикладного программирования (API Application Programming Interface)?
  • Как протестировать API без документации/черным ящиком?
  • А что такое endpoint?
  • Frontend testing Vs. Backend testing?
  • Что подразумевают под эталонным тестированием? (Baseline testing)
  • В чем разница между Baseline и Benchmark testing?
  • Что такое параллельное/многопользовательское тестирование? (Concurrency/Multi-user testing)
  • Как вы думаете, что такое тестирование на переносимость?
  • Что такое тестирование графического интерфейса/визуальное тестирование? (GUI Graphical User Interface)
  • Что такое A/B тестирование?
  • Что означает сквозное тестирование? (E2E EndtoEnd)
  • В чем разница между E2E и системным тестированием?
  • Что такое параллельное тестирование? (Parallel testing)
  • Тест дизайн
  • Тест дизайн? (Test Design)
  • Перечислите известные техники тест-дизайна?
  • Что такое статическое тестирование, когда оно начинается и что оно охватывает?
  • Что такое динамическое тестирование, когда оно начинается и что оно охватывает?
  • Какие виды Review вы знаете?
  • Что вы знаете о Data Flow testing?
  • Что вы знаете о Control Flow testing?
  • Что такое Loop coverage?
  • Что такое Race coverage?
  • Тестирование пути и тестирование базового пути? (Path testing & Basis Path testing)
  • Что вы знаете о Statement coverage?
  • Что вы знаете о Decision coverage?
  • Что вы знаете о Branch coverage?
  • Что вы знаете о Condition coverage?
  • Что вы знаете о FSM coverage?
  • Что такое Function coverage?
  • Что такое Call coverage?
  • Что означает LCSAJ coverage?
  • Сравнение некоторых метрик
  • Что такое Equivalence Partitioning?
  • Что такое Boundary Value Analysis?
  • Что такое Error Guessing?
  • Что такое Cause/Effect?
  • Что такое Exhaustive testing?
  • Какие вы знаете комбинаторные техники тест-дизайна?
  • Что такое тестирование ортогональных массивов? (OAT Orthogonal Array testing)
  • Что такое Domain analysis/testing?
  • Что такое Cyclomatic Complexity в тестировании ПО?
  • Что такое State Transition testing?
  • Что такое Scenario (use case) testing?
  • Что такое Decision Table testing?
  • Что такое Random testing?
  • Что такое Syntax testing?
  • Что вы знаете о Classification tree method?
  • Как мы узнаем, что код соответствует спецификациям?
  • Что включает в себя матрица отслеживания требований? (RTM Requirement Traceability Matrix)
  • В чем разница между Test matrix и Traceability matrix?
  • Что такое анализ GAP?
  • Что такое граф причинно-следственных связей? (Cause Effect Graph)
  • В чем разница между предугадыванием ошибок и посевом? (Error guessing and error seeding)
  • Стили тестов?
  • Техники тестирования требований?
  • Что такое эвристики?
  • Тестовые артефакты и документация (Test Deliverables/TestWare/test artifacts)
  • Виды тестовой документации?
  • Отличия Test Suite от Test Scenario?
  • Какие отличия у плана тестирования и стратегии тестирования?
  • Виды тест планов?
  • Что является основой для подготовки плана приемки? (PAP Product Acceptance Plan)
  • В чем разница между тест-кейсом и чек-листом?
  • В чем разница между тест-кейсами высокого уровня и низкого уровня?
  • Чем Test case отличается от сценария тестирования?
  • Что такое тест-анализ/основа теста? (Test Analysis/Test Basis)
  • Что такое документ бизнес-требований (BRD)?
  • Что вы знаете о требованиях (уровни/виды и т. д.)?
  • Рассажите, какие есть требования к самим требованиям?

Manual part 2


  • Дефекты и ошибки
  • Что такое дефект?
  • Классы дефектов?
  • Какие есть категории дефектов?
  • Error/Mistake/Defect/Bug/Failure/Fault?
  • Каково содержание эффективного сообщения об ошибке?
  • Несколько ключевых моментов, которые следует учитывать при написании отчета об ошибке?
  • Серьезность и Приоритет Дефекта (Severity & Priority)
  • Может ли быть высокий severity и низкий priority? А наоборот?
  • Жизненный цикл дефекта?
  • Пришёл баг из продакшена, что делаем?
  • Что такое утечка дефектов и релиз бага? (Bug Leackage & Bug Release)
  • Что означает плотность дефектов при тестировании ПО?
  • Что означает процент обнаружения дефектов при тестировании ПО?
  • Что означает эффективность устранения дефектов при тестировании ПО? (DRP)
  • Что означает эффективность Test case в тестировании ПО? (TCE)
  • Возраст дефекта в тестировании ПО?
  • Что такое принцип Парето в тестировании ПО?
  • Каковы различные способы применения принципа Парето в тестировании ПО?
  • В чем основное отличие отладки от тестирования? (Debugging Vs. Testing)
  • Почему в программном обеспечении есть ошибки?
  • Что вы будете делать, если во время тестирования появится ошибка?
  • Как вы справляетесь с невоспроизводимой ошибкой?
  • Если продукт находится в производстве и один из его модулей обновляется, то необходимо ли провести повторную проверку?
  • Что такое анализ рисков?
  • В чем разница между coupling и cohesion?
  • Что такое скрытый дефект? (Latent defect)
  • Что такое маскировка ошибок, объясните примером?
  • Категории отладки? (Debugging)
  • Что такое Эффективность удаления дефектов? (DRE Defect Removal Efficiency)
  • Что такое сортировка дефектов? (Bug triage)
  • SDLC и STLC
  • Что вы знаете о жизненном цикле разработки ПО? (SDLC Software Development Lifecycle)
  • Что такое цикл/колесо Деминга? (Deming circle/cycle/wheel)
  • Модели разработки ПО?
  • Что такое Agile?
  • Что такое Scrum?
  • В чем отличие Canban от scrum?
  • Что знаете о User stories в гибких подходах к разработке?
  • Что значит жизненный цикл тестирования ПО? (STLC Software Testing Lifecycle)
  • Что вы знаете о техниках оценки теста? (Test Estimation)
  • В чем разница между SDLC и STLC?
  • Что такое быстрая разработка приложений? (RAD Rapid Application Development)
  • Что такое разработка через тестирование (TDD Test Driven Development)?
  • TDD в Agile Model Driven Development (AMDD)
  • Тестирование на основе моделей (MDD Model-driven Development)
  • Тестирование на основе данных (DDT Data Driven testing)
  • Тестирование на основе риска (RBT Risk Based Testing)
  • Что вы знаете о потоковом тестировании? (BFT BusinessFlowTesting)
  • Тестирование в разных сферах/областях (testing different domains)
  • Что такое веб-тестирование и как его производить?
  • Тестирование банковского ПО
  • Тестирование электронной коммерции (eCommerce)
  • Тестирование платежного шлюза (Payment Gateway)
  • Тестирование систем розничной торговли (POS Point Of Sale)
  • Тестирование в сфере страхования (Insurance)
  • Тестирование в сфере телекоммуникаций (Telecom)
  • Тестирование протокола: L2 и L3 OSI
  • Тестирование интернета вещей (IoT Internet of Things)
  • Что такое облачное тестирование? (Cloud testing)
  • Что такое тестирование сервис-ориентированной архитектуры? (SOA Service Oriented Architecture)
  • Что такое тестирование планирования ресурсов предприятия? (ERP Enterprise Resource Planning)
  • Тестирование качества видеосвязи WebRTC-based сервиса видеоконференций
  • Что такое тестирование ETL?
  • Мобильное тестирование
  • Каковы особенности в тестировании мобильных приложений? В чем отличия тестирования мобильного приложения от десктопного?
  • В чем отличия тестирования мобильного приложения от web?
  • Что вы знаете о симуляторах и эмуляторах?
  • Типы мобильных приложений?
  • Что основное проверить при тестировании мобильного приложения?
  • Последнее обновление Android/iOS, что нового?
  • Основные различия iOS и Android?
  • Виды жестов и т.п.?
  • Как проверить использование процессора на мобильных устройствах?
  • Объясните критические ошибки, с которыми вы сталкиваетесь при тестировании на мобильных устройствах или в приложениях?
  • Сети и около них
  • Что такое http?
  • Компоненты HTTP?
  • Методы HTTP-запроса?
  • Что такое ресурс?
  • Что такое веб-сервис? (WS Web service)
  • Отличие сервиса от сервера?
  • Отличие сервиса от веб-сайта?
  • Что такое REST, SOAP? В чем отличия?
  • Что такое JSON, XML?
  • Коды ответов/состояния сервера с примерами? (HTTP status code)
  • Почему ошибка 404 относится к 4** клиентской, если по идее должна быть 5**?
  • Какие еще бывают протоколы?
  • TCP/IP это?
  • Что такое куки (cookies)?
  • Разница между cookie и сессией/сеансом?
  • Отличие stateless и stateful?
  • Различия методов GET и POST?
  • Клиент серверная архитектура?
  • Уровни OSI?
  • Что вы подразумеваете под потоковыми медиа? (Streaming media)
  • Основные команды Linux?
  • Почему важно тестировать в разных браузерах?
  • Адаптивный веб-дизайн vs. Отзывчивый веб-дизайн, в чем разница? (Adaptive Vs. Responsive)
  • Как сервер узнаёт, с какого типа устройства/браузера/ОС/языка вы открываете веб-сайт? (Например, для Adaptive design)
  • Чем отличается авторизация от аутентификации?
  • Как работает авторизация/аутентификация? Как сайт понимает, что ты залогинен?
  • Почему важно делать подтверждение e-mail при регистрации?
  • Что такое кэш и зачем его очищать при тестировании?
  • Что такое AJAX в вебе?
  • Как работает браузер (коротко)?
  • Как работает сотовая связь?
  • Как работает подключение к Wi-Fi?
  • Базы данных
  • Может ли у ПО быть сразу несколько баз данных?
  • Что такое SQL?
  • Что вы знаете о NoSQL?
  • Что такое нормальные формы?
  • Понятие хранимой процедуры?
  • Понятие триггера?
  • Что такое индексы? (Indexes)
  • Какие шаги выполняет тестер при тестировании хранимых процедур?
  • Как бы вы узнали для тестирования базы данных, сработал триггер или нет?
  • Как тестировать загрузку данных при тестировании базы данных?
  • Основные команды SQL?
  • Подробнее о джойнах? (Join)
  • Типы данных в SQL?
  • ПРАКТИКА
  • Дана форма для регистрации. Протестируйте.
  • Определение серьезности и приоритета
  • Определение граничных значений и классов эквивалентности
  • Логические задачи
  • Еще примеры
  • Набор небольших задач по SQL
  • Тестирование чашки для кофе
  • HR: Как вы будете решать конфликты между членами вашей команды?
  • HR: Что делать, если разработчик утверждает, что найденный дефект таковым не является?
  • Вот тебе комп и работающий сайт. Сделай мне 401-ю ошибку.
  • С чего начать абсолютному новичку?
  • Путь
  • CV
  • Собеседование
  • Ошибки в работе у начинающих тестировщиков
  • Полезное
  • Youtube-каналы
  • Telegram
  • Web
  • Книги
  • Курсы
  • Источники
Подробнее..

Работа в IT не по специальности недоступная роскошь или захватывающий челлендж?

04.12.2020 12:06:11 | Автор: admin

Привет! Меня зовут Юля, и я технический писатель в Xsolla. В этой статье я расскажу о том, почему всех так привлекает IT-сфера и как в нее попасть, не имея соответствующих знаний и опыта. Поговорим о том, как начать учиться самостоятельно и какие при этом могут возникнуть трудности.


Если очень захотеть, можно IT-специалистом стать

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

Почему?

Чтобы найти ответ на данный вопрос, не нужно идти далеко он лежит прямо перед вами. Или у вас в кармане. Или в соседней комнате. Да и много где еще. Говоря простыми словами, IT-технологии окружают нас повсюду: любые устройства и гаджеты, коммуникации между людьми, быт все это становится автоматизированным. Если еще вчера мы должны были дойти до магазина, чтобы купить продукты, то сегодня мы можем сделать это, нажав пару кнопок на экране телефона. А это значит, что быть продавцом в магазине уже неактуально. Актуально быть специалистом, который сможет создать тот самый магазин прямо у нас в кармане. Спрос на технологии порождает спрос на специалистов, которые их разрабатывают. А это, в свою очередь, означает достойную зарплату, первоклассную репутацию и много других плюшек.

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

Как?

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

Специализированная литература

Освоение информационных технологий сейчас это не такой болезненный процесс, как 20 лет назад. На данный момент практически любую нужную вам книгу можно приобрести или скачать в интернете. В открытом доступе представлены тысячи ресурсов и материалов (как платных, так и бесплатных), по которым можно изучать интересующие вас темы. Очень много ценной информации для IT-специалистов можно найти на таких ресурсах, какhttp://personeltest.ru/aways/habr.com/ru/,http://academy.yandex.ru/,https://tproger.ru/,https://stackoverflow.com/и многих других.

Онлайн-обучение

Если литературы недостаточно, то больше знаний и мотивации могут дать онлайн-курсы. Их преимущество в том, что вы будете получать информацию системно и порционно, а полученные знания сможете закреплять с помощью домашних заданий. Чаще всего подобные курсы платные, однако сейчас, в период самоизоляции, многие платформы делают на свои курсы большие скидки или вовсе предоставляют к ним бесплатный доступ. Из популярных платформ стоит выделитьhttps://www.udemy.com/,https://htmlacademy.ru/,https://geekbrains.ru/,https://www.datacamp.com/.

Практические школы

В последнее время многие вузы и компании стали организовывать практические школы с целью привлечения потенциально крутых специалистов. С успехом подобные мероприятия проводили Сбербанк, Yandex, Xsolla, центр образования Level UP, НИУ ВШЭ и другие организации. Такой вариант обучения будет полезен тем, кто планирует получать знания не только из книг, но и от людей. В школах со студентами взаимодействуют лекторы и наставники, которые помогают лучше освоить информацию. Еще один плюс таких мероприятий в том, что большинство из них бесплатные, нужно лишь успешно выполнить тестовое задание. Школа может стать отличным пунктом в вашем будущем резюме. Кроме того, самым выдающимся выпускникам школ часто предлагают дальнейшее сотрудничество или стажировку. Кстати, о стажировках

Стажировка или практика

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

Магистратура в IT

Этот способ подойдет для тех, кто хочет получить не только знания, но и диплом IT-специалиста. Однако здесь есть несколько нюансов:

  • Первоклассную магистратуру, особенно в провинции, найти нелегко.

  • На обучение в магистратуре придется тратить достаточно много времени и сил.

  • Хорошая магистратура обойдется вам в круглую сумму.

  • Многие знания, полученные во время обучения, могут оказаться неактуальными на практике.

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

Мой путь из экономиста в технического писателя

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

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

Кстати о CV: грамотно составленное резюме еще один из способов заинтересовать работодателя. Возможно, у вас нет опыта и профильного образования в IT, но о вас может сказать другое: ваши soft skills, подход к изучению информации, ценности в жизни и просто взгляд на мир. Поэтому, начиная свою карьеру, не поленитесь и приготовьте крутое резюме.

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

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

Ты такой не один

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

Леонид Ратанов, Tech Lead

После обвала рубля в 1415 годах и принятого решения закрыть собственный бизнес, возник вопрос: чем заниматься дальше? Вспомнив о том, что в школьные годы активно участвовал в олимпиадах по информатике и математике, я поставил себе цель стать разработчиком. Закрыл бизнес, устроился наемным специалистом к своим конкурентам и по ночам и выходным начал изучать Java. Через полгода переключился на изучение Android.

Процесс самообучения был неравномерным мог неделями засиживаться за ноутбуком, а были перерывы длиной в полгода. Все это время я пилил свой собственный проект, в процессе постоянно изучая новые темы. Читал книги, статьи, проходил онлайн-курсы. В тот момент остро ощущалась нехватка фундаментальных знаний, отсутствие профильного образования. Через 2,5 года самообучения я наконец решился сменить сферу деятельности и с первой же попытки получил оффер на позицию Junior Android Developer. Рост был стремительным: за два года я дорос до позиции техлида в Xsolla.

Рецепт довольно простой ставить себе цель, постоянно поднимать планку и никогда не сдаваться!

Николай Гагаринов, Junior Backend Developer

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

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

Что бы я посоветовал:

  1. Не думать о том, что учиться уже поздно. Я знаю людей, которые пришли в IT после 3040 лет и добились успеха.

  2. Заниматься стоит регулярно выделять себе хотя бы 30 минут в день.

  3. Читать книги (например, Идеальный программист, Цель процесс непрерывного совершенствования).

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

Егор Черных, Junior QA-специалист

Я закончил магистратуру по специальности ГМУ в НИУ ВШЭ Пермь, после чего начал заниматься предпринимательством (сеть сервисных центров по ремонту техники). Со временем бизнес перестал приносить желаемый доход, при этом отнимал довольно много сил и времени. Стал задумываться о смене сферы деятельности выбор пал на IT (компания G-Core Labs). Выбрал QA-направление (тестирование компьютерных игр), потому что это один из самых простых способов попасть в сферу, не имея профильного образования или навыков. Мне повезло, так как компания проводила бесплатное вступительное обучение, после которого я начал разбираться во всех аспектах деятельности. Сейчас я работаю web-тестировщиком в Xsolla и на данном этапе своего развития я считаю это своим наибольшим успехом!

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

Если вам интересен мир IT, то главный совет не бояться: спрашивать, узнавать что-то новое для себя, ходить на собеседования (даже если поначалу будут отказы). Все это дает определенный опыт и вектор дальнейшего развития, что стоит еще узнать. Если хочется стать разработчиком, лучше пройти курсы (хотя бы онлайн). Довольно много компаний на рынке ищут QA без опыта работы, на такие вакансии следует обратить внимание. На самом деле, сейчас в сети очень много материалов по теме IT, главное захотеть!

Максим Куртлацков, Product Owner

В 2010 я работал государственным инспектором в Ростехнадзоре. Инспектировал сильвинитовые шахты в Березниках и Соликамске. Позже была моя первая попытка прийти в digital-сферу: я устроился на позицию SMM-специалиста в рекламное агентство. Очень веселое было время, но голодное. Большая з/п сманила меня на север инспектировать инженерные изыскания магистральных газопроводов в Сибири и на Дальнем Востоке. По возвращении захотелось чего-то более серьезного и стабильного: пошел в нефтянку, ездил по вахтам в Заполярье, но все равно продолжал мечтать об играх. Популярные игровые движки стали бесплатными, и я начал их изучать в межвахтовках. Ввели санкции, что сразу отразилось на работе меня вскоре уволили, и я окончательно разочаровался в профессии. Отрасль лихорадило после санкций, поиск новой работы не увенчался успехом, поэтому я сконцентрировался на игровой разработке.

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

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

Анастасия Савостьянова, Flow-developer

На момент начала карьеры в IT профильного бэкграунда у меня не было я закончила эконом ПГНИУ и юриспруденцию в ВШЭ, а также училась на переводчика в Littera ПГНИУ. На момент принятия решения о смене отрасли работала в экономической сфере (сначала госсектор, затем коммерческая организация). Интерес к IT появился в 2017 году, когда я поняла, что хочу развиваться дальше. Выбирала сферу по следующим критериям:

  • Инновационная отрасль

  • Возможность самореализации

  • Работа над продуктами, которые действительно необходимы людям

  • Талантливые коллеги и динамично развивающееся комьюнити

Все это я нашла для себя в IT.

С момента появления мысли о переходе в IT-сферу начала учиться самостоятельно: проходила курсы на GeekBrains по программированию. Получив определенный пул знаний, решила искать работу. Первое место работы в IT ЭР-Телеком Холдинг: прошла конкурсный отбор на позицию бизнес-технолога, доросла до тимлида. Мне очень повезло с проектом желание создавать новое исполнилось. Однако мне не хватало IT-атмосферы, поскольку ЭРТХ в первую очередь телекоммуникационная компания.

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

За все время работы в IT прокачала свои навыки в продуктовом мышлении и программировании, стала лучше понимать свою команду. Мне удалось посетить конференцию Product Sense в Минске и удаленно поучаствовать в тренинге для продакт-менеджеров от Agilix Consulting.

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

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

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

Большое желание, системный подход и трудолюбие и ваша мечта сбудется.

Подробнее..

Работа ИТ-специалистов в Русфинанс Банке от найма до реализации амбициозных проектов

23.12.2020 14:04:12 | Автор: admin
При поиске работы у кандидатов часто возникают вопросы: рассматривать или не рассматривать ту или иную вакансию, оправдаются ли ожидания от работы, как будет выстроено взаимодействие внутри команды, чего ожидать при трудоустройстве. Поиск ответов на них и сбор информации отнимает силы и время (опросы знакомых, обращение к Google, получение рекомендаций на рынке и т.д.).

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

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



О найме разработчиков


Какие этапы нужно пройти кандидату, чтобы попасть на работу в Русфинанс Банк?
Процесс подбора чаще всего включает в себя 3 этапа. Первый отбор резюме. По заранее определенным критериям рекрутер выбирает CV и обсуждает их с экспертами из IT. Если разработчику поступает звонок от рекрутера банка, он может быть уверен, его скилы и навыки интересны техническим специалистам. Второй этап онлайн встреча-знакомство. На ней присутствует HR, ИТ-эксперт и Product Owner (если вакансия открыта в Agile-команде). Проведение встречи со всеми заинтересованными сторонами экономит время кандидата, а также позволяет составить впечатление о будущих задачах и атмосфере в команде. По некоторым позициям есть 3-й этап тестовое задание. По итогам его выполнения организуется встреча с техническими специалистами для обсуждения хода решения. Если все этапы пройдены успешно, кандидат получает предложение о работе.

Какие критерии отбора резюме кандидатов на ИТ-вакансии?
Требования к успешному кандидату могут отличаться в зависимости от позиции, но, как правило, если речь идет о позиции разработчика, оцениваются следующие аспекты: опыт в разработке, знание необходимых технологий (например, Oracle PL/SQL), образование, предыдущий опыт работы (профиль компании, продолжительность работы, реализованные проекты).

Как организован процесс проведения интервью в пандемию?
До пандемии мы рассматривали кандидатов преимущественно из 2-х городов: Москва и Самара (там у нас находятся центральные офисы). Сейчас, когда большинство сотрудников работает удаленно, мы стали более гибкими и рассматриваем кандидатов из разных городов России.
Все этапы отбора проходят по видеосвязи. Это дает возможность нашим кандидатам не тратить время на дорогу, а нам более оперативно организовать интервью и закрывать вакансии. Оформлять на работу новых сотрудников мы также можем в городе их проживания.

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

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

Знакомство новичка с членами команды сейчас выглядят так:



О работе


В каком формате сейчас работает команда?
С конца 2019 года мы внедряем технологию FLEХ-офис переводим сотрудников в Москве на работу с flex-ноутбуков. Благодаря этому наши ребята могут подключаться к работе из любой точки, где есть Интернет (из дома, из кафе и т.д.). В офисе больше нет закрепленных рабочих мест. Если сотруднику нужно выйти в офис, он выбирает любое понравившееся рабочее место в своей логической зоне. Это удобно.

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

О ключевых проектах


Над какими проектами работала команда?
Можно выделить несколько ключевых проектов, над которыми в последнее время активно работала команда.

1. Новый сайт банка. В июле 2020 года мы запустили современный и отвечающий последним требованиям технологий сайт банка. На новом сайте можно онлайн рассчитать стоимость кредита, отправить заявку на кредит, зайти в свой личный кабинет (для клиентов физических лиц). Личный кабинет для клиентов юридических лиц также уже разработан, и в начале 2021 года он станет доступен первым дилерам.



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

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

Цель перед нами стояла амбициозная реализовать 5 интеграций с брендами/дилерами/ класифайдерами до конца 2020 года. И несмотря на форс-мажор с пандемией, мы сейчас очень близки к её достижению. Если 2020 год не преподнесет новых сюрпризов, мы можем даже превзойти свои первоначальные ожидания.

Об Agileтрансформации


Какие изменения внедряются в банке?
2020 год стал для нашей команды годом перехода на новый уровень в Agile-трансформации. Если раньше мы могли говорить только о том, что у нас есть несколько продуктовых SCRUM-команд, то теперь можем рассказать куда больше. Изначально мы черпали опыт, базируясь на том, что смогли имплементировать в текущие процессы разработки и сопровождения несколько SCRUM-команд. А потом с полученными знаниями пошли дальше.

Мы запустили новые сервисные команды, работающие по SCRUM, масштабировали по LeSS текущие продуктовые команды под одним большим продуктом Автокредитование и запустили 7 команд сервисов разработки по Kanban, и самое сложное связали все это в единую систему поставки ценности Клиенту. Все это было бы невозможно без команды по-настоящему вовлеченных и талантливых ребят.

Отдельно хочется рассказать про работу продуктовой команды Автокредитование нам удалось настроить её работу в классическом понимании LeSS.

Команда планирует свой спринт в два этапа, отбирая задачи из единого Backlog на Sprint planning 1 в фича тимы, и планирует работу непосредственно в Scrum командах на Sprint planning 2.

Демонстрирует результаты работы спринта на едином Sprint Review. Совершенствуется и решает системные вопросы внутри команды на Overall Retrospective. Опирается в своей работе на практики DevOps, постепенно внедряя новые инструменты и подходы.

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

О технологиях


Какие стеки разработки используются на проектах?
Большинство проектов реализовано на стеке разработки Java EE + Oracle. Он обеспечивает высокую надежность, производительность и масштабируемость. Фреймворк используется собственной разработки.
Для фронтов развиваем направление React / TypeScript.
При разработке сайта используется JavaScript + Angular.
Управление разработкой ведем в Jira. Причем он используется как продуктовыми SCRUM-командами, так и core-сервисными командами, работающими по Waterfall.
Для тестов используется Selenium, есть тесты на Java, Kotlin, немного на Python.
Для мониторинга Grafana и Gattling.
Активно развиваем DevOps практики. Сервис CI/CD состоит из следующих компонентов: Jenkins, Nexus, SonarQube, сервер сбора метрик CI/CD (Grafana + InfluxDB).

Какова политика стандартов разработки и код-ревью?
Для основного стека внедрены стандарты разработки для унификации подходов к реализации. Активно проводится код-ревью.

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

О планах на будущее


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

А еще новый год будет ознаменован важным событием в 2021 году Русфинанс Банк будет присоединен к Росбанку.

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

До встречи на новой площадке в новом году!
Подробнее..

Перевод История о том, как один подросток сбежал от физического труда в программирование

27.05.2021 08:07:06 | Автор: admin


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

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

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

Ты же в курсе, что работа связана с физическим трудом?

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

Ну ладно. Когда выходишь?

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

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

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



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

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

Внесу ясность: хотя последние четыре-пять лет я хватался за всякую представляющуюся возможность усесться за компьютер, к специалистам я не относился. Благодаря программе, позволявшей старшеклассникам учиться программированию, я прошел несколько вузовских курсов по Фортрану и структурам данных, обгоняя учебную программу. Также я более-менее научился писать на BASIC в результате многочасовых попыток делать игры на соседском TRS-80. Но в моих знаниях по программированию было, мягко говоря, много пробелов. Я никогда не писал масштабных и сложных программ, не работал с чужими и вообще не занимался программированием в рабочей обстановке.

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

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



Примерный портрет Джима (возможны расхождения с оригиналом)

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

Компьютерные проблемы Джима брали начало из сделки с калифорнийскими разработчиками, которую он заключил раннее он заказал систему для ведения бизнеса. Компания была очень маленькой, буквально пара человек. Они продали ему 16-разрядный мини-компьютер Data General Eclipse с несколькими терминалами, а также сделали специальную программу для обработки заказов на ремонт, платежей и зарплатных ведомостей.

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

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

А именно. Все системные файлы, которые что-то делали, были написаны на BASIC отлично, благодаря долгим годам корпения над играми для TRS-80 я неплохо знал BASIC. Но, если открыть какой-нибудь из этих файлов, он оказывался пустым. Программа есть, а в редакторе кода ничего не отображается. Судя по размеру файлов я проверил в директории, где они находились содержимое в них было. Но их как-то сделали недоступными для просмотра.

Если бы у меня были компьютеры получше в годы юности, я бы, наверное, сразу встал и ушел без малейшего понятия, что с этим делать. Но я много времени провел за допотопными или просто примитивными машинами вроде мини-компьютера PDP-8/E производства Digital 1974 года, который стоял в школе, или моего личного инструктора по микрокомпьютеру Netronics ELF II, где для ввода-вывода служили клавиатура с шестнадцатеричными кодами и лампочки. Поэтому я кое-что знал о машинном коде, форматах файлов, заголовках, системных утилитах всяких низкоуровневых вещах. По крайней мере, об их существовании.

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



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

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

В заголовках выделялось несколько непонятных мне областей, в которых обнаруживались различия между нормальными и корявыми файлами. Я стал просто вслепую экспериментировать с кодом, меняя некоторые символы в корявых файлах. Первые несколько попыток привели только к повреждениям файла, из-за которых он переставал даже открываться. Но потом я дошел до одного места, где в нормальных файлах стоял символ E, а в корявых символ F (E в шестнадцатеричной системе исчисления соотносится с 1110 в двоичной, а F с 1111). 1110 против 1111, разница всего-то в один бит. И я просто взял и заменил в корявом файле F на E.

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

У меня колотилось сердце: казалось все более и более реальным, что я сумею решить проблему Джима. И, самое-то главное, смогу подкрепить слово делом, или как там говорят? На тот момент я провел в офисе примерно час, еще около сорока пяти минут понадобилось, чтобы перебрать все файлы и везде заменить символы. Сейчас я бы, наверное, попытался сделать какой-то скрипт, который бы все это провернул автоматически, потому что программисты не зря слывут лентяями. Но подобные вещи оставались за пределами моих возможностей в восемнадцатилетнем возрасте, да и не факт, что Data General Eclipse так уж хорошо подходил для создания скриптов, насчет этого не поручусь.

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

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

Сколько просишь?

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

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

Выпиши Неду чек на сто долларов.

Потом он сообщил мне, что у его еще много таких задач, если мне случаем нужна работа систему еще дорабатывать и дорабатывать. Он предложил мне четыреста долларов в неделю в течение лета, чтобы я приходил исправлять ошибки и писать новые программы, которых ему не хватает.
Так что я ушел от него с сотней долларов и работой на лето в кармане. Родители были счастливы, да и я тоже. Я отработал у Джима и то лето, и следующее, денег мне хватило и на жизнь, и на учебные расходы, да еще осталось, чтобы купить свой первый настоящий компьютер Commodore VIC-20. Я неплохо заработал, делая то, что мне нравится.

Какое-то время меня преследовало чувство, что я прогадал в этой своей первой сделке с Джимом. Было ясно, что на тот момент я диктовал условия и мог спокойно взять с него и побольше, чем сотню. Он бы заплатил, и, наверное, это было бы справедливо ведь никто, кроме меня, не смог справиться с проблемой. Вообще-то, до этого он отдавал программистам и более значительные суммы за работу, даже безрезультатную. И я спрашивал себя: сколько еще денег я мог бы унести домой в тот день? Возможно, я показал этим свой непрофессионализм?

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

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

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

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

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru