Евгений Шабанов
Ruby On Rails разработчик
[me]
Пишу код, потому что люблю сложные задачи и думать. С 2015 по 2020 год являлся ведущим техническим специалистом и играющим руководителем в компании, занимающейся автоматизацией ресторанов. В 2020 — 2021 годах работал бекенд разработчиком на стартап проекте, где самостоятельно изучал Python и Django. В настоящий момент работаю ведущим специалистом в автоматизаторе ресторанных процессов, менторствую и упрощаю жизнь с помощью кода и аналитики бизнес процессов. Первым по-настоящему "взрослым" стеком явился C#, Razor, с помощью которого я автоматизировал дополнительные процессы заведения с доставкой, что также вылилось в мою дипломную работу. С 2021 года программирую на Ruby и Ruby On Rails.
20.07.1992
Россия, Санкт-Петербург
Навыки
Ruby
  • ООП — Поверьте на слово, оно здесь проще, чем в C#, но похоже на Python.
  • Syntax — Спасибо классному стайл-гайду и rubocop.
  • Ruby Way — Наконец-то нашелся язык, на котором код похож на поэмы.
  • Gems
  • irb — Быстро написать и проверить код здесь лучше всего. Можно показать питонисту, как должна выглядеть консоль.
  • byebug — Дебаг и отладка.
Ruby On Rails
  • MVC — Как я раньше жил в среде MVT... В общем, архитектура моих приложений.
  • REST — Следую всегда и везде, даже в обычной жизни.
  • I18n — Перенял привычку правильно локализовать проекты еще в Django.
  • Проектирование — Писал на стартапе сценарии, представления и модели, а также CRUDL. Пишу и сейчас.
  • ActiveRecord — Запросы, Миграции. Изучал прилежно, использую сейчас.
  • Routes — Маршрутизация, ресурсы. Cтрою маршруты к контроллерам.
  • Хранение паролей, ключей — Secrets, Credentials, dotEnv. Я согласен с тем, что ключи не должны утекать...
  • ActionMailer — Умею создавать отправку почты из Rails приложений.
  • ActiveJob — Фоновые задачи через Resque, Inline, Async и Redis.
  • ActionCable — WebSocket, каналы Pub/Sub.
  • ActiveModel — Связи, Валидации, Колбеки, методы моделей, связи. А как без них?
  • Bundler — Создаю списки нужных гемов, фиксирую версии, распределяю по окружениям.
  • Devise, Pundit — Не путаюсь в аутентификации и авторизации.
  • CarrierWave — Загружаю данные в хранилище Amazon S3.
  • OmniAuth — Создавал вход в приложения через VK и FB. В связке с Devise.
  • Google Capcha v2 — Ну вы сами понимаете, юзеры бывают разные...
  • Capistrano — Деплоил на сервер через эту штуку и в целом неплохо получалось.
Тестирование
  • RSpec — Проверить 11 из 10 ситуаций, конечно же через RSpec.
  • TDD — Код через тесты.
  • Unit Testing — Тестирую публичные методы.
  • BDD — Тестируем поведение юзера через незатейливого зверька Capybara.
  • FactoryBot и Faker — Наполняю содержанием тесты, чтобы было на чем тестировать.
SQL
  • SQlite, Postgres, MSSQL — С такими базами я имел опыт.
  • Запросы — SELECT, JOIN (LEFT, INNER), GROUP, ORDER, UPDATE, ALTER, WHERE (пользуюсь нечасто в силу ORM, но смысл понимаю, а синтаксис всегда есть в Google).
Frontend
  • HTML, CSS — На уровне бекендера, умею адаптивную верстку через Bootstrap 5 (пример), TailWindCSS (данная страница), Skeleton.
  • JS — Как у любого бекендера, на базовом уровне, немного чистого JS, JQuery, js.erb для обновления содержимого.
Иструменты и прочее
  • IDE и редакторы кода — VScode, RubyMine, Sublime, Atom.
  • Окружение — Ubuntu, Linux Mint или PopOS, в данный момент Win10 + WSL2.
  • Linux — Терминал, базовые команды, ssh.
  • Git — Коммиты, пуши, реверты. немного ветки. Имел опыт с гитхаб и битбакет.
  • Amazon S3 — Как хранилище внешних файлов, немного копался в их политиках.
  • MailJet — Служба рассылок почты, используемая в одном из проектов.
  • Heroku — Деплоил на Хероку некоторые из своих проектов. Добавлял аддоны для postgres.
  • Домены, почта — Регистрировал домен, привязывал к почте, заносил записи в домен (A, C-name, TXT), SPF.
  • VPS — Создавал каплю на DigitalOcean, настраивал Nginx+Passenger, Redis, Postgres. Для дальнейшего деплоя одного из проектов.
Проекты
RUBY
  • Magic-8-ball — Консольное приложение, по мотивам magic-8-ball. [github]
  • Pick-a-card — Консольное приложение, случайная карта. [github]
  • HangMan — Консольная игра-виселица. [github]
  • Notepad — Консольный блокнот с SQlite. [github]
Ruby On Rails
  • BBQ — Приложение, для создания встреч с друзьями! [github]
  • ASKME — Клон AskMe, системы, в которой можно публично задать вопрос и получить ответ. [github]
Образование

Санкт-Петербургский государственный университет Телекоммуникаций им. профессора М. А. Бонч-Бруевича, 2019

09.03.02, "Информационные системы и технологии", бакалавр.

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

Курсы

Хороший Программист, 2021.

Ruby, Ruby On Rails

Иностранные языки

Английский

Сдавал FCE в 2010 (уровень B2), в настоящий момент B1.

Опыт Работы

2021 — настоящее время. Стандарт-7, ООО "Стандарт-7"

Разрабатываю бизнес-процессы в компании.

Ментор для молодых специалистов технической поддержки iiko.

Консультирую по API iikoRMS.

Разработал telegram-бота на Python, который отправляет сотрудникам уведомления о новых заявках в OKDesk, об изменениях статусов, руководитель может также рассылать уведомления.

Спроектировал, разработал и внедрил систему для хранения доступов удаленных терминалов и ПК на Python + Django (сейчас переписывается на Rails).

2020— 2021. Биново, ООО "Биново"

Разрабатывал систему электронной отчетности на Python и Django.

2015— 2020: Open Service, ООО "Опен Трейд АйТи"

Писал шаблоны в системе iiko на Razor, C#. разрабатывал плагины для iiko на C# и XAML.

Получил приз как лучший наставник.

За полгода стал ведущим специалистом, а затем руководителем.

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