Как я устроился на работу в Google, не имея высшего образования

2067
15

В Украине часто жалуются на низкое качество образования, особенно в сфере ИТ. Стоит ли тратить деньги и 5 лет своей жизни на обучающую программу, которая давно устарела и совсем не обязательно гарантирует в будущем интересную и высокооплачиваемую работу. С другой стороны, кто же захочет брать на работу программиста без диплома, будь он хоть семи пядей во лбу?

Есть такие. Например, Google. Об этом рассказал в своем автобиографическом рассказе разработчик программного обеспечения и предприниматель Дэвид Биттоу из Сан-Франциско, который после работы в штате технологического гиганта успел проявить себя в таких компаниях как Square, Obvious Corporation, Namco и Double Helix. А университет он так и не закончил.

«У меня было намерение пойти в колледж. Я собирался поступить в UCLA. К сожалению, в школе у меня был постыдно низкий средний бал (2,45), и я мог рассчитывать разве только на какой-нибудь самый замшелый университет. Вместо этого я пошел на компьютерные курсы в Purdue Calumet, сателлит университета Purdue — это был мой обходной путь к высшему образованию. Приблизительно через два семестра на курсах университет сделал мне предложения из разряда тех, от которых нельзя отказаться.

Шаг 1: Не можешь? Притворись!

Во время обучения в колледже я работал на маленькую компанию в Гриффите, Индиана, которая занималась созданием сайтов для местных бизнесов. Мне платили $12 в час, работенка была не пыльная, но категорично не из тех, о которых я мечтал.

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

Два месяца я занимался разработкой и выпустил онлайн демо-версию. Оказалось, что неоперившийся калифорнийский стартап под названием CodeFire делал почти такую же игру — космическую стрелялку — только в 3D. Они связались со мной и предложили мне заморозить мой проект. На что у меня был единственный вариант ответа: «Конечно, я так и сделаю, если вы возьмете меня к себе на работу». Они прислали предложение, которое я принял, покинув свою маленькую конторку.

Прежняя моя компания сохранила за собой права на мою игру. Я уведомил их об уходе за три недели, и мы расстались друзьями.

Шаг 2: Подружись с мастером

Это, пожалуй, самое важное, что вы можете сделать. Найдите человека, который мастерски владеет вашим ремеслом, сделайте его своим наставником и никогда не переставайте учиться. Пока я работал в Double Helix, моим наставником был Нэйтон Хант, один из самых умных и застенчивых парней, которых я когда-либо встречал в жизни. Он чрезвычайно терпеливо отвечал на все мои вопросы независимо от того, насколько элементарными были ответы. Я бегал к нему в офис тысячи раз, чтобы задать очередной рандомный вопрос типа «как мне плавно интерполировать из одной матрицы вращения в другую?» или «как мне выполнять перемещение капсулы в цилиндр обнаружения столкновений?» Годы спустя он присоединится к команде Google через месяц после того, как это сделал я.

Каждый из моих наставников что-то менял в моем подходе к решению проблем или восприятию мира в целом.

Шаг 3: Восполни пробелы

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

Постепенно делайте следующее:

  • Изучите досконально по крайней мере что-нибудь одно из C, C++, Objective-C, Java, PHP, Python или Ruby. Бегло освойте еще один из вышеперечисленных языков и ознакомьтесь с Scala, Haskell или Lisp.
  • Изучите ваши структуры данных. Реализуйте большинство из них. Поймите их временные сложности.
  • Решите проблемы, связанные с программированием.
  • Создайте себе портфолио из (не)законченных проектов: фреймворков, мобильных или веб-приложений, небольших игр и т.д.

Шаг 4: Поверь в себя

За шесть лет с тех пор, как я покинул Индиану, я создал около шести игр для разных платформ. Мне было скучно и хотелось чего-то новенького. Я обратился в Google и почувствовал, что если бы меня взяли туда на работу, я бы стал «настоящим инженером», к чему я всегда стремился. Но ответа оттуда я так и не получил, чему отнюдь не был удивлен.

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

Я помню каждое мое собеседование в Google, и каждое из них было для меня как катарсис. Интервьюеры были приятными собеседниками, и я уверен, они видели, насколько сильно я взволнован тем, что они позвали меня на встречу. И насколько увлечен заданиями, которые они мне дали. Вот некоторые из них:

  • Учитывая набор из 2-мерных точек, вычислить горизонт. Это было легко. Я обратился к общей структуре данных, известной как max heap. Есть несколько хороших решений подобных задач, и это одно из них.
  • Создать Microsoft Paint. Это была одна из самых веселых задач. Я начал с рисования интерфейсов и диаграмм классов. Я упомянул Paint Bucket, и интервьюер попросил меня его реализовать. К счастью, я знал как сделать это даже с закрытыми глазами благодаря TopCoder.
  • Описать свои лучшие качества как программиста. Я рассказал о типах тестирования и привел примеры, когда они наиболее эффективны. Рассказал про единый стиль сопровождения кода. И тому подобное. Все это вы найдете в книгах «Законченный код» или «Эффективный Java».

Я наслаждался каждым раундом собеседования и тем, как я решал их задачи. Если бы я не подготовился, все пошло бы совсем по-другому. После собеседований у меня было очень хорошее предчувствие. Но я слышал, что даже если комитет по найму одобрит мою кандидатуру, меня не примут до тех пор, пока Ларри (Пэйдж) лично не подпишет решение о найме. И я боялся, что когда он увидит мою брешь в образовании, мне крышка.

Но этого не случилось. И в один прекрасный день, когда я ел суши в Санта Клара, мне позвонили и с энтузиазмом сообщили, что я принят. В этот день я понял, что никогда не вернусь в школу.

Воины-победители сначала побеждают, а потом идут на войну, между тем как воины-побежденные идут на войну и там ищут побед».

Источник Business Insider

Оставить комментарий

Комментарии | 15

  • ой. Пару недель назад читал этот материал. Найду — кину линк откуда Вы это украли 🙂

    • Неоправданные и незаслуженные инсинуации. Мы не крали, мы перевели. И всегда указываем первоисточник. Вот же: «Источник Business Insider»

      • А можно попросить вас ставить ссылку не в конце, а в начале материала? Очень уж неудобно каждый раз скроллить до конца страницы, чтобы понять, оригинальный это материал или перевод.

        • Мне казалось, что фраза в начале статьи «Об этом рассказал в своем автобиографическом рассказе разработчик
          программного обеспечения и предприниматель Дэвид Биттоу из Сан-Франциско» кагбэ намекает на то, что это перевод, а не я из головы писала 🙂

          • 1. Фраза «Об этом рассказал в своем автобиографическом рассказе…» лично мне намекает только на отсутствие литредактора. =)

            2. В ней не указано, кому именно рассказал об этом Биттоу.

            3. За ссылкой на оригинал всё равно нужно идти вниз.

          • насколько я поняла из вашего предыдущего поста, вас интересовало не то, кому Биттоу это рассказал, а то, «оригинальный это материал или перевод». А ссылки на первоисточник мы традиционно ставим внизу, пока это никакого особого резонанса не вызывало =)

          • Ещё раз: Биттоу, в теории, мог рассказать это и вам. В начале материала нигде явно не сказано, что это перевод текста из BI.

            >> А ссылки на первоисточник мы традиционно ставим внизу, пока это никакого особого резонанса не вызывало =)

            Я и не говорю о резонансе, считайте это личной просьбой. 🙂

          • не исключено, что в следующий раз с пометкой «специально для Андрея» поставлю ссылку вначале 😉

          • Век не забуду вас и вашей доброты. =)

          • и я вас точно не забуду никогда))

  • Вот тут хорошо написано http://habrahabr.ru/post/156575/ на примере Тиля, что делает Google соей конкуренцией на входе и почему победа в конкурсе не всегда оптимальное решение в жизни кандидата. 7 лет назад меня не взяли в Google (принципиально не готовился как автор, так как не видел в этом смысла), но это наверное было бы не оптимальными решением для меня.

Поиск