Re: Как собеседовать архитектора?
От: Undying Россия  
Дата: 13.10.10 15:46
Оценка: 4 (2)
Здравствуйте, Кирилл Лебедев, Вы писали:

КЛ>Ситуация осложняется тем, что система (1) является приватной. К ней нет доступа. В принципе, можно было бы растеризовать данные в фоновом режиме, но непонятно, как узнать, что информация в системе (1) обновлена. Нет никаких сервисов, позволяющих узнать это. Доступ к СУБД системы (1) возможен только через Apache Tomcat. Напрямую доступ к БД закрыт, т.к. она приватна и принадлежит другой компании. Доступ только на общих основаниях.


С виду в задаче нет ничего уникального. От кандидата требуется иметь опыт реализации высоконагруженных серверных приложений работающих в режиме 24 * 7. Сложность только в том как понять, что человек не просто участвовал в разработке такой системы, а играл в этом ключевую роль. По идее проще всего это выяснить в беседе о том какие проблемы были встречены при реализации, как их решали, как производилось расширение и добавление функциональности.

КЛ>Хотелось бы, чтобы в новой версии системы эта проблема была бы устранена. Чтобы для любой картографической информации всегда бы имелась актуальная графическая.


Чудес не бывает. Если у вас нет информации о произошедших изменениях в источнике, а пребразование информации очень длительное и тяжелое, то в любом случае все сведется к периодическому полному перестроению изображения (допустим, раз в сутки) + внеочередным перестроениям некоторых кусков по ручным заявкам.

КЛ>1) Просят рассказать о предыдущем опыте проектирования систем.

КЛ>2) Просят спроектировать текстовый редактор с хайлайтингом, проверкой правописания и расстановкой переносов.
КЛ>3) Рисуют на листочке то, как устроена их система, просят кандидата назвать недостатки дизайна и предложить варианты решений.

Это очень плохой способ. Кандидата надо спрашивать о его предыдущей работе, а не о будущей. Т.к. за пять минут даже понять, что из себя представляет новая задача нельзя, не говоря уж о том, чтобы предложить обдуманное решение.

КЛ>Интересует: Мне в этой ситуации интересен общий подход к проведению собеседования с архитектором:


КЛ>(1) на разработку нового проекта с нуля;


Повторюсь. Требуется опыт реализации принципиально схожих вещей, т.е. в вашем случае высоконагруженных серверных приложений.

КЛ>(2) на масштабный рефакторинг готового проекта.


Опыт поддержки сложной системы написанной другими программистами, а также опыт постепенного переписывания отдельных частей такой системы. Лучше всего если кандидат объяснит какие куски в такой системе дорабатывались, какие затем были переписаны, по каким причинам это происходило и с какими сложностями столкнулись.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.