Андрей Ларионов

Black and white portrait of a smiling man with glasses, short hair, blurred background.
Более 15 лет стажа. Работал в различных областях, применяя самые разные технологии и языки. Много нанимал. Знаю, что отличает хорошего разработчика от ремесленника и готов помочь стать тем или другим.
Часовой пояс: GMT +1

Опыт

Профессионально занимаюсь разработкой более 15 лет в самых различных областях:

  • начал карьеру PHP разработчиком в транснациональной корпорации Schlumberger. Там же освоил Oracle 9i и PL/SQL. Внедрил bugtracker (trac) и систему контроля версий (SVN);
  • после этого работал над внедрением ERP Microsoft Dynamics AX (Axapta) и программировал на X++ для крупнейшего в Западной Сибири дилера и ритейлера комплектующих;
  • 10 лет в компании Яндекс:
    • младший разработчик. Разрабатывал расширения и улучшения для JIRA, обеспечивал ее бесперебойную работу;
    • руководитель группы разработки инструментов. Собрал команду, которая сегодня работает в ведуших компаниях мира (Google, Apple, Deutsche Bank). Мы создали на тот момент единственное решение позволявшее иметь JIRA read-only реплику в реальном времени. Это позволило горизонтально масштабировать ее для операций чтения. Также разработали и поддерживали десяток внутренних и внешних сервисов Яндекса, включая Root, Expert.
    • старший разработчик IaaS. Участвовал в разработке и интеграции одного из внутренних облаков компании на базе OpenStack.
    • старший разработчик Яндекс.Облака. Занимался архитектурой и проектированием систему разграничения доступа и прав.

За время карьеры освоил Java, Python, Rust на уровне достаточном, чтобы делиться своим опытом, и еще пяток языков и стеков на уровне "могу сделать фичу и поправить баги".

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

Не прекращаю учиться сам.

Ключевые навыки

  • java-se
  • python
  • concurrency
  • linux
  • openstack
  • rust
  • базы данных
  • тесты
  • jenkins
  • java
  • mysql
  • opensource
  • nginx
  • unit testing
  • infrastructure
  • saltstack

Специализация

  • Программирование на Rust

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

  • Программирование на Java

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

  • Программирование на Python

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

Статьи

Отзывы

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

Andrew Nikitin, 12/11/18