Обо мне

Технологии

  • Отличное знание PHP, GO, SQL.
  • Отличное знание операционных систем Linux/Unix, MacOS X. Свободно работаю в командной строке, могу рассказать, как устроены операционные системы до уровня прерываний.
  • Хорошее знание языков программирования ANSI C, C99, JavaScript(Ajax, JQuery, Underscore, Prototype), Python, Ruby(RoR), Java(Не являются основными языками).
  • Уверенное знание баз данных – PostgreSQL(PostGIS), MongoDB, MySQL, SQLite. Типы индексов для меня не только Hash и B-tree, а также еще кластерные и некластерные, или денормализация, в зависимости от задачи.
  • Уверенное знание Redis, RabbitMQ.
  • Ни раз применял на практике горизонтальное масштабирование как работы системы(параллелизм, producer/consumer и т.п.) так и баз данных(шардирование, партицирование и т.п.)
  • Системы управления версиями –Git, Mercurial, Subversion(от коммитов до hooks).
  • Умею писать unit-тесты(PHPUnit, go testing) и автотесты(Selenium). TDD нравится, но не всегда есть возможность для его применения.
  • Работал с PHP-фреймворками такими как Zend, Pipes. А также с Ruby on Rails. Composer, gvm, и прочее для меня просто удобные инструменты.
  • Умею отлаживать программы/демоны с использованием XDebug, strace, lsoft, и других системных утилит. Могу быстро найти проблему в многосерверной конфигурации(сеть, диск, конкретный процесс) и если это возможно устранить её.
  • Могу писать многопоточные программы с использованием библиотеки pthread, или с использованием Python, понимаю проблемы GIL, а сейчас пишу на GO.
  • Личным интересом является компьютерная безопасность. Я знаю, как работает большинство атак (SQL(XML,PHP)-Injection, XSS, XXE, (D)DoS, Buffer Overflow и т.д.) и стандартные методы защиты от них.
  • Автоматизация – puppet, jenkins, git hooks, bash.
  • Системы управления проектами – Jira, Redmine, Phabricator, TargetProcess.
  • Системы code review – CodeCollaborator, RhodeCode, Crucible.

Достижения

    · Внедрение агрегации логов Logstash + Elasticsearch + Kibana

    · Минимизация даунтаймов на проекте, быстрое нахождения и разрешение возникающих проблем/затупов.

    · Полная интеграция оператора платежных систем Braintree.

    · Интеграция с внешними системами через RESTAPI– Twitter, Zendesk, CapsuleCRM.

    · Внедрение модуля PostGIS для СУБД PostgreSQLдля работы с географическими объектами(намного улучшена точность и производительность)

    · Оптимизация запросов, индексов к базам данных, выбор железа для серверов.

    · Миграция базы данных с MySQL на PostgreSQL.

    · Разработка REST-APIсистемы с использованием PHPDaemon.

    · Автоматизация поддержки и обновления проекта на многих серверах.

    · Разрабатывал расширения для Chrome(работа с сырыми технологиями находящимися в Draft’e)

Проекты, награды, сертификаты

Проекты

·Сервис рассылки push-уведомлений Pushwoosh. https://pushwoosh.com

Награды

  • Регулярно выступал на соревнованиях Capture the Flag(CTF) по компьютерной безопасности, таких как Codegate, PlaidCTF, RuCTF, PHD hackquest, DEFCON CTF и т.д.: 3 место на Всероссийские межвузовские соревнования по защите информации RuCTF 2013. 1 место в VolgaCTF Quals 2013, BaltCTF Quals 2013 и BaltCTF Final 2013. 2 место VolgaCTF Final 2013.
  • Участвую в security reward program таких сайтов как yandex.ru, google.com и др. Из последних достижений – критическая уязвимость на AmazingHiring, badoo.com.
  • 2 место в международной олимпиаде World-It в конкурсе Объектная СУБД Caché и BI DeepSee, 2014.
  • 2 место в международной олимпиаде World-It в конкурсе Объектная SAP Javascript/SQL, 2015.
  • Участвовал в олимпиадах по программированию имени Поттосина и ACM.

Публикации

  • 3 место в конкурсе студенческих докладов на конференции РусКрипто'2013. «Разработка алгоритма шифрования с открытым ключом и его применение для построения безопасного хранилища данных».// Системы высокой доступности
  • Lock Manager for Own Products // ACM link
  • Иногда пишу на хабре и в журнале “Хакер”

Сертификаты

Опыт работы
Январь 2014 — по настоящее время
Pushwoosh, Inc
Ведущий разработчик
Новосибирск
Сентябрь 2013 — Февраль 2014
Преподаватель
Новосибирск
Обязанности и достижения

Обязанности:
- Курс - сетевые технологии

Июнь 2012 — Январь 2014
Developer
Новосибирск
Обязанности и достижения

Обязанности:
- Parallels Plesk Panel developer

Июнь 2010 — Июль 2013
Лаборатория НГУ Parallels
Стажер
Новосибирск
Обязанности и достижения

Обязанности:
- Руководство командой из 5 человек
- Разработка web-приложений

Высшее образование
Сентябрь 2013 — Июнь 2015
НГУ-Новосибирск
Информационных технологий; ФИТ
Новосибирск
Сентябрь 2009 — Июнь 2013
НГУ-Новосибирск
Информационных технологий; ФИТ
Новосибирск
Рекомендательные письма
знакомый

Верен себе.

Письмо написано 20 июля 2010 в 15:38