Черевко Матвей Игоревич

Личная информация

Дата рождения: 31.10.1988
Место проживания: Новосибирск, Академгородок.

Контактные данные

E-mail: blackmatov@gmail.com
Skype: blackmatov
Телефон: +7-923-713-1000
Блоги: ru.matov.me, matov.me
Bitbucket: bitbucket.org/BlackMATov
LinkedIn: linkedin.com/in/matov

Профессиональные навыки
  • Основные языки C и C++, умеренно использую STL и Boost, шаблоны – без фанатизма. Не избегаю новых стандартов и подходов. В разное время приходилось писать также на C#, Lua, ActionScript 3, JavaScript и Erlang.

  • Использовал DirectX 8-9, OpenGL, OpenGL ES для различных рендеров компаний, в которых работал, и для своего движка, Qt - для написания различного тулсета к проектам.

  • Применял множество различных библиотек и сторонних решений, такие как lua, luabind, pugixml, stb_image, Box2D, HGE, bass, DevIL, SDL, zlib, ogg, theora, vorbis и т.п.

  • В курсе основных структур данных и алгоритмов, знания ООП (и не только его) присутствуют, многопоточный код на C++ пугает, но не на столько, чтобы его не трогать. Умею писать кроссплатформенный код (писал под Windows, Mac OS X, Linux, iOS, Android).

  • Имею здоровый интерес к различным подходам разработки, таким как data-driven, data-oriented, test-driven, использованию функциональных подходов и прочего интересного.

  • Не понаслышке знаком с Unity, в курсе сильных и слабых сторон этого движка. Занимался архитектурой мобильной f2p игры на нём, а также всесторонним расширением редактора при написании плагина для изометрии и плагина для флеш-анимаций. Решал острые проблемы производительности на слабых девайсах, недостатка памяти, выноса контента в бандлы и прочего.

  • Имею опыт с системами контроля версий (svn, mercurial, git) и автодокументирования (doxygen). Основные IDE разработки для C\C++ - MSVC6-2015, XCode, QtCreator, для всего остального - Vim/Emacs.

Домашние проекты / примеры кода:

Ядро моего домашнего 2d движка (C++) - bitbucket
Простенькая типизированная форматилка текста (C++) - bitbucket
Библиотека для каррирования и частичного применения (C++) - github
Плагин для изометрии в движке Unity (С#) - Unity Asset Store
Плагин для флеш-анимаций в движке Unity (С#) - Unity Asset Store
Проект мультиплеерной "Roguelike" игры (Erlang) - Поиграть, Bitbucket
Реализация "Coroutine" (Erlang) - Bitbucket
Реализация "Behavior Tree" (Erlang) - Bitbucket
Реализация "Entity System" (Erlang) - Bitbucket

Статьи / Публикации:

Изометрический плагин для Unity3D - habrahabr
Каррирование и частичное применение на C++14 - habrahabr
А также несколько коротких и простых статей в блоге - ru.matov.me

Опыт работы

2015-... Deus Craft (бывший EleFun Games), ведущий программист

Вернулся для разработки f2p тайм-менеджера для мобильных платформ в качестве тим-лида. Задачи: архитектура приложения, управление командой программистов, написание бОльшей части игры и все решения по поводу технологий, библиотек и прочего. Пишем на Unity 5.х и uGUI.

Проекты:

Cooking Craze - iOS, Android

2014-2015, Plamee, программист C++

Разрабатывал сетевую часть клиента "match-3" игры, взаимодействия с соц.сетями, синхронизируемый геймстейт с возможностью играть оффлайн и логику игры связанную с геймстейтом. Платформа iOS и Android.

Проекты:

Cake Story - iOS

2014-2014, 2GIS, программист C++

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

2011-2014, EleFun Games, ведущий программист C++

Поддержка движка (C++)

Этим я занимался основное время, проведенное в данной компании. Поддержка, добавление в движок нового функционала и правки специфичных системных ошибок. Затронул почти всё, начиная от рендера, заканчивая новыми возможностями для скриптеров в lua-скриптах и маленьких тулзов. Различные рода оптимизации, тоже, в основном, лежали на мне - от оптимизаций потребляемой оперативной и видеопамяти до различных оптимизаций вывода видео, звука, поисков бутылочных горлышек в скриптах.

Портирование на iOS и Mac OS X (С++, ObjC++)

Портировал местную технологию на iOS и Mac OS X, а также обеспечил комфортное портирование разработанных на ней игр.

RPG free2play (Unity, C#)

Последние месяцы занимался разработкой новой RPG free2play игры на Unity, довел до состояния альфы. После неё проект закрыли.

Проекты:

Fear for Sale: Phantom Tide - Windows, Mac
Witches' Legacy: Hunter and the Hunted - Windows, Mac
Mayan Prophecies: Cursed Island - Windows, Mac
Witches' Legacy: Lair of the Witch Queen - Windows, Mac
Fear for Sale: Nightmare Cinema - Windows, Mac
Mayan Prophecies: Ship of Spirits - Windows, Mac
Fear For Sale: Mystery of McInroy Manor HD - iOS
Witches' Legacy: The Charleston Curse - Windows, Mac
Fear for Sale: Sunnyvale Story - Windows, Mac

2009-2011, Alawar Entertainment, внештатный программист C++

Был нанят в команду CasaGames, для реализации Hidden Object игры «Бюро кладоискателей 2». Отвечал за техническую реализацию проекта. В качестве основы был взят движок HGE, как наиболее простой и понятный, в результате от HGE мало чего осталось, но всё же он помог. Был получен всесторонний опыт разработки относительно большой игры одним программистом с нуля.

Проекты:

Treasure Masters, Inc.: The Lost City - Windows

2010, WeenWeen, стартап, ведущий программист Action Script 3

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

Проекты:

Ранетки: Путь к славе - Browser
Отель Мечты (ссылки нет, так как игра, так и осталась в альфе)

2006-2009, Elladive Games, своя команда, программист C++ и AS3, инициатор и руководитель

Первые шаги в коммерческой разработке игр. На полном энтузиазме разработали (в основном вдвоем с художником) три казуальных проекта и издались. Также разработали несколько flash-игр на заказ по описанию заказчика. Получен первый опыт общения с издателями, первый опыт издательского QA и прочее и прочее.

PC-проекты:

Магические кристаллы - Windows
Яростный прорыв - Windows
Жемчужный остров - Windows

Flash-проекты:

Moverage - Browser
Pool Bomb - Browser
Word Quest - Browser

Дополнительная информация

По-настоящему люблю свою профессию и отдаюсь ей полностью; считаю это своим призванием с того момента, когда у меня появился ZX Spectrum. Последнее время познаю мир функционального программирования через Erlang (проекты можно увидеть на bitbucket) и Haskell. Постоянно читаю и изучаю что-то новое, пишу свои проекты, в которых пробую и закрепляю изученные технологии.