Резюме настоящего Си-Пе-Пе программера 26 лет от роду
Реальное резюме суперпрограммера 26 лет от роду. Пятилетней давности. Стилистика и правописание автора сохранены. Изменены адреса и названия
M?????????ий Александр И?????ич
программист
alex.m?????????iy@gmail.com | |
Тел. (моб.) | +7 (???) ?1?-??-?? Пожалуйста, с 12:00 до 23:00 мск. |
Адрес личного сайта | http://www.????-????????????.com |
Проживание | Москва (ст. м. ?????????) |
Предпочтительное время в пути до будущей работы | час-полтора |
Дата рождения | ??.??.1984 (26 лет) |
Переезд | Возможен переезд |
Примерная зарплата | 0 руб. |
Информационные технологии/Интернет/Телеком
- Программирование/Разработка
- Тестирование
- Игровое ПО
Образование
Основное
2008 — Московский ????????????? институт, Факультет радиотехники и кибернетики, Специальность: Информатика и вычислительная техника, Магистр
Профессиональный опыт
05.2007 - 05.2010, Представительство ООО “???????” (программистов: 10-20)
Информационные технологии/системная интеграция
Программист Windows VC++ (VS2003)
Продукт: ????????
Размер: ~30MB только в CPP/H
Вкратце: “Все в одном” для французских аптек
3 место на рынке Франции
URL: http://www.???????.com/
Технологии: WinAPI, STL, x86 assembler, DbgHelp, LotusNotes, MySQL, Client-Server
Роль: 50% рефакторинг, 40% отладка (в основном крашдампов), 5% code review, 5% новый код
Достижения:
1) Стал общепризнанным экспертом по трудным случаям ——— 2) Добился признания в команде где все были старше 30, когда мне было только 23 ——— 3) Моя доля работы: 100% Уговорил босса, а затем и команду, внедрить code style, code reviews – и отнестись к ним серьёзно.
Внедрение таких изменений в устоявшихся командах никогда не было легкой задачей. В результате моих усилий, был принят стандарт кода. Мы попробовали проводить code reviews - и они нам понравились, так что теперь проводятся довольно часто. Мы обратили внимание на проблемные участки кода и привели их в порядок. Для укрепления введенных практик были наняты тщательно отобранные программисты.
4) Моя доля работы: 90% Добавил в продукт поддержку графических тем, что очень сильно изменило внешний вид и имело огромный успех у клиентов. Эта работа отняла около 3 месяцев и имела жесткие (и притом не самые оптимистичные) сроки. Большая часть этого времени ушла на переработку старого кода.
5) Моя доля работы: 100% Выполнил несколько изменений старого кода, затронувших весь проект. По правде сказать, остальные просто боялись трогать этот код. Код стал куда лучше - и главное, это позволило внедрить в продукт новые возможности, которых давно ждали.
6) Моя доля работы: 100% Создал систему автоматического отчета о падениях программы (не требует вмешательства со стороны пользователя)
Как и следовало ожидать, эта система коренным образом изменила отладку таких проблем, что сэкономило очень много времени как нам, так и клиентам.
Каждый раз когда возникает необработанное исключение, оно записывается в лог программы в специальном формате. Эти данные позволяют автоматически загрузить необходимые PDB для всех модулей нашего кода, раскрутить стек, показать локальные переменные и параметры. Одновременно эти данные отсылаются на наш сервер.
7) Моя доля работы: 80% Создал систему учета крешей на основе IBM Lotusnotes.
Это позволило нам быть в курсе наиболее важных проблем, с которыми сталкиваются пользователи - и наконец исправить важные проблемы, существовавшие годами.
Эта система обрабатывает отчеты о крешах, присваивая им метки CrashID, которые с высокой вероятностью совпадают между версиями продукта. Позволяет создавать “фильтры”, содержащие в себе принцип фильтрации отчетов и детальное описание исследования причины. “Фильтры” автоматически собирают в себя подходящие креши.
8) Моя доля работы: 100% Написал инструмент для анализа крашдампов.
Это позволило очень сильно сократить время отладки крешей, позволяя сконцентрировать внимание непосредственно на причинах, а не настройке. Когда проблема неясна, можно за секунды переключаться между схожими крешами в поисках новых данных. Плюс, этот инструмент включает логику для определения некоторых сценариев (например, вызов по неверному указателю), которые бывает очень трудно заметить на глаз.
Позволяет просматривать стек и локальные переменные с учетом их типов (по сути, то же самое что в окне Watch в Visual Studio) всего в пару кликов. Может автоматически загружать правильные версии исходников из CVS – и открывать их в студии сразу на нужной строке. В целом, дает доступ ко всему что нужно в пару кликов.
9) Моя доля работы: 100% Используя написанную систему, успешно исправил наиболее существенные причины крешей, уменьшив их общее число на 50-70%.
09.2005 - 05.2007, ??????? (программистов: <5)
Информационные технологии/системная интеграция
Программист Windows VC++ (VS2003)
Продукт: ?????????
Размер: ~5MB только в CPP/H
Вкратце: Система тестирования нагрузок на Web-серверы
URL: http://??????????.com/
Технологии: WinAPI, MFC, Stingray, Codejock XTreme toolkit
Роль: 50% новый код, 40% рефакторинг, 10% отладка
Достижения :
1) Моя доля работы: 100% Написал код для сохранения открытых страниц в IE за счет перехвата функций работы с сокетами в IE.
Эта работа позволила компании приобрести крупного клиента. Плюс, работа потребовала приличного объема смекалки и исследований - при сжатых сроках.
До внедрения этого кода, снимки страниц (требовавшиеся в продукте) сохранялись “обычным” способом через интерфейс IHtmlDocument. Это давало огромные проблемы с session-generated контентом (а у нас его было порядочно), плюс определенную проблему с “аттачами” на страницах. После определенной полировки написанного кода (ну например, пришлось разобраться с Javascript, которые исполнялись второй раз при загрузке снимка), он стал работать весьма стабильно - в нашем контексте.
2) Моя доля работы: 95% Полностью перевел проект на Unicode.
Это определенно достижение, так как в столь большом проекте работа была весьма нелегкой. Там было порядочно старого и весьма грязного кода, равно как и уже созданных пользователями данных на диске, которые нужно было прочитать с полной совместимостью.
05.2004 - 11.2006, PhystechSoft (программистов: <5)
Информационные технологии/системная интеграция
Windows VC++ (VS98) Programmer
Продукт: ?????????
Размер: ~5MB in CPP/H
Вкратце: Очередные зашифрованные логические диски
URL: http://www.????????.com
Технологии: WinAPI, MFC, Cryptography, PKCS
Роль: 80% новый код, 10% рефакторинг, 10% отладка
Достижения :
1) Моя доля работы: 100% Создал систему защиты программы, использующую шифрование образа, RSA и аппаратные ключи для защиты от keygen-ов.
Хотя в самой идее нет ничего нового, было чему научиться: навеска защиты на Уже скомпилированные EXE для поддержки расшифровки образа “на лету” и использования RSA - не самая тривиальная задача.
2) Моя доля работы: 100% Переписал модуль управления через SMS практически с нуля.
Этот модуль позволил управлять сервером, отправляя SMS на подключенный телефон. До переписывания, никто толком не понимал как этот код вообще работает, да и работал он так себе, к тому же поддерживая лишь одну устаревшую модель телефона - что было порядочной проблемой, так как она устарела, а пользователи использовали функциональность довольно часто.
3) Моя доля работы: 100% Написал класс для ведения удобных и весьма детальных логов. Используя эти логи, была решена не одна проблема пользователей.
Логгирование вызывалось 100% совместимым с MFC макросом TRACE(). Внутри него, в лог автоматически записывались текущее время, код ошибки, идентификатор потока и процесса, имя файла исходника и строка в нем, необходимая табуляция и наконец сами отформатированные аргументы макроса.
Рекомендации
Компания ??????
По запросу, Босс :)
По запросу
Компания ??????
По запросу, Босс :)
По запросу
Дополнительная информация
Гражданство:
Россия
Разрешение на работу в странах:
Россия
Языки
Родной язык — Русский
Английский, могу проходить интервью
французский, базовые знания
Китайский, понимаю мимику
Ключевые навыки
Основные технологии (в скобках - примерное число лет опыта):
Visual C++ v6.0 (13)
MFC (13)
WINAPI (13)
Visual C++ 2003 (6)
Disassembler x86 (5)
STL (4)
PalmOS API (2)
VisualBasic (2)
VBA (2)
HTML (2)
Платформы (в скобках - примерное число лет опыта):
Win32 (13)
WinCE (2)
PalmOS (2)
Unix (0.5)