Проверка пересечения диапазонов дат

Сегодня на работе возник вопрос, как наиболее посто проверить, пересекаются ли два диапазона дат. Моя жена (по образованию математик, работает вместе со мной программистом) сходу выдала очень простой способ.

[BeginDate1 - EndDate1] - первый диапазон

[BeginDate2 - EndDate2] - второй диапазон

Диапазоны не пересекаются, если BeginDate2 > EndDate1 или EndDate2 < BeginDate1. Используйте отрицание и получите условие пересечения.

 

Permalink | Комментарии (0) | Post RSSRSS comment feed

Собеседование в EPAM (Киевский офис)

В контексте предыдущей новости решил разместить пост со старого блога - может кому-то пригодится.

Знакомый ходил в марте этого (2006) года на собеседование в EPAM. Далее привожу всю имеющуюся у меня информацию и рассказ от его имени.

Официальный сайт: http://www.epam.com/
Белорусская компания с офисами в Белоруссии, России и Венгрии.
Киевский офис открылся в конце 2005 года. Если верить пресс-релизу, до конца 2006 года планируют набрать 200 человек.

Офис находится в центре, возле метро Республиканский Стадион, в новом офисном центре (на одном этаже с Циклумом, кто в курсе). На первый взляд тесновато, но HR менеджер сказала, что уже ищут новый офис.

HR менеджер задавала общие вопросы (почему хотите сменить работу, что нравится на текущей работе и т.п.), провела короткий тест на знание разговорного английского (беседа на английском на левую тему). Затем, запустила тест по C# на Brainbench.

После этого было интервью с Project Manager. Вопросов по знанию технологий небыло. Попросил рассказать про организацию процесса разработки какого-либо проекта, в котором принимал участие.
Затем, ответил на интересующие вопросы. Сказал, что по тесту Джоэла фирма набирает 11 баллов, т.к. еще не организовано коридорное тестирование. Но код меня никто писать не просил. Так что уже получается не больше 10-ти. По CMMI - уровень 4.

Оплачиваемые отпуск и больничные, ограничений на ICQ и интернет нет. Белая зарплата. Приходить можно с 9 до 11. Отработать в неделю необходимо 40 часов.

В целом, о фирме сложилось положительное впечатление. Хотя ничего особо выдающегося нет, на фоне многих киевских фирм EPAM выглядит очень хорошо.

Permalink | Комментарии (0) | Post RSSRSS comment feed

EPAM слился с VDI

Как сообщает comnews.ru компании EPAM и VDI, занимающиеся офшорным программированием, договорились объединиться. Обе компании имеют центры разработок в Киеве. Уже сейчас собеседования с кандидатами в EPAM проводятся на территории офиса VDI.

Permalink | Комментарии (0) | Post RSSRSS comment feed

Собеседование в CQG, Киев

Было это уже давно, в феврале 2005 года. Но, так как меня часто просят рассказать про эту компанию, я решил написать здесь все, что знаю.

В тот момент я не занимался поисками работы и о CQG узнал совершенно случайно, от своего знакомого. Он, в свою очередь, узнал от своего знакомого, который на тот момент уже работал в киевском офисе CQG. Мой знакомый уже успел побывать на одном собеседовании и рассказал мне о различных бонусах (см. дальше). Так как киевские софтверные фирмы в то время не баловали своих сотрудников бонусами (да и сейчас не очень балуют), я, естественно, решил попробовать устроиться в эту компанию и отослал свое резюме. Примерно через неделю мне позвонила HR менеджер Алевтина и, после короткого разговора, пригласила на собеседование.

Первое собеседование

Не буду описывать расположение офиса, так как сейчас он находится в другом месте. Внутри офис состоит из "кубиков" - довольно удобно и для общения и собственное пространство создается. Довольно удобные кресла (говорят стоимостью $1000), ЖК мониторы, быстродействующие компьютеры. Но самое впечатляющее в офисе - это огромный стеклянный холодильник на кухне. Каждый день в него загружают продукты (соки, овощи, фрукты) и сотрудники могут их использовать по прямому назначению. Кроме холодильника на кухне есть все необходимое: микроволновка, кофеварка, мойка с краном.

Так вот, про собеседование. HR менеджер, Алевтина, которая оказалась очень приятной девушкой, подробно рассказала о компании и о том, чем она (компания) занимается. Затем, последовали хитрые вопросы наподобии таких: "Что вам нравится в компании, в которой вы сейчас работаете?", "Легко ли вас обидеть?", "Какими качествами должен обладать начальник?", "Расскажите про свою самую большую неудачу". Как я уже говорил, в то время я не занимался поисками работы, и, поэтому, был совершенно не готов к таким вопросам. Конечно, я что-то придумывал, но к таким вопросам надо быть готовым заранее и знать в общих чертах "правильный" ответ. Я, в свою очередь, задавал вопросы интересовавшие меня (в скобках ответы): режим работы (свободный график), отпуск (стандартные 24 календарных дня). Фирма предоставляет медицинскую страховку на всю семью (!), естественно, больничные оплачиваются.

