Занимаюсь с 2006 года программированием. Все началось с Ассемблера, перерасло в C++, работа с WinApi/WinSock, некоторое время работа с DirectX, приходилось работать с C#, Java. Веб область также была частью жизни, началась со статических сайтов визиток, изучения PHP/JavaScript, написания MVC движков, парсеров сайтов, работа с CMS Joomla и WordPress. Сделал несколько сайтов и админок на Yii1 фреймворке.

Опыт работы:
2006 — работа с Excel (ввод и сбор информации, построение графиков программно) и Access. PIA библиотека для C#. Работа с базами данных, через драйвера .NET. По выходным и вечерам занимался реверс-инжинирингом (Assembler/SoftIce/IDA/OllyDbg) — просто интересно было и увлекательно.

2007 — начал работать в фриланс конторе, делал заказы с elance сайта (аналог fl.ru только зарубежный). В свободное время изучал 3D графику на Direct3D сначала, а потом OpenGL (свет, текстуры, генерация ландшафтов с помощью QuadTree алгоритма оптимизации, шейдеры немного, физика Ньютона и немного работал с движком Orge3D и другими). С фриланса тогда, как раз заказ нашелся по извлечению 3D моделей из игры RFOnline, извлек модели и конвертировал в формат 3DS MAX.

2008 — занимался в одной научно производственной компании в Академгородке работой с микроконтроллерами. Узнал об ARM процессоре, пересборкой/загрузкой Linux ядра, работа с RomBoot/U-Boot, вставка дополнительных драйверов в ядро и отладка по datasheet, программку сделал для загрузки через COM порт RomBoot, U-boot, uImage(ядро Linux), fsImage. SNMP библиотеку разбирал и использовал для удаленного управления, но потом переделали просто через сокеты. Писал скрипты bash для Linux.

2009 — работал в другом месте, Flex + GWT технологии, изучал новое здесь, а также писал скрипты на Bash и PHP.

2010 — изучал PE формат Windows, как делаются упаковщики и крипторы кода. Разбирал формат EXE и DLL, а после сделал упаковщик и простой криптор для них на Assembler. Для упаковки DLL нужно было дополнительно разобраться с релокациями, которые используются для расчета смещений на функции и переменные, если библиотека загрузилась по другой базе в памяти. Одно из самых интересных занятий в программировании было.

2011 — разбирал протокол RDP по datasheet, нужно было сделать маленький по размеру клиент

2011 — пошел поработать в компанию по разработке ПО для банков, работали там только на Java, опыта с этим языком у меня было мало и помощи никакой, так что поизучал там и ушел. Много читал про технологии используемые, например про Hibernate и тд, но если честно вообще неинтересно этим было заниматься, как оказалось, наверное сказывался Ассемблер и тд :).

2012 — разрабатывал с нуля программу на C++, где красивый дизайнерский интерфейс и обработка его также была с нуля написана на WinApi. Нужно было добиться максимальной скорости и минимального размера бинарника.

2016 — поработал в одном проекте на Yii1 фреймворке, добавил функционал и тд.

2013-2018 — фриланс. Занимаюсь веб-программированием, сайты/админки/скрипты. Установка с нуля вебсервера и тд для работы сайтов на Linux. Работа с cUrl/PhantomJS. Подключение оплат для сайтов, например робокасса или системы, или через гейт банковский с 3-D Secure. Исправляю ошибки HTML в сайтах, оптимизирую сайты, увеличиваю скорость загрузки сайта.

Навыки:
PHP — хороший уровень
JavaScript/jQuery — хороший уровень
HTML/CSS — хороший уровень
C/C++ — хороший уровень
Assembler — достаточно хороший уровень
C# и Java — пользовался, но не долго
Python, Ruby и Go — начал пользоваться

Личные качества:
— упорство
— достижение цели

Параллельно с программированием занимаюсь фото услугами, например предметная фотосъемка для сайтов или для других целей, портретная фотосъемка на открытом воздухе или в студии, свадебная фотосъемка.
Некоторые фотографии прошли проверку на качество и продаются на нескольких зарубежных фотобанках, например ShutterStock и iStockPhoto.

Опыт работы фотографом с 2009-2013 фотографировал часто, но вернулся в программирование и фото стал периодически заниматься.