Здравствуйте, Кирилл Лебедев, Вы писали:
КЛ>Ситуация осложняется тем, что система (1) является приватной. К ней нет доступа. В принципе, можно было бы растеризовать данные в фоновом режиме, но непонятно, как узнать, что информация в системе (1) обновлена. Нет никаких сервисов, позволяющих узнать это. Доступ к СУБД системы (1) возможен только через Apache Tomcat. Напрямую доступ к БД закрыт, т.к. она приватна и принадлежит другой компании. Доступ только на общих основаниях.
С виду в задаче нет ничего уникального. От кандидата требуется иметь опыт реализации высоконагруженных серверных приложений работающих в режиме 24 * 7. Сложность только в том как понять, что человек не просто участвовал в разработке такой системы, а играл в этом ключевую роль. По идее проще всего это выяснить в беседе о том какие проблемы были встречены при реализации, как их решали, как производилось расширение и добавление функциональности.
КЛ>Хотелось бы, чтобы в новой версии системы эта проблема была бы устранена. Чтобы для любой картографической информации всегда бы имелась актуальная графическая.
Чудес не бывает. Если у вас нет информации о произошедших изменениях в источнике, а пребразование информации очень длительное и тяжелое, то в любом случае все сведется к периодическому полному перестроению изображения (допустим, раз в сутки) + внеочередным перестроениям некоторых кусков по ручным заявкам.
КЛ>1) Просят рассказать о предыдущем опыте проектирования систем. КЛ>2) Просят спроектировать текстовый редактор с хайлайтингом, проверкой правописания и расстановкой переносов. КЛ>3) Рисуют на листочке то, как устроена их система, просят кандидата назвать недостатки дизайна и предложить варианты решений.
Это очень плохой способ. Кандидата надо спрашивать о его предыдущей работе, а не о будущей. Т.к. за пять минут даже понять, что из себя представляет новая задача нельзя, не говоря уж о том, чтобы предложить обдуманное решение.
КЛ>Интересует: Мне в этой ситуации интересен общий подход к проведению собеседования с архитектором:
КЛ>(1) на разработку нового проекта с нуля;
Повторюсь. Требуется опыт реализации принципиально схожих вещей, т.е. в вашем случае высоконагруженных серверных приложений.
КЛ>(2) на масштабный рефакторинг готового проекта.
Опыт поддержки сложной системы написанной другими программистами, а также опыт постепенного переписывания отдельных частей такой системы. Лучше всего если кандидат объяснит какие куски в такой системе дорабатывались, какие затем были переписаны, по каким причинам это происходило и с какими сложностями столкнулись.