Читаете ли вы наш блог на Хабре? Если да — оцените нас, пожалуйста, и поделитесь своим мнением. Пройти опрос (займет 5-7 минут)
Обо мне

Github
https://github.com/Tommytto

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

Последняя прочитанная книга - "Паттерны проектирования" от HeadFirst (на основе "Банды Четырех").

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

Дома развиваюсь в смежных облатях.

  • Настраиваю CI, что помогает в работе решать простые и средние задачи без помощи DevOps.
  • Прохожу курсы по Machine Learning, чтобы можно было во фронтенд принести еще больше магии.
  • Пишу бэкенд, в основном на NodeJs, что помогает лучшему проектированию АПИ.

Изучаю различные UX практики, чтобы еще больше спорить с дизайнерами.

Могу поднять проект с нуля и провести его полностью до production, включая фронтенд, бэкенд, CI/CD.

Написал проект для изучения английского изыка на основе ReactNative + MobX.

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

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

    Профессиональные навыки
    Опыт работы
    Мы проектируем пользовательские интерфейсы, разрабатываем веб-сервисы и оригинальные веб-сайты
    Фронтенд
    Январь 2017 — По настоящее время (3 года и 7 месяцев)

    1. Сверстал множество макетов, начиная с дизайна на основе bootstrap, заканчивая дизайн-системой, с различными анимациями.


    2. Участвовал в создании правил принятия макетов от дизайнеров. Свод правил был описанием того, как должна строиться дизайн система со стороны фронтенда (набор кнопок, шрифтов, экранов, вынос в компоненты и тд).


    Ниже указаны несколько основных проектов.

    3. Проект админки для управления обучением внутри компаний.
    (React+Redux)
    В мои задачи входило:
    - Написание модуля авторизации (сложная система ролей
    + JWT).
    - Написание модуля переводов + оптимизация интерфейса под RTL.
    - Код ревью.
    - Исправление утечек памяти и оптимизация интерфейса
    под огромные списки.


    4. Проект линейной игры, где пользователь решает задачи, касаемо информационной безопасности.
    (React + Redux)
    Что сделал:
    - Написал простейший движок игры на nodejs(express),
    чтобы показать заказчику механику игры (бэкенд не
    успевал).
    - Старт и настройка проекта.
    - Настройка и внедрение WebSocket.
    - Внедрение проекта в текущую инфраструктуру.
    - Управление командой фронтендеров из 2 человек
    - Код ревью.
    - Проектирование АПИ (в целях оптимизации отошли от
    REST).
    - Консультирование заказчиков касательно игры и
    технических вопросов.


    5. Американский стартап поиска площадок для выгула собак
    (React+Redux+Graphql)
    В мои задачи входило:
    - Написание новых фич.
    - Внесение мелких правок по бэкенду (Ruby).
    - Переписывание наследия от MVP.
    - Интеграция Graphql (Apollo).
    - Общение с заказчиком (на английском).
    Развитие проекта:
    - Написал небольшой скрипт для управления докер
    контейнерами, что позволило перевести
    тестировщиков на локальную разработку, сократить
    время старта задачи, за счет "однокомандного"
    скрипта.
    - Добавил e2e тесты (cypress).
    - Добавил CI, которая запускала тесты.
    - Доработал существующий git flow.


    6. Развитие экосистемы и обучение младших раработчиков:

    - Написал несколько статей для начинающих про основы
    Реакт и клиент-серверного взаимодействия.
    - Провел ряд лекций по различным темам (JavaScript,
    Flow, client routing).
    - Участвовал в создании этапов в CI, которые позволили
    уменьшить количество багов, попадающих на
    production, а также читаемость кода, за счет единого
    валидатора.


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


    8. Под моим личным руководством за 1.5 года выросло 2 лоу-мидла.

    Высшее образование
    Томский политехнический университет
    Томск
    Факультет: Институт кибернетики (ИК)
    Сентябрь 2015—Июль 2019 (3 года и 10 месяцев)

    Программная инженерия