Мы продолжаем серию публикаций о стажировке в СКБ Контур. Сегодня познакомимся с Анной Шляк, которая расскажет как прошла ее стажировка в Питере и поделится советами.




Тестовое задание


Об СКБ Контур я узнала от одногруппницы: «У них есть классненькие стажировки на C#». В феврале 2017 я дождалась начала стажировки, но была дико расстроена: тестовое задание показалось мне просто непосильным. Нужно было написать сервер статистики для игры-шутера. «Классненько», — подумала я и начала стараться. К концу февраля всё-таки смогла сделать первоначальный вариант и отправить на проверку.


Отбор по тестовым шел в две волны: сначала рассматривали тех, кто отправил ответы до 1 марта, потом — до 19 марта. Я хотела попасть в первую волну, и, как оказалось, не зря. На тестовое мне ответили: «Вы справились хорошо, но немного не дотянули до нашего ТОПа. До 19-го марта есть время, чтобы улучшить ваши ответы». Так я и сделала. Пока я писала код, появлялись новые уточнения и требования по заданию. В одном из уточнений был запрет использовать базу данных MS SQL Server. Если эта база не подходит, то как выбрать нужную? Наугад я выбрала SQLite и с тревогой отправила тестовое на проверку. И прошла дальше.


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




Мы учились писать чистый код, правильно работать с исключениями, попробовали технику TDD, изучили принципы Dependency Inversion. Все задания мы выполняли в парах, а в последний день нас разделили на команды и мы устроили соревнование по программированию. Жаль только что всего 4 дня, потому что это было действительно классненько!


Собеседования и оформление на стажировку


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


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


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


Меня взяли в команду Биллинга — это сервис, который позволяет продавать продукты Контура. Сама большая и распределенная команда: около 50 человек в Екатеринбурге, Питере и Ижевске.


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


Командировка


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




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


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


Большая задача


Весь август мы занимались одной большой задачей, связанной с часовыми поясами. В интерфейсе системы даты отображались по московскому времени, из-за чего у пользователей возникали проблемы. Нам нужно было научиться отображать время в часовом поясе пользователя. Пользователи нашей системы работают с потенциальными продажами, с которыми связано очень много различных дат, например, время создания, время жизни и т.д. Поэтому задача оказалась довольно трудоемкой и с множеством подводных камней, потребовала много общения с аналитиками и другими разработчиками. Например, я узнала, что в Ирландии до 1916 года был часовой пояс UTC–0:25:21.




Итоги


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


Я 2 раза побывала в Екатеринбурге, впервые в жизни получила зарплату и опыт работы по специальности, а главное — новые знания. Единственное разочарование — я хотела похудеть за лето, но с кухней в офисе, где полно вкусняшек, вышло наоборот :)


Советы бывалой


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

Пробуй и не бойся, что ожидания не совпадут с реальностью, порой это бывает очень классненько!

Комментарии (9)


  1. datacompboy
    22.01.2018 14:13
    +1

    Если «классенькая» то почему «стажировка» а не «стажировонька»? :)))


    1. mmmmmike
      22.01.2018 15:19

      Феминатив же.


  1. alz72
    22.01.2018 15:51

    Хреновенько изучили честно сказать, ибо явно не описка " Dependency Inversion" — так как данное воплощение паттерна IOС (Inversion of control) звучит как "Dependency Injection" :-)


    1. green_hippo
      22.01.2018 16:33

      Я просто оставлю это здесь: Dependency inversion principle, SOLID.


    1. Ogoun
      22.01.2018 16:37

      В SOLID'е D это как раз инверсия зависимости (Dependency Inversion).
      Dependency Injection это просто инструмент который просто реализует один из способов инициализации конкретных API в точках интеграции.
      А IoC, — обобщенный набор правил построения фреймворков (при реализации которого может использоваться и инъекция).

      Термин скорее всего правильный в статье.


      1. Nikita001
        23.01.2018 09:23

        Но в главном-то он прав.
        Неразумную женщину следовало поставить на место, так как ее место на кухне, а не за компом!!!
        В стажировках она участвует, понимаешь…
        image
        Рис.1. Маргарет Гамильтон, программист NASA, и ксерокопии, которые ей поручили делать на этом месте работы.


  1. alz72
    23.01.2018 09:27
    -1

    Учитывая активное минусование даже не буду пытаться вам возразить, просто дам вам совет — представьте что вы на собеседовании пытаетесь разъяснить ту самую буковку D из SOLID, только не принципы, а реальность, как это происходит на практике…
    Удачи !!!


    1. green_hippo
      23.01.2018 11:23

      Дружище, будь добрее :)


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


      1. alz72
        23.01.2018 12:04
        -1

        Спасибо — вы мне сэкономили кучу возможно впустую бы потраченного времени. Екатеринбург теперь для меня в смысле вакансий — в черном списке. Хотя кому интересно мое мнение, правда?
        Минусовать не нужно — я умолкаю навсегда ...