Работа в компании начинается с месячного тренинга по методологиям PSP (Personal Software Process) и TSP (Team Software Process), т.к. по этим методологиям ведется вся разработка. Тренинги в конкретный момент времени проводятся в одном из филиалов (см. ниже), так что возможно, что сразу прийдется ехать в командировку. Уровень процессов компании, по словам Алевтины, соответствует 5 уровню CMMI.

В заключение, Алевтина выдала логический тест, который надо было пройти там же (по телефону она об этом сразу предупреждала, чтобы можно было зарезервировать свое время). Для успешного прохождения теста никаких знаний не требуется, нужна только логика. Я уже рассказывал о подобном логическом тесте. В том, который дают в CQG вопросы менее дурацкие и более сложные, но идея такая же. Время на тест неограничено, я потратил чуть больше часа, но Алевтина сказала, что это довольно быстро. На этом первое собеседование было закончено. В случае положительного результата по тестам, мне должны будут выслать тестовое задание.

Тестовое задание

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

Вообще-то к тестовым заданиям я отношусь так же, как и к любой другой работе: если кому-то надо, чтобы я что-то написал - это должно оплачиваться. К сожалению, тестовые задания в CQG не оплачиваются. Но, в данном случае я без колебаний сделал исключение: очень заманчивые условия работы, да и сами задания нетривиальны и хочется доказать самому себе, что можешь это сделать (правда, это только первое впечатление - ничего сверхсложного в задачах нет).

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

Второе задание называлось "Евродиффузия" и было взято из конкурсов по программированию (легко находится в Гугле по запросу Eurodiffusion). Самое сложное в нем для меня было выбрать способ решения, так как вариантов я придумал несколько. В итоге решил выбрать самый простой в реализации - не хотелось тратить много своего времени на тестовое задание (см. выше).

В итоге каждое задание заняло у меня около шести часов вместе с оформлением и комментированием кода. Надо заметить, что целью этих заданий является проверка качества кода, а не способности кандидата их решить - это считается само собой разумеющимся.

Второе (техническое) собеседование

Итак, успешно выполнив и отправив задания, через несколько дней я получил приглашение на техническое собеседование. Проводили его два программиста (по сути, а не по должности). Так как я позиционировался как .NET разработчик со знанием C++, то вопросы были, в основном, по .NET Windows Forms. Вопросов по ASP.NET небыло. Сразу скажу, что, поскольку, я раньше некоторое время работал на C++  ATL (и это было отражено в резюме), то был вопрос и из этой области, но, так как я на тот момент уже больше 2-х лет на ATL ничего не писал (о чем я сразу честно предупредил), я не смог на него ответить (хотя потом я перечитал соответствующий раздел и понял, что 2 года назад ответил бы без особого труда, т.е. вопрос не являлся сложным). Из области .NET вопросы были о многопоточности (мало сталкивался и мало что мог сказать на тот момент), очень подробно о сборщике мусора (читать Рихтера ), конечно же, об отличии структуры от класса и еще некоторые мелкие вопросы, которые уже не помню. Все вопросы были на знание и понимание архитектуры .NET. Вспоминать имена и параметры методов не просили. Алгоритмических вопросов, также, не было.

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

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

В целом, собеседование было довольно интересным. Квалификация ребят довольно высокая, впечатления, что тебя специально заваливают невозникало. К сожалению, по многим вопросам мои знания оставляли желать лучшего.

Третье собеседование

Через несколько дней, согласовав время с Алевтиной, я пришел на третье собеседование, которое проводили директор филиала (возможно я немного ошибаюсь в его должности) и Алевтина. Сказать по правде, я считал, что предложение работать в компании у меня уже в кармане и вопрос будет только в зарплате. Директор задавал вопросы такого же плана, как и на первом собеседовании, некоторые, даже, повторялись, но из уст директора они звучали жестче. Разговаривать с ним было сложнее, чем с Алевтиной (грубости или чего-то подобного небыло, просто чувствовалось, что человек привык командовать). В конце собеседования он (к сожалению, не помню его имени) сказал, что не готов принят решение о моей кандидатуре прямо сейчас и должен некоторое время подумать.

Заключение

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

Часто спрашивают мое мнение о причине неудачи. Трудно сказать точно. Во-первых, как я уже говорил, я не был готов к западному стилю собеседования. Во-вторых, я позиционировался как разработчик на .NET со знанием C++. Компания же ищет разработчиков на C++ со знанием .NET (хотя, насколько я понял, большая часть кода пишется на .NET).

Полезная информация

Сайт компании: http://cqg.com/
Филиалы расположены в Ереване, Москве, Зеленограде, Самаре и Киеве. В Чикаго и Денвере находятся офисы в США.
Компания разрабатывает финансовое ПО, известное во всем мире.

Обсуждения CQG на форуме RSDN:
http://www.rsdn.ru/Forum/?mid=974668
http://www.rsdn.ru/Forum/?mid=959512
http://www.rsdn.ru/Forum/?mid=2037404

Блог инсайдера (почитайте дальше, там есть еще и про Microsoft)

Permalink | Комментарии (1) | Post RSSRSS comment feed

Принцесса или тигр?

Еще в детстве мне попалась замечательная книга головоломок Рэймонда М. Смаллиана "ПРИНЦЕССА ИЛИ ТИГР?". Некоторые задачи я хотел бы представить вашему вниманию. Название книга получила по одной из своих глав. Для я привожу первые три задачи из этой главы. Они очень легкие и, я надеюсь, не займут у вас много времени.

Принцесса или тигр?

   У Фрэнка Стоктона есть сказка, которая называется "Принцесса или тигр?" В этой сказке один узник должен угадать, в какой из двух комнат находится принцесса, а в какой - тигр. Если он укажет на первую комнату, то женится на принцессе, если на вторую, то его (вполне возможно) растерзает тигр.

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

Испытания первого дня

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

1. Первое испытание.

- А что, если в обеих комнатах сидят тигры? - спросил узник. - Что же мне тогда-то делать?
- Считай, не повезло, - ответил король.
- А если в обеих комнатах окажется по красавице? - поинтересовался узник.
- Считай, подфартило, - сказал король. - Уж это ты и сам бы мог сообразить!
- Ну, хорошо, а если в одной комнате принцесса, а в другую посадили тигра, что тогда? - не успокаивался узник.
- Вот тут-то уже все зависит от тебя! Не так ли?
- Да откуда же мне знать, где кто? - сокрушенно вздохнул узник.
   Тут король указал на таблички, прикрепленные к дверям каждой из комнат. На них было написано:

I
В этой комнате находится принцесса, а в другой комнате сидит тигр

II
В одной из этих комнат находится принцесса; кроме того, в одной из этих комнат сидит тигр

- А это правда, что здесь написано? - спросил узник.
- На одной - правда, - отвечал король, - на другой - нет.
   А вы на месте узника, какую бы дверь открыли? (Конечно, если вы предпочитаете принцессу тигру.)

2. Второе испытание.

   Итак, первый узник спас себе жизнь и на радостях отбыл вместе с принцессой.
   Таблички на дверях сменили, соответственно были подобраны и обитатели комнат. На этот раз на табличках можно было прочитать следующее:

I
По крайней мере в одной из этих комнат находится принцесса
II
Тигр сидит в другой комнате

- Истинны ли утверждения на табличках? -  спросил второй узник.
- Может, оба истинны, а может, оба ложны, -   ответил ему король.
   Какую из комнат следует выбрать второму узнику?

3. Третье испытание.

   Во время этого испытания король объявил, что опять утверждения на обеих табличках одновременно либо истинны, либо ложны. Надписи же были вот какие:

I
Либо в этой комнате сидит тигр, либо принцесса находится в другой комнате
II
Принцесса в другой комнате

   Кто же обнаружится в первой комнате - принцесса или тигр? А во второй?

 

Ответы смотрите в комментариях.

Permalink | Комментарии (4) | Post RSSRSS comment feed

Офисы Yandex и Google

В предыдущем блоге я уже давал ссылки на фотографии офисов Яндекса и Гугла. Недавно на блоге яндекса появились свежие фотографии нового офиса. Ну что же: велосипедная стоянка, бильярд - это еще не Гугл, но намного лучше, чем в среднем по Москве, Питеру и Киеву. Так держать! Больше офисов, хороших и разных!

Если интересно, можно почитать историю дома, в котором расположился офис Яндекса.

А если у вас возникло желание работать в Яндексе, то читайте интервью с директором по проектам компании "Яндекс", Дмитрием Ивановым. Рекомендую всем, в особенности тем, кто ищет работу, так как Дмитрий дает очень разумные советы по поводу составления резюме. Только не забывайте, что существует резюме и, так называемое, CV. Резюме не должно занимать более одной страницы. А CV может занимать до 8-10 страниц (чаще 3-5) и содержит подробное описание всех ваших скилзов, образований, проектов и т.п. Большинство компаний, все же, требуют CV.

В заключение, хочу привести цитату из этого интервью, за которую я готов простить Дмитрию последний абзац (ну не согласен я променять нормальную работу на очень интересную, но с меньшей оплатой. Если мне не нужны будут деньги, то я найду много других интересных занятий):

"менеджер не может приказать что-либо сделать разработчику – он должен с ним договориться"

Permalink | Комментарии (0) | Post RSSRSS comment feed
Реклама
TNX.net - уникальный международный сервис для вебмастеров и оптимизаторов

Подписка
toodoo Читать в Яндекс.Ленте Добавить в Google Reader или Homepage

Статистика
]]>
  • PR0CY.com - сервис проверки доменов
  • BlogMemes.ru
]]>





]]>

]]>