Алексей Зоркальцев E-mail: alexey@zorkaltsev.com Страница в Интернет: www.zorkaltsev.com Адрес: Москва, Россия Опыт (Skills Overview) ------------------------------------------------------------ - Разработка программного обеспечения, более 10 лет - Проектирование программного обеспечения, 6 лет - Руководство проектами, 5 лет - Руководство командой, 5 лет Средства (Skills) ------------------------------------------------------------ Методологии: RUP (Rational Unified Process), MSF (Microsoft Solution Framework), XP (Extreme Programming) Языки и технологии: C++ (более 10 лет), Java (5 лет), С# (6 месяцев), C (более 10 лет), Visual Basic (4 года), XML (4 года), UML (4 года), HTML (5 лет), JScript и VBScript (3 года), Python, Assemblers (IBM 360, PDP-11, Intel 80x86 – 3 года), Fortran C++/Windows технологии и SDK (software developer kit): ATL, WTL, STL, MFC, COM / DCOM / ActiveX, MS DirectX, MS DirectShow, ADO, RDO, ODBC, OLE DB Java технологии и SDK: Servlets, JSP, Java Beans (JB), JDBC, Theorem RADIUS Server Платформы: Windows NT/95/98/2000/XP, Linux, MS DOS Базы данных: MS SQL, Oracle, MS Jet (OLE DB) Средства разработки: Visual Studio, Visual C++, Ration Rose, Ration Clear Case, Microsoft SourceSafe, Forte for Java (JavaBeans), Together, IntelliJ IDEA Протоколы: SOAP, TCP/IP, RS-232 Опыт Работы ------------------------------------------------------------ Мегатель Апрель 2002 - Ноябрь 2002 г. Москва, Россия Руководитель разработки продукта (Product Manager) / Системный архитектор Работал над рядом проектов, связанных с различными аспектами биллинга. - Реализовал Java Radius Server с использованием Theorem RADIUS Server. - Реализовал GUI на Java / Swing. - Реализовал GUI на С# / WinForms. - Реализовал прототипы алгоритмов обработки данных, использующие C# / DataSets. Egar Technology Март 2002 - Апрель 2002 г. Москва, Россия Программист Участвовал в проекте по расчету доходов и потерь на рынке ценных бумаг, который выполнялся по заказу крупного банка. - По техническому заданию реализовал встроенные MS SQL процедуры для различных расчетов. - Подготовил Crystal Report формы для вывода отчетов. Проект был сдан в срок. Infotech Contract Services Октябрь 2000 – г. Волфем, штат Массачусетс, Декабрь 2001 США Октябрь 2000 - г. Биллерика, штат Массачусетс, Сентябрь 2001 США Программист по контракту в Packard BioScience Работал в команде программистом Packard BioChip Technologies на проекте Packard BioChip Technologies SpotArray Microarray Printing System. Задача – разработка программного-аппаратного комплекса для печати микро-множеств (Chips) биологических материалов. Требования – программное обеспечение должно работать под Windows 2000 и как базовые технологии должны быть использованы DCOM и XML. - Реализовал соединение между GUI (Graphic User Interface), написанном на основе MFC, и компонентами COM. - Принимал участие в проектировании и реализации клиентской части клиент-сервер логики. - Спроектировал и реализовал, готовую к переходу на SOAP, поддержку записи/чтения XML документов, основанную на MS XML 3.0 компоненте и STL. - Разработал компоненту доступа к базе данных, основанную на MS Jet 4, которая использует механизмы транзакций и поиска по индексам. - Разработал out-proc COM компоненту, реализующую сохранение информации о работе системы в текстовый файл (log), с ограничением размера файла. Компонента сделана многопоточной (multithread), чтобы гарантировать быструю начальную обработку поступающей информации и равномерную загрузку системы. - Разработал расширение библиотеки STL, облегчающее реализацию сортировки и поиска записей в памяти по конкретному полю. - Работал над оптимизацией и устранением проблем в DCOM соединении. 1.0 версия системы была успешно завершена и поставлена заказчикам. Leiden Studio Январь 2000 - Сентябрь 2000 г. Иркутск, Россия Архитектор и разработчик программного обеспечения для Системы подсчета посещений сайтов в Интернет Задача – спроектировать и изготовить программно-аппаратный комплекс для сбора статистических данных о посещаемости Интернет страниц и обеспечить возможность получения отчетов, основанных на анализе собранных данных. Выбранный механизм сбора данных – добавление в страницы ссылок на сайт сбора статистики. При каждом просмотре страницы информация сохраняются для дальнейшей обработки. - Изучены Java 2, Servlets, JSP, JB, EJB, XML, XSLT и JDBC. - Архитектура программного обеспечения документирована на UML с применением Rational Rose и MS Visio. - Java 2, Servlets и JDBC выбраны как базовый набор средств для реализации системы учета посещений. - JSP (Java Server Pages) и Java Beans выбраны как базовый набор средств для генератора отчетов. - Oracle 8 выбрана как СУБД проекта. Прототип системы был успешно создан. Lionhearth Technologies Inc. Май 1995 - Январь 2000 г. Лос Гатос, штат Калифорния, США Работал в Российском офисе компании Декабрь 1998 - Январь 2000 г. Иркутск, Россия Рукодитель проекта Hybrid Motion Capture System Задача – создать программно-аппартный комплекс, способный распознавать движения человека в 3-х мерном пространстве на основе данных, получаемых со стерео видео камер. - Руководил командой из трех разработчиков ПО и одного математика. - Работал с SRI (исследовательский институт в штате Калифорния, США) над вопросом использования SRI-камеры в проекте. - Основная часть проекта была сделана на C++. - Использована Intel Performance Library, что позволило воспользоваться преимуществами Intel MMX технологии при обработки изображений. Во время ухода из компании (Lionhearth Technologies Inc.) проект был в процессе выполнения, работы шли в соответствии с первоначальным графиком. Была завершена первая фаза проекта. Заказчик пожелал продолжить финансирование проекта и рекомендовал Lionhearth Technologies Inc. для других технических программ. Июль 1998 - Январь 2000 г. Иркутск, Россия Архитектор Virtual Command Post 2.0 (VCP2) Задача – спроектировать и разработать следующую версию VCP (Virtual Command Post), эффективно использующую наиболее современную, на тот момент, аппаратуру для получения 3-х мерной графики. - Проект создавался на основе VCP1, руководителем которого я являлся. - Компонентная модель создавалась на основе COM/DCOM. - Разработал код, реализующий конечную машину состояний в многопоточной (multithread) среде, что послужило основой для объектов системы и обеспечило в дальнейшем возможность проверки корректности состояния системы. - Архитектура была описана на UML (Unified Modeling Language) при помощи Ration Rose. - Прототип логики сетевого соединения был написан на Java. Получившаяся в результате архитектура позволила достигнуть цели проекта и создала базу для дальнейшего расширения системы. Июнь 1996 - Ноябрь 1997 г. Иркутск, Россия Рукодитель проекта Virtual Command Post 1.0 (VCP1) Задача – создать программно-аппаратный комплекс, позволяющий общаться в виртуальной среде при помощи голоса и жестов, а также обеспечить возможность обмена 2-х и 3-х мерными данными. Требования - система должна работать под Microsoft Windows NT 4.0, использовать TCP/IP соединение (не более 28.8 Kbps) и Polhemus InsideTrak для получения данных о положении пользователя. - Разработал архитектуру программного обеспечения и участвовал в разработке дизайна пользовательского интерфейса. - Написал на C++ четверть от полного объема кода системы. - Разработал и реализовал алгоритм обратной кинематики, необходимый для реализации компьютерной модели человека. - Использовал Microsoft 3D как библиотеку для получения 3-х мерных изображений. Проект был завершен в срок и получил SBIR Innovative Technology of the Year award (Премия - Новая технология года) за 1997 год. Сентябрь 1999 - Январь 2000 г. Иркутск, Россия Разработчик программного обеспечения TARDEC Phase I Option Задача – создать аппартно-программный комплекс для тестирования возможностей управления удаленно контролируемым транспортным средством. Цель теста - оценить насколько стереовидение помогает человеку управлять быстро движущимся транспортным средством, а так же оценить влияние задержек и качества получаемого изображения при передаче данных. Для проведения теста оборудование должно было быть установлено на стандартный внедорожный мотоцикл (ATV), SRI Stereo Vision Module использован для получения стерео-изображения в реальном времени. IGlasses Head Mounted Display (HMD) использован для показа стереоизображения пользователю. - Разработал архитектуру программного обеспечения и пользовательский интерфейс, необходимые для проведения теста. - Использовал Intel Image Processing Library. - Написал около 3000 строк С++ кода. - Скомпоновал все части теста. Задача была решена, и тестирование прошло успешно. Май 1996 - Январь 2000 г. Иркутск, Россия Руководитель команды программистов Организовал и руководил командой разработчиков программного обеспечения, созданной для реализации проектов, использующих 3-х мерную графику, сетевые технологии и технологии получения данных от сенсоров. - Интервьюировал кандидатов. - Использовал MS Project Manager и MS Team Manager для координации работ. - Использовал MS Exchange Server для обмена информации как через Интернет, так и внутри команды. - Разработал веб-сайт, помогающий обмениваться полезной информацией, необходимой для координации команды. Организовал команду разработчиков программного обеспечения, участвующую в нескольких проектах компании. OZero SDG (Software Development Group) Февраль 1996 - Апрель 1996 г. Иркутск, Россия Архитектор программного обеспечения Smart Map 2.0 Задача – разработать следующее поколение программного обеспечения для проекта SmartMap для Trimble Navigation с улучшенным пользовательским интерфейсом и более полно реализующим возможности hand-held (PDA) компьютеров. - Разработал архитектуру программного обеспечения. - Разработал и реализовал ядро операционной системы, реализующую многозадачность и рассчитанную на 80x86 процессоры. Trimble Navigation прекратил проект по независящим от компании причинам. Март 1995 - Февраль 1996 г. Иркутск, Россия Lead Programmer on the Smart Map 1.0 Задача – создать систему навигации для пилотов небольших самолетов для компании Trimble Navigation. Система должна позволять получать навигационную информацию как в текстовой форме, так и виде двигающейся карты. Карта должна показывать текущее положение самолета, пункт назначения и прочую информацию. Система должна быть реализована для Casio Z7000 PDA (Personal Digital Assistant) и использовать Trimble Locator как GPS приемник. - Присоединился к команде программистов в середине проекта. Был ведущим программистом в период отладки и тестирования. - Разработал программу для просмотра гипертекста. - Разработал процедуру автоматического тестирования с целью проверять качество продукта после внесения небольших изменений в инкапсулированные компоненты. - Запрограммировал низкоуровневый интерфейс к Trimble Locator, который подключался через последовательный порт (COM port). Проект был завершен, и Trimble Navigation представила продукт на рынок. Достижения ------------------------------------------------------------ Lionhearth Technologies Inc. получил SBIR Innovative Technology of the Year award (Премия - Новая технология года) за проект VCP1, руководителем и архитектором программного обеспечения которого я являлся (www.lionhearth.com/company/awards.asp). Образование ------------------------------------------------------------ Иркутский Государственный Университет Май 1998 г. Иркутск, Россия Математические методы и исследование операций в экономике / Информационные системы Дополнительные Знания (Useful Knowledge) ------------------------------------------------------------ - Математика - Бизнес и Маркетинг Языки ------------------------------------------------------------ - Русский - Разговорный английский Рекомендации (References) ------------------------------------------------------------ Предоставляются по запросу.