163

Педиатр-программист: Как я попал в Майкрософт | "Практика в Майкрософт Бинг в Сан-Франциско", часть 6 из 7 (пост 1)

Для тех, кто пропустил предыдущие части:

Часть 1: Поворот
Часть 2: (лирическое отступление) Школа и медвуз
Часть 3: Microsoft Student Partners Germany
Часть 4: Подготовка к интервью
Часть 5: Интервью (пост1) (пост2)
Часть 6: Практика в Майкрософт Бинг в Сан-Франциско
Часть 7: Работа в Майкрософт Бинг изнутри

Для связи используйте мой ник здесь и Гугл :)
----------
Для того, чтобы сделать практику в США, необходимо иметь статус студента (быть студентом очного отделения ВУЗа) и получить специальную визу категории F, которую для этих целей выдают сроком ровно на 12 недель – на период прохождения практики. Получение американской визы процесс непростой, но в принципе и не такой сложный. Самым сложным была подача документов в посольстве, куда нельзя проносить ни сотовые телефоны, ни USB-накопители, вообще никакую электронику, включая электронные часы. А куда же их девать? Как мне подсказал охранник, бабушка в ближайшем цветочном киоске за 2 Евро охотно присматривала за твоим добром и даже вела какой-то учет. Но при этом не выдавала никаких квиточков, полностью полагаясь, видно, на свою память. Было несколько стрёмно отдавать ей пакет со смартфоном, брелок с ключами от всего на свете и еще кучу нужных вещей, которые мигом можно толкнуть минимум за две-три сотни Евро, и всё это удовольствие всего за два евро – кто же знает её бизнес-модель и вдруг она меня больше и не вспомнит? Но у бабушки глаз оказался наметан хорошо и с совестью тоже все в порядке – после всего я получил свой пакет обратно, в целости и сохранности. Но больше на такое не решался и всегда просил друзей пойти со мной и подождать снаружи пока я завершу дела.

Есть несколько видов практики, которую предлагает Microsoft. В данной статье я описываю только Business Internship и жизнь Business Interns, которые по сути являются студентами технических специальностей, еще не закончившими ВУЗ.

Практика в Майкрософте подразумевает работу над проектом в течение 12 недель. Работа интерна в принципе ничем не отличается от работы обычного сотрудника: интерны получают зарплату, сравнимую с зарплатой специалиста (всего лишь на 20-30% меньше, чем начальная зарплата выпускника ВУЗа), они самостоятельно работают над проектом и представляют свои результаты, их менеджер дает оценку их работе используя те же критерии, что и для остальных сотрудников.

Кроме этого, Майкрософт дает возможность оформить по очень низким ценам временное жилье (от 650 долларов в месяц за однокомнатную студию и 1200 в месяц за двухкомнатную квартиру, полностью меблированную и со всеми приборами), снять машину (около 400 долларов в месяц), а также перенимает частично стоимость велосипеда, если так тебе проще добираться. Тебе и твоей семье (если она хотел поехать с тобой) оплачивается перелет. Также в середине практики организуется большое мероприятие для всех интернов с участием Билла Гейтса и всего руководства компании, с приглашением звезд эстрады и с подарками. В наш год, к сожалению, первый раз не было Билла Гейтса, вечеринка проходила в зоопарке Сиэтла, приглашенную звезду я не знал (какой-то Dave Matthews), а в качестве подарков были Xbox 360 Slim.

Так получилось, что я жил в самом центре Сан Франциско, в комплексе с романтическим названием Bayside Village прямо под мостом Bay Bridge (это второй мост, находящийся примерно в 10 милях от своего намного более известного собрата Golden Gate Bridge), всего в 15 минутах пешком от своего офиса. К сожалению, об этом я не знал в тот момент, когда мне нужно было решать беру ли я машину или велосипед, поэтому я выбрал машину и она практически все время стояла в гараже комплекса. Даже в магазин мне было легче сходить пешком, чем пытаться запарковаться в тесном подземном гараже.

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

Я был их первым интерном и, похоже, так и остался единственным интерном, где делал у них свою практику. Благодаря этому мне пришлось, я думаю, работать и выкладываться намного больше, чем среднему интерну на практике в Майкрософт.

Прежде всего, у меня было два руководителя. Один – мой непосредственный менеджер, с отличием закончивший Гарвардский университет по информатике и защитивший диссертацию по лингвистике в Амстердаме, член общества «фи-гамма-каппа», говорящий на 6 языках и имеющий очень цепкий и быстрый ум. Его первой фразой при встрече, которую он произнес просто как скороговорку, было – «не пугайся, если ты вдруг не всё понимаешь из того, что я говорю – тут родившиеся здесь американцы меня не всегда могут понять: не бойся задавать вопросы!». Так примерно я понял тогда эту фразу, надеюсь правильно.

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

Они оба встретили меня в первый день практики и представили мне мой проект, который заключался в следующем: Поисковые пауки обходят страницы, сохраняли их полное содержание в виде HTML файла в индексе поисковой базы данных. Для улучшения поиска необходимо было создать алгоритм (или систему), которая бы из HTML документа извлекала бы только полезный контент, игнорируя рекламные блоки, блоки навигации, header и footer, какие-то нетекстовые элементы разметки и прочее. По возможности надо было извлечь еще и примерную структуру документа – основной заголовок, подзаголовки и разделы.

На решение этой задачи мне давался полный carte blanche и около 10 недель времени. На протяжении этого времени у меня два раза в неделю по часу были syncs с моими руководителями, которые выслушивали мои предложения и критиковали их, разбирая их по косточкам и не оставляя от них камня на камне. Они указывали мне на все недостатки предлагаемых мною методов решения, но когда я пытался задать встречный вопрос «а как правильно делать это?», то неизменно получал ответ в форме «это же твой проект – вот ты думай и предлагай, а мы тут только для того, чтобы обсуждать твои предложения, а не сами предлагать что-то» (отмечу еще раз, что это не совсем типично для практики в большой фирме, поэтому мне в определенной степени повезло!) Из-за того, что мои решения постоянно подвергались критике мне казалось, что на протяжении всей практики мне казалось, что я постоянно пытаюсь изобрести тот велосипед, который уже давным-давно изобретен здесь, и весь смысл моей работы сводится к тому, чтобы посмотреть, как быстро я его изобрету.

Я должен признать, что я до начала практики был мало знаком с работой поисковых систем и с проблемами, которые приходятся решать в рамках их функционирования. Поэтому во время практики мне приходилось очень много читать и изучать такие новые для меня темы, как Information Retrieval, Data Mining, Machine Learning и прочее. Каждый день, вечером, приходя домой с работы около 9 часов, я старался уделять хотя бы час чтению учебников и статей по этой теме. В некоторые выходные я даже оставался дома, чтобы лучше изучить эти темы. Перед сном я ходил плавать в бассейн в комплексе и во время заплыва думал над своим проектом, пытаясь применить то, что я прочитал в теории, к своей практической деятельности.

Сам проект стал более-менее выкристаллизовываться примерно к 8 неделе работы, и именно тогда мой менеджер должен был предоставить рекрутерам, что работали со мной, предварительную оценку моей деятельности. Этот документ, составленный обоими моими руководителями, оказался совсем не таким, каким я ожидал.

По моим представлениям мой проект практиканта развивался довольно успешно: я разработал довольно интеллектуальный алгоритм разбиения HTML документа на отдельные текстовые блоки, примерно соответствующие абзацам письменного текста или отдельным заголовкам. Для того, чтобы отсекать невидимые блоки, блоки за пределами экрана и прочее я написал небольшой собственный движок рендеринга и использовал данные рендеринга в качестве эвристик: моя основная гипотеза заключалась в том, что основной текст должен располагаться примерно в середине страницы в блоках, которые занимают не меньше 45% и не больше 100% от ширины экрана, в то время как элементы навигации обычно уже и имеют большую асимметрию относительно серединной линии, нежели текст.

Алгоритм также сначала сканировал текст в поисках заголовка – небольшого (1-2 предложения) текста размерами больше чем медианный размер текста на странице. Если такой блок находился и морфосемантический анализ этого текста показывал, что это скорее нормальный текст нежели реклама, то все блоки до этого текста игнорировались из дальнейшего анализа.

Конечно, я проанализировал существующие решения (насколько они были доступны), в частности JavaScript-скрипты на основе Readability, которые по сути являлись лишь набором эвристик, записанных в виде регулярных выражений, заточенных под определенные виды разметки контента (WordPress, Wikipedia, различные шаблоны форумов и прочее).

(продолжение во втором посте)
21
Автор поста оценил этот комментарий

Чем больше я читаю твои посты, тем больше осознаю, насколько никчёмное наше отечественное образование =)

раскрыть ветку
7
DELETED
Автор поста оценил этот комментарий

Очередная, шикарнейшая часть!

Ещё раз убеждаюсь в том, что самообразование -необходимая штука в жизни.

раскрыть ветку
6
Автор поста оценил этот комментарий

Складывается впечатление, что микрософту не хватает русских программистов. Вот они и начали вести свою деятельность на пикабу. 

раскрыть ветку
2
Автор поста оценил этот комментарий

Я читаю эти посты, как захватывающий бизнес-роман!

раскрыть ветку
1
Автор поста оценил этот комментарий

Как всегда очень интересно :) Один вопрос:

"Этот документ, составленный обоими моими руководителями, оказался совсем не таким, каким я ожидал"

Документ оказался негативным?

раскрыть ветку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества