Работя в Google! Оплаквания на служители на Google. Как да си намеря работа в Google и струва ли си?

Относно вашия трудов стаж

Ще се опитам да опиша целия си опит и клопките, които срещнах, докато се подготвях за интервю в Google и други компании от Долината (Microsoft, Amazon, Snapchat, Evernote, Cruise Automation, Uber и др.). Целта ми беше да получа оферта от Google или Facebook, или още по-добре от двете; всички останали компании бяха от категорията „е, ако там е много интересно, тогава можете“. От първия ден, в който започнах да се подготвям до момента, в който получих оферта от Google, минаха 1 година и 5 месеца. Получих първата си оферта след 1 година и 2 месеца подготовка. Имаше общо 7 обекта (интервюта в офиса на компанията), от които 3 бяха оферти (Google, Evernote, Cruise Automation). Така че да започваме.

Заден план

Бях продавач в Google в Маунтин Вю в продължение на година и половина. Там имаше и няколко служители на Google, които също бяха доставчици преди. Разбира се, мозъкът постоянно ми казваше, че са „различни“, че са „по-умни, по-добри, по-готини“ от мен. И моята съдба е да бъда продавач. Веднъж дори се опитах да разреша проблем на LeetCode. Успях да овладея 5-та лесна задача, която се оказа 120 реда код и в резултат на това никога не преминах тестовете. Отне 5 часа в един красив калифорнийски съботен следобед. Най-накрая разбрах, че всички около мен са го „дали“, но аз не.

Но все пак, прекарвайки много време с приятели от Google, разбрах приблизителния алгоритъм - какво и как да направя. Направих точно както казаха и получих оферта (доста се изненадах). Вторият нюанс е, че направих front-end в Google, всичките ми приятели бяха back-end и описаха подготовката специално за back-end. Помислих и реших: „И бек-ендът също е добър (веднъж писах на .NET, въпреки че беше много отдавна), ще отида точно като тях, но ще направя повече от тях и тогава Определено ще получа оферта.”

Мотивация

Подготовката за интервюта в големи компании не е спринт, а маратон. Според моя опит - от шест месеца до година и половина. Този маратон изисква много гориво и ще бъде много тъжно, ако свърши наполовина или в края. Следователно трябва да подготвите ресурси предварително.

Това, което искам да кажа

Подготовката изисква много време: приблизително 2-3 часа всеки делничен ден и всеки уикенд изцяло. Това всъщност е цялото свободно време. Бях без жена и деца и беше по-просто, от една страна - никой не изисква постоянно внимание. От друга страна, никой не го подкрепя.

Вярвам, че трябва да преговаряте с хора, с които сте тясно свързани „на брега“, за да знаят какво да очакват, да споделят цели, да помагат в трудни периоди (ще се случат, всички сме имали).

Освен това трябва ясно да разберете защо правите това и какво искате да получите. И най-добре е тази цел да е извън вас, по-голяма от вас. Ако правиш нещо само за себе си, можеш да вкараш в трудни периоди, ако за някой друг, мотивацията е много по-висока и това ти помага да не спираш.

Пример 1: „Искам да отида в Google, защото е страхотно“, „Искам да отида във Facebook, защото там има много пари“- това е за вас. Във всеки един момент можете да намерите статия, че Google е боклук, че там са дали по-малко пари, отколкото в друга компания, че там е скучно, има много политика. И какво? И това е всичко, мотивацията падна, книгите с алгоритми излитат през прозореца.

Пример 2: „Искам да се присъединя към Google, за да мога да заведа семейството си в САЩ и да дам на децата си добро образование“, „С пари от Facebook мога да направя това и това.“. В моя случай мотивацията звучеше така: „Искам да съм по-близо до дома“. Обмислях да се преместя в Лондон или Цюрих. Когато започнах да се подготвям, си казах: „Момче, следващия път ще летиш у дома, когато получиш оферта, и само така.“ Исках да се прибера вкъщи и това ми даде енергия. Мисля, че това не работи за всички или през цялото време, но проработи за мен.

Вторият трик е да се подготвите по двойки. Лично аз не съм го използвала, но мои приятели го приготвиха успешно по този начин. След работа хората седят заедно в една заседателна зала и решават проблеми, всеки свои. Те също решават задачи на дъската: единият играе ролята на интервюиращия, вторият на интервюирания. По този начин можете да получите обратна връзка.

Процесът като цяло

Целият път може да бъде разделен на няколко етапа:

  1. Решаване на проблеми с помощта на LeetCode или InterviewBit.
  2. Изучаване на алгоритми и структури от данни.
  3. Повторение на решени задачи на LeetCode.
  4. Подготовка за интервю за дизайн.
  5. Симулирани интервюта (телефон и бяла дъска).
  6. Реални интервюта.
  7. Оферта и алкохол забрава.

Разрешаване на проблем

Това е най-важната и дълга част от подготовката.

Колко проблема трябва да бъдат решени? Мисля - 200-250, от които 40-50% лесно, 40-50% средно, 10-20% трудно. Реших около 300, моите приятели - 120-160.

Какво ще стане, ако първо вземете курс по алгоритми и след това решавате проблеми? Това беше първата ми идея, благодарение на приятелите ми ме разубедиха. Проблемите с лесно ниво не изискват познаване на сложни алгоритми, а простите могат да бъдат завършени, докато решавате проблеми.

Какво ще стане, ако първо прочета цялата книга „Интервю за кракване на кодиране“ с решени проблеми и вляза в битка вече напълно подготвен? Не си струва :) Решението, което току-що прочетох, не можах да си спомня дори в края на същия ден, камо ли няколко дни по-късно.

Можете да прочетете началото на „Интервю за кракване на кодиране“. Самият процес на интервю е добре описан там, как се общува, основни неща за алгоритмите и структурите от данни, как се анализира сложността на алгоритмите и т.н. Например от него научих как да анализирам сложността на рекурсивни алгоритми.

Преди да започнете да решавате проблеми по конкретна тема, можете да прочетете решенията на подобни проблеми в „Интервю за кракване на кодиране“. Има две причини:

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

Какви задачи по принцип съществуват, какви теми трябва да бъдат обхванати?

Можете да разберете какви теми обикновено съществуват с InterviewBit. Не ми хареса много да решавам проблеми там, но получих обща представа. Е, освен това можете да разгледате „Интервю за кракване на кодиране“.

В какъв ред трябва да се решават задачите?

Трябва да преминете от прости теми към сложни (InterviewBit ще ви каже реда). Във всяка тема решавайте проблеми, докато не започнете да успявате поне малко и в този момент веднага преминете към следващата тема. Започнете, разбира се, с лесното ниво. Опитвах се да реша всеки проблем за около половин час до час. Ако не можех, отидох да видя решението. В LeetCode за всеки проблем има форум, където хората публикуват своите решения, обсъждат и гласуват. Избрах най-добрите решения и ги проучих и така се научих. Тези форуми са може би най-ценното място за учене. Не всички решения са лесни за разбиране, дори тези с коментари „Това е абсолютно страхотно!!!“

Например, започнах да решавам проблеми със низове. 1-во - не реших, отидох да видя решението, 2-ро... 5-то - същото. 6-ти, 7-ми - решено. Така че е време да преминем към следващата тема. Тайната е следната: трябва да превключвате между темите възможно най-често, за да го запомните по-добре. Но ако превключиш преди да е потръгнало, то след няколко теми можеш тотално да се демотивираш. Мозъкът услужливо ще ви каже: „Е, след като не можете да решите нищо, отидете да пиете бира и да гледате футбол, това просто не е вашето нещо.“ Трябва да сте подготвени за факта, че самочувствието и настроението ще бъдат като влакче в увеселителен парк: ако работи, бързаме нагоре, ако не работи, се обезсърчаваме и падаме. Просто трябва да запомните, че и първото, и второто са временни, трябва да продължите. Ако дълго време няма резултат, по-лесно е да поемете задачи.

Как се решава проблема?

Разбира се, можете просто да вземете и да разрешите проблеми на LeetCode и да не се занимавате с това, което ще опиша по-долу. Но резултатът ще бъде много по-добър, ако използвате следния алгоритъм, тъй като той напълно повтаря стъпките в реално интервю:

  1. Четем условието на задачата, в никакъв случай не се опитваме да излезем с решение, преди условието да е прочетено докрай. Важно е!!! Мозъкът се опитва да намери подобен проблем, чието решение знае, и да го представи като търсено.
  2. Опитваме се да измислим уточняващи въпроси.
    1. Пример 1: има задача, в която трябва по някакъв начин да трансформирате низ. Какво да питам? - Какви знаци може да има в низ - ASCII или Unicode? Може ли да има няколко пространства едно до друго? Може ли да има интервали в началото или в края на ред? Има ли специални знаци като -,.^/? Има ли разлика за анализ между главни и малки букви? Колко е дълъг входният низ? Събира ли се в паметта на машината?
    2. Пример 2: има масив от Integer, трябва да намерите нещо в него. Въпроси: Има ли дублирани елементи? Има ли отрицателни числа? Ами ако резултатът от изчислението е повече от Integer.MAX_VALUE?
  3. Чертаем примери, за предпочитане двойка - една класическа, втората с ъглови кутии. След това ние +/- трябва да сме сигурни, че сме разбрали правилно задачата.
  4. Измисляме решение "напред" и оценяваме неговата сложност. Винаги трябва да се определя сложността на решението.
  5. Измисляме по-оптимално решение и оценяваме неговата сложност.
  6. Разработваме API решение - какви методи ще има (частни и публични).
  7. Записваме кода в тетрадка.
  8. Отстраняване на грешки в кода от бележника с помощта на нов пример. Няма нужда да вземаме един от примерите, които нарисувахме в началото. В този случай има много голяма вероятност да сме написали решение специално за този случай, а не за всички възможни. По-добре е да вземете нов пример с ъглов случай, който потенциално може да наруши решението.
  9. Прехвърляме кода в любимата си IDE, без да гледаме хартията. Така повтаряме решението два пъти.
  10. Копирайте кода от IDE в LeetCode и го стартирайте. Ако се изпълни перфектно, трябва да работи правилно от първия път. Това ми се е случвало в 10% от случаите.

Осъзнавам, че това звучи като „дяволски тон безполезна работа“. „Мога просто да напиша кода в LeetCode.“ Но всички тези стъпки, след известна практика, ще отнемат минути или дори секунди, което е критично при интервю. Много момчета заспаха, защото нямаха достатъчно време да завършат писането и отстраняването на грешки в решението. И аз съм един от тях.

Но какво да направите, ако проблемът не може да бъде решен?

Когато не можах да намеря решение за половин или час (първоначално се случи да страдам половин ден по един проблем), отидох да разгледам най-добрите решения във форума. Анализирането на решение почти винаги не е лесна задача и отнема време: трябва да прегледате и разберете няколко решения, да разберете сложността и да прочетете връзките към алгоритмите, предоставени от авторите на решенията. Намерих и проучих повечето от алгоритмите, след като ги срещнах в реални решения. Какво да правя по-нататък с това? След това трябва да повторите всички стъпки, които дадох по-горе с този проблем. И е много по-добре да го направите на следващия ден или поне в края на същия ден.

Качих всичките си решения в GitHub. Статистиката е ясно видима и винаги имате достъп до кода. Започнах да правя това, след като LeetCode изтри всичките ми решения. Така че LeetCode не е най-доброто място за съхранение на вашите решения.

Алгоритми

Учих алгоритми в курсовете на дядо Седжуик в Coursera (част 1, част 2). Видеоклипове на тези курсове могат да бъдат намерени в торенти.

След първите домашни от тези курсове реших, че няма да ги правя. Причината е, че в домашните се използват повече готови библиотеки с алгоритми, отколкото имплементация на тези алгоритми. Но простото слушане на курса няма да даде никакви резултати. Слушах и си водех пълни бележки, в резултат получих две тетрадки с пълни бележки, които препрочитах 4-5 пъти. Много помогна в последните няколко дни преди интервюто, когато трябва да повтаряте много и бързо.

Вторият важен нюанс е, че в процеса на решаване на задачи стана ясно, че има някои алгоритми и трикове, които не са включени в курсовете на Sedgwick, но трябва да ги знаете. Например, как да построим лабиринт? Как да минеш през лабиринт и да намериш изход? И, разбира се, има милион документи за всеки такъв проблем. Но преди интервюто няма време да четете милиони документи - трябва да сте кратки и по същество. Така че събрах такива неща в един док.

Дизайнерско интервю

Интервюто за дизайн се състои от така наречените отворени въпроси за дизайна, като например „как да проектираме YouTube“. Първоначално изобщо не можах да разбера какво се изисква и как трябва да изглежда. Тогава открих курс, който ми отвори очите. Струва си 80-те долара.

Също така е много полезно да прочетете примери за реални проблеми, например за висока мащабируемост. Ако компанията, за която интервюираме, има инженерен блог, определено си заслужава да бъде прочетен.

Поведенческо интервю

Можете да пишете много, но за мен добре каза Джаксън. В моята практика такова интервю имаше само във Фейсбук. Задачата на интервюиращия е да разбере какъв сте като човек, дали ще бъде удобно да работите с вас и как ще се държите в определена компания.

Например, по време на интервю във Facebook ме попитаха следното. Ето два отбора. В първия има мениджър, анализатори, пишат се задачи, изграждат се процеси, всеки знае кой какво трябва да прави. Второто не е структурирано, няма ясен лидер (тази роля е прехвърляема), не е ясно как да стане, ясно е само какво трябва да се случи в резултат (тоест пълна несигурност). С кой екип ви е по-удобно да работите? Въпросът беше още по-сложен. Изводът е следният: във Facebook екипите не са структурирани; втората опция описва добре как структурират всичко. И ако не се чувствате комфортно да живеете с това, вероятно не си струва да ви наема.

Фалшиво интервю

Фиктивното интервю е същото като обикновеното интервю, с тази разлика, че се провежда от приятели, колеги или специални компании. И след това дават своята обратна връзка – кое е добро, кое трябва да се подобри. Това също е критична стъпка и не трябва да се пропуска. Разбира се, като сте в Долината, това е много по-лесно. Имах много приятели от Google около мен, наистина готини момчета, които проведоха около 20 фалшиви интервюта с мен. Бях като Том Сойер, който започна да боядисва оградата и в резултат на това всички боядисаха оградата. Проведохме интервюто, разбира се, на английски на бяла дъска със строго ограничение във времето.

Взех фалшиви телефонни интервюта (и след това истински) на interviewing.io. Просто ми хареса този ресурс, момчетата са наистина страхотни. Но сега те са съобразени със САЩ и предоставят тази услуга в САЩ. Имаше дни, в които имах около 7-8 интервюта на седмица в interviewing.io.

В началото беше страшно и неудобно. Но на 10-ия път свикнах и започна да ми харесва. Провалих първите интервюта, но след това нещата започнаха да се получават. Средната реализация беше 50%, тоест половината премина, половината не. Имаше общо около 30-35 телефонни интервюта (реални и фиктивни).

Как да кандидатствам

Най-простият и неефективен метод е да попълните формуляр на уебсайта на компанията. Но понякога дава резултати. Например, попълних формуляр в уебсайта на Snapchat и на следващия ден специалист по подбор на персонал се свърза с мен и се разбрахме за телефонно интервю. С Google мисля, че това е абсолютно безполезно, тъй като този формуляр се попълва хиляди пъти на ден.

Вторият начин са сайтове за работа като Hired.com. Попълвате цялата информация за себе си и след това фирмите, които ви подхождат, се свързват с вас. Услугата е насочена към американския пазар. Там без Н1 или зелена карта няма какво да се прави.

Третият метод е interviewing.io, който споменах по-горе, и подобни услуги. Те работят по следния начин: първо преминавате през фалшиви телефонни интервюта на тяхната платформа. След като успешно преминете две, те ви дават възможност да провеждате анонимни телефонни интервюта с реални компании на тяхната платформа. Например, вие и служител на Uber влизате едновременно и той ви интервюира. Ако преминете, тогава онсайт. Фалшивото телефонно интервю и истинското телефонно интервю не се различават по нищо. Има няколко недостатъка на interviewing.io. Първо, те си сътрудничат повече със стартиращи компании; има малко големи компании. Вторият е фокусиран върху Щатите (имате нужда от H1 или зелена карта).

Последният и най-ефективен метод е чрез направление. Това е, когато човек, който работи в компания X, ви даде препоръка за набиращия персонал. Той трябва да посочи откъде ви познава и защо смята, че сте подходящ + вашата автобиография. Вероятността да се свържем с вас след това е много голяма. Ако не сте се свързали, най-вероятно работодателят е видял нещо в автобиографията ви, което го е накарало да бъде предпазлив.

Резюме

Резюмето на инженер в Долината и Украйна е много различно. Трябва да е кратко (по-добре е да не надхвърляте две страници), да показва какво наистина сте направили (въздействието ви върху компанията).

Лариса, инженер в Google, пише много за интервюта, Google и долината в своя блог. Тя има интересен раздел „Резюме за преглед“. Тук хората отварят достъп до Google doc със своята автобиография, Лариса и други читатели го коментират и се опитват да го подобрят.

Интервю по телефона

Стандартното телефонно интервю включва говорене с глас (по телефон, Skype, hangout и т.н.) и писане на код в споделен Google документ или споделена онлайн IDE. Отнема 1 час или 45 минути, това трябва да се уточни предварително.

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

След това интервюиращият копира изложението на проблема и няколко примера в споделения документ. Струва си незабавно да се изясни колко време е дадено за решаване на проблема, тъй като може да има една, две или дори три задачи. Често това са две задачи – едната лесна за начало, а втората по-сериозна. Понякога това е една задача, но след като първата част е готова, интервюиращият усложнява първоначалната задача с допълнителни условия. След всички разяснения, трябва да следвате плана, който дадох, за да разрешите проблема.

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

Най-епичният пример за тази грешка, който имах, беше по време на onsight интервю в Evernote. Задачата беше следната – да се анализира CSV файл с разписание на влаковете и да се напише програма, която да избере оптималния влак при определени условия. Можете да го Google. Никога преди не бях писал код за работа с файлове в Java и бях на загуба. Реших, че сега бързо ще сортирам файловете и след това по някакъв начин ще изградя алгоритъм. Време за всичко - 1 час 15 минути. Прекарах половин час в изграждане на красиви обвивки около четене от файл, куп обекти, описващи влакове, маршрути и други боклуци. В същото време нямах малка представа как ще работи алгоритъмът за избор. Тогава разбрах, че не мога да се справя, не разбирах как да изградя алгоритъм и настъпи паника. 12 минути преди края на интервюто разбрах как трябва да бъде. След 15 минути (3 минути закъснение) написах кода (все пак с няколко грешки). Никога през живота си не съм писал код толкова бързо.

Onsight интервю

Ако телефонното интервю е било успешно, следващата стъпка е onsight. Компанията ви купува самолетни билети, плаща ви хотела и вие летите да ги посетите. Така че отлетях до Лос Анджелис за интервю в Snapchat.

Всички интервюта се провеждат в един и същи ден, едно след друго, с почивка за обяд. Рекрутерът изпраща предварително имейл с график, посочващ часа, вида на интервюто и името на интервюиращия. Например в Snapchat имах две технически преди обяд и три след това. Между интервютата няма пауза, ако забавите едно интервю, вие сте ограбили време на следващото. Затова е по-добре незабавно да разберете къде имат вода и тоалетна и, ако е необходимо, да бягате там като мълния.

Какви видове onsight интервюта има и как да се подготвите за тях

Класическо техническо интервю със задачи

Тук всичко е сравнително ясно - същото като по телефона. Трябва да имате предвид следния факт – трябва да го направите за ⅔ време и да оставите ⅓ за непредвидени обстоятелства, повярвайте ми, те ще се случат. В Google едно интервю е 45 минути, което означава, че след среща с вас имате 25 минути, за да свършите всичко. От тях 2-5 минути се отделят за разбиране на проблема и чертане на примери, 2-5 минути за намиране на решение и 15-20 минути за писане на код и отстраняване на грешки. По време на отстраняването на грешки, разбира се, ще изскочат грешки и те трябва да бъдат коригирани бързо и красиво. Точно за това е необходима ценната ⅓.

Едно предупреждение – винаги трябва да ходите на интервю с лаптопа си. Първата стъпка е да попитате дали можете да кодирате върху него. Във фейсбук ме попитаха: имаш ли лаптоп? искате ли да кодирате върху него? Отговорът разбира се е да! По-бързо е и вероятността от грешка е много по-малка. Освен това пренаписването на код на бяла дъска и в IDE са две големи разлики. Многократно съм имал ситуация, в която коригирах грешки на бяла дъска, в резултат на което кодът стана напълно нечетлив (и най-вероятно с нови грешки). Интервюиращите гледаха на това с тъга и сълзи.

Лаптопът трябва да има любимата ви IDE и проект със стандартни шаблони:

  • работа с файлове;
  • анализиране на CSV файлове;
  • четене през http;
  • HTML документ с прикачени стилове.

Спомняте ли си и моето тъжно преживяване с Evernote? И така, на следващото място бях помолен да анализирам CSV, отне 3 минути. Интервюиращите нямат нищо против, ако използвате такива шаблони - това спестява време и те разбират, че можете да Google как да анализирате файл.

Важен момент е, че винаги трябва да контролирате времето. На едно от моите интервюта в Google, моят интервюиращ, човек на около 25 години, ме попита сложен проблем с динамично програмиране. Намерих начин да го реша за квадратично време, на което той попита: „Има ли по-добър начин?“ И започнах да търся как да направя това, настъпи паника, но не можах да намеря „по-добро“ решение. Нашият диалог продължава:

аз: Не се сещам за по-добро решение. Може би можем да напишем моето решение и да го обмислим след това?
Той: Нека помислим още 10 минути. Ако не го намерите, ние ще напишем вашия.
аз: Струва ми се, че времето може да е малко. Нека първо напишем моите.
Той: Е добре.

Успях да завърша решението си с 5 минути закъснение. Ако го бях послушал, нямаше да пиша нищо и 100% щях да проваля интервюто. И след това не ви наемат за астронавт. Работата е там, че той пресмяташе колко време му трябва, за да напише задачата на дъската, знаейки решението напълно.

История за предишния проект

Трябва да се подготвите добре за този въпрос предварително, да помислите какво да кажете. Можете дори да подготвите малка презентация в Google Slides и да говорите за нея, докато рисувате диаграми на бяла дъска. Тук трябва да покажете важността на решението (за какво е всичко това) и сложността на решението.

След първия ми неуспех на подобно интервю направих презентация от 14 слайда с много забавни GIF-чета (предстои, приятели!) и я усъвършенствах у дома пред огледалото. Тогава в началото на такова интервю винаги питах колко време имам за презентацията и след това показвах или всички слайдове, или само ключовите. Разбира се, трябва да сте сигурни, че цялата информация на слайдовете е публична и не разкрива корпоративни тайни.

Дизайнерско интервю

Това е отделен звяр, не много страшен, но специфичен. Тук ви дават много общи първоначални условия като „Трябва да изградите Dropbox“ и ви гледат как си проправяте път през тръните на несигурността. Какви въпроси задавате, как анализирате проблема.

Моите заключения от този тип интервю:

  • Първата стъпка е да се съберат изискванията. Много ясни и конкретни изисквания, на които трябва да отговаря системата. Типични въпроси, които могат да бъдат зададени: колко потребители, активни потребители, часови зони (една или няколко). Критерии за приемане - честотна лента на мрежата (входящ/изходящ трафик), RAM, съхранение, латентност, живот на батерията (за мобилни устройства) и др.
  • Представете си, че интервюиращият е вашият клиент (или потребител), за когото се изгражда системата. Какво му трябва? Какво можете да предложите извън това (събиране на статистика, админ панел)?
  • Какви потребители ще има тази система? Често има няколко от тях - общи потребители и администратори. И изискванията към тях могат да бъдат коренно различни. Разбирайки това, трябва да съберете всички случаи на употреба. Един случай на използване ще съответства на един метод в API.
  • Дефинираме три ключови елемента - UI (ако има такъв), API, DB схема. Често, докато рисувате потребителски интерфейс, можете да намерите нови случаи на употреба и да ги обсъдите.
  • Оценете всичко, което можете - брой потребители, заявки (заявки) за секунда (QPS), латентност, API латентност, дисково пространство, от което се нуждаете (за 5 години например), кеш пространство, входящ/изходящ трафик.
  • Отделно оценете съотношението четене и запис. Нашата система тежка ли е при четене или запис? В зависимост от това как ще записваме и четем данни?
  • Как ще бъде организирано съхранението и кеширането на данни? Може би е необходима опашка за обработка на скъпи операции? Как ще бъдат организирани репликите и шардовете (трябва да разберете ясно разликата между тези понятия)?
  • За по-лесно разбиране можете първо да изградите система за 100 потребители. След като интервюиращият се съгласи с този дизайн, можем да помислим как ще го мащабираме до хиляди и милиони потребители.
  • Намерете компромиси и ги обсъдете. Например, това може да е компромис между последователност и скорост. Какво е по-важно в този контекст? Как да постигнете това?
  • Когато рисуваме диаграми, нито един блок не трябва да бъде едно копие, той винаги е набор от много. Ако един възел падне, той трябва незабавно да бъде заменен от негов клонинг. Трябва да помислим какви извънредни ситуации могат да възникнат и как ще се справим с тях.
  • И най-важното е да слушате внимателно интервюиращия и никога, ама никога да не спорите с него. Това изглежда очевидно, но мнозина (включително и аз) го забравят.

Въпроси към интервюиращия

В края на всяко интервю, интервюиращият ви оставя 5 минути, за да зададете въпроси.

Пример за лоши въпроси: На какъв език за програмиране пишете? На какъв облак разполагате с инфраструктурата си? Каква СУБД имате? Какъв е проблемът тук - фирмата наема универсален войник, който трябва да разбере техническите подробности за месец-два. Това всъщност няма значение, някак си е тясно.

Какво е най-добре да попитате? Най-простото нещо: какво харесва и не харесва интервюиращият в компанията, защо е избрал тази компания. Можете да попитате за бизнеса: как работи, какви проблеми и нужди съществуват. Можете да попитате за условията на работа: кога хората идват и си тръгват от работа, дали работят дистанционно, колко митинги, какъв вид.

10 дни преди важен onsight

Имах две най-важни прозрения - Google и Facebook. Google беше първи и аз бях доста притеснен. 10 дни преди онзита направих график за всеки ден какво трябва да се направи. Съдържаше следното: повторение на алгоритми, типични задачи, задачи, които се срещаха по време на интервюта в Google, въпроси за дизайна. Не отидох на работа 5 дни преди интервюто и се хвърлих в подготовка.

Стана ми интересно как се подготвят спортистите преди важни състезания. Какво правят, за да избегнат паниката в критичен момент? Един от важните моменти е да преиграете бъдещото представяне в главата си и да тренирате в условия, близки до реалните.

Тъй като бях TVC в Google (и те ми определиха зала за срещи преди уикенда, където щеше да се проведе интервюто), дойдох и се подготвих там. Пристигнах по същото време, както щях да пристигна в деня на интервюто, и паркирах колата, където щях да го направя няколко дни по-късно. Разместих столовете и избрах цвета на маркера, размера на шрифта, удобен за писане на бялата дъска. Може би това ми позволи да се събера в момента, когато почти се провалих на едно от интервютата.

Финалът

Няколко дни след онсайта ми се обади специалистът по подбор на персонал. Той ме поздрави и каза, че съм се справила добре, всичко е минало добре. Намериха ми екип в Швейцария в Цюрих. Официална позиция - Софтуерен инженер. Издишах. Главата ми беше напълно празна, избягах. Състезанието на 1 година и 5 месеца се обявява за закрито.

Недоволство и оплаквания от служители относно условията на труд в Google. Нека да разгледаме оплакванията на служителите на Google относно тяхната работа!

Няма идеална работа в света, всеки човек винаги ще има някакви оплаквания, оплаквания и недоволство от работата си!

Дори такава известна компания като Google има Оплаквания на служители на Googleна вашата „нещастна“ работа!

Нека да разгледаме оплакванията на служителите на Google относно тяхната работа:

  • „О...чувствам се много зле! Изгорих се лошо в Хавай, когато бях на фирмено събитие”;
  • „Много ми е трудно работа в Google! Ядосан съм, че моят тридесет инчов монитор блокира красивата гледка към планината”;

Google направи за мен повече от моето средно образование.

  • „Ех...диванът в офиса ми не е много дълъг, не мога да легна в цял ръст!“;
  • „Чувствам се неудобно, че фитнесът се намира в друга сграда на Google! Много искам да се отвори още една фитнес зала в сградата, в която работя, тъй като не искам да харча пари за пътуване! Надявам се компанията да разгледа искането ми възможно най-скоро!“;
  • „Бих бил по-щастлив да работя в Google, ако сменяхме мобилните си телефони по-рядко! Защото нямам време да свикна с новите мобилни телефони, защото след няколко седмици пак ми го отнемат и го обменят за още по-нов модел! И така през цялото време :(";
  • „Случи ми се неприятна ситуация! Имаше ден, когато влязох в стаята за игри на Google и нямаше свободни столове за мен! Така че трябваше да играя Call of Duty на стол! Представяте ли си колко неудобно е това?“;

Ето още няколко изненадващи оплаквания от служители на Google:

  • „Не мога да се наситя на Харбър Бридж сутрин, защото слънцето изгрява над Сидни и грее право през прозореца ми! И неохотно го затварям с щори!
  • „И толкова се засищам с Google по време на закуска, че изобщо нямам време да бъда гладен за обяд... а там има толкова много вкусотии, че трябва да се насилвам да ям :)“;
  • „Не ми харесва работа в гугълФакт е, че в сградата, в която работя, има ограничен избор от забавни игрални автомати! Затова трябва да стана и да отида в друга сграда, за да задоволя интереса си”;
  • „Аз съм момиче и знаете как е, когато онези безплатни слушалки от Google за сто долара съсипват косата ви“;

Има дори такива оплаквания от служители на Google:

Преди хората бяха начетени, но сега са наясно с Google...

  • „Е, кажете ми ... как можете да работите нормално в една компания, ако спокойно влезете в кухнята и наскоро заредиха различни напитки и сокове в хладилника, но нямаха време да се охладят! Е, какво е това?”;
  • „Не мога да направя разлика между настройките на масажния стол на Google! Не усещам разликата между режимите: „Избухване на сила“, „“, „Регенерация“, разстройство!“;
  • „На работа в Google не мога да се отърся от чувството на несигурност! Например, когато ставам от бюрото си и отивам да обядвам, постоянно съм изправен пред избор: в коя кухня да отида за обяд, тъй като и двете са на едно и също разстояние от мен.“

И така, как ви харесва да работите в Google? Как ви харесват оплакванията от служители на Google?

Google е широко известен като най-изчерпателната и обширна търсачка в Интернет. През годините базираната в Маунтин Вю, Калифорния компания се разраства и укрепва позициите си. Бяха въведени нови допълнения и функции, включително реклама с плащане на клик, пакет от онлайн и друг мощен софтуер и собствен уеб браузър. Огромният брой разнообразни проекти прави Google един от най-големите работодатели, съществуващи в Интернет. Но въпреки броя на свободните работни места, трябва да имате добра автобиография и да работите усилено от вкъщи, за да получите позицията си в екипа на Google.

стъпки

Фирмени познания

    Отидете в Google Jobs и прочетете предоставената информация. Google приема наемането сериозно. Всеки, който се интересува от работа в компания, трябва първо да проучи няколко интернет страници, посветени на процеса на кандидатстване за работа:

    • Началната страница на Google Jobs, връзка , предоставя на кандидатите връзки към други полезни страници, както и лента за търсене, където кандидатите могат да въведат ключова дума, за да намерят позиция, която отговаря на техните изисквания. Маркирайте тази страница и се върнете към нея, след като разгледате останалата част от сайта.
    • Страницата Joining Google, връзка , подчертава основните принципи, които се вземат предвид при кандидатстване за работа в Google. Тук ще научите какво отличава успешния кандидат от тези, чиито кандидатури са отхвърлени. Тази страница е задължителна за всеки, който обмисля търсене на работа в Google.
    • Страницата Life at Google, връзка , разказва на читателите какво е да работиш в Google. На страницата ще намерите много връзки с истории за Google, които ще ви помогнат да разберете какво служителите на компанията обичат най-много в работата си.
    • Страницата с предимствата, връзката, подчертава всички предимства, които служител на Google получава. Те включват услугите на местна бавачка и лекар, допълнителни плащания за жени, които раждат, и дори безплатна правна помощ. Ако се интересувате от работа за Google, трябва да разгледате тази страница.
  1. Разберете къде Google наема.За да направите това, трябва да отидете на страницата, където е посочено местоположението на офисите на компанията: връзка. Този сайт представя всички основни офиси на Google на планетата. Всичко, което трябва да направите, е да кликнете върху конкретен град и да видите свободните позиции в тази област. Всеки град има собствена страница със свободни позиции, които са изброени в дясната част на екрана.

  2. Изготвяне на лични данни

    Кандидатстване за работа

      Изберете позиция.След като сте избрали позиция от вашия местен офис или страницата Екипи и роли, ще трябва да щракнете върху съответната връзка. Там ще намерите описанието на позицията, изискванията и необходимите умения. Кликнете върху „Прилагане“ в долната част на страницата.

      Попълнете заявлението.Преди да продължите, уверете се, че сте попълнили всички задължителни раздели:

      • Информация за връзка: Тук трябва да въведете вашето име, адрес, телефонен номер и друга лична информация. Лесно е и няма да отнеме много време за попълване.
      • Резюме: Тук можете да попълните автобиография на уебсайта или да качите файл от вашия компютър. Най-добре е да качвате от компютъра си, за да не изтриете случайно нещо или да забравите да го включите.
      • Образование (по избор): Не сте длъжни да пишете за вашето обучение, но тази информация не може да навреди. Можете да добавите няколко училища.
      • Предишно място на работа (по избор): Вашата трудова история също не е задължителна, но ако сте заемали позиция, подобна или идентична на тази, струва си да включите тази информация. Можете да посочите няколко места на работа.
      • Мотивационно писмо (по избор): Това не е изискване, но мотивационното писмо ще увеличи шансовете ви за по-нататъшно разглеждане на вашата кандидатура. Ако сте подготвили писмото предварително, просто го копирайте.
      • Как научихте за тази свободна позиция?: Ако сте следвали тези инструкции, можете да посочите „Уебсайт за работа в Google“.
      • Пол и раса/етническа принадлежност (по избор): Кликнете върху съответния елемент.
    1. Изчакайте отговор.След като завършите заявлението, ще видите съобщение на екрана, че вашето заявление е получено и че ще получите автоматичен имейл в рамките на 24 часа. Съобщението ще завърши с известие, че ще получите отговор само ако се считате за подходящи за позицията. Бъдете търпеливи: Google получава стотици приложения всеки ден.

    Интервю

    Ако Google се е свързал с вас и ви е предложил интервю, поздравления! Вие сте една крачка по-близо до целта си. Ето какво трябва да запомните по време на интервюто:

    • Google се нуждае от необикновени хора.Ако отидете на интервю само с мисълта, че можете да свършите работата, това не е достатъчно. Увереност, че можете да се справите с работата, интелигентност, находчивост и способност за компетентно отговаряне на зададени въпроси – всичко това заедно може да ви гарантира допускане до позицията. Бъдете готови за всяка поредица от въпроси.
    • Google провежда много интервюта.Ако сте стресирани от процеса на интервю, може да не успеете в Google. Въпреки факта, че компанията преминава огромен брой интервюта, процесът на подбор е изчерпателен и много строг, в сравнение с повечето други големи корпорации. Бъдете готови за множество интервюта – до 5 в някои случаи – и останете ентусиазирани през целия процес. Не забравяйте, че колкото повече интервюта имате, толкова по-големи са шансовете ви да получите работата.
    • Google приветства независими работници и креативни личности.Опитът в работата в екип почти винаги се цени в компанията, но Google иска кандидатите да могат да се отличават и в индивидуалната работа. Ако не се чувствате уверени, че можете да работите самостоятелно или нямате подходящите умения, може да не оправдаете очакванията и да се провалите.
    • Приложете на всички позиции, които смятате, че са подходящи за вас. Това е умна тактика, особено ако сте готови да се преместите за нова работа. Колкото повече кандидатури изпратите, толкова по-вероятно е да получите положителен отговор.

    Предупреждения

    • Конкуренцията за работа в Google е жестока, така че само най-квалифицираните кандидати влизат в компанията. Не се обезсърчавайте, ако не получите отговор. Продължавайте да подобрявате уменията си и разширявайте автобиографията си. Кандидатствайте отново веднага щом се освободи позиция.

Работата в Google е мечтата на много търсещи работа. Красиви и просторни офиси, уютни меки дивани, бунт от цветове, чистота, ред - тук е съсредоточено великолепието на творческата мисъл. Наистина сградата на Google е невероятна. Фантастичният стъклен кампус, събрал под покрива си супер професионалисти, привлича желаещите да работят в просторни и светли офиси в творческа среда. Всичко тук е създадено за удобни и продуктивни дейности. Централата се намира в Калифорния, а малки клонове са разпръснати по целия свят.

Компания Google

Google е уеб-ориентирана корпорация, насочена към разработване и създаване на мащабируеми модулни системи. Днес компанията управлява милион сървъри, обработва милиарди заявки, както и потребителски данни. Основният продукт на Google е неговата търсачка. В допълнение към него има пощенската услуга Gmail, социалната мрежа Google+, интернет браузърът Google Chrome, програмата Picasa и Hangouts. Компанията разработва операционни системи, както и добре познати мобилни приложения като Ok Google. Работата в тази компания е трудна, но натрупаният опит е безценен за всеки програмист и инженер.

Специфика

Google... Заетостта е наболял проблем, който тревожи всеки, който иска да работи в тази компания. Този процес е сложен и се състои от три етапа:

  • Кандидатът трябва да представи автобиография. Мениджърът по назначаването го оценява и решава дали да се обади и да насрочи интервю.
  • Първото интервю се провежда по телефона. Специалистът определя дистанционно нивото на знания и професионални умения на кандидата. Въз основа на резултатите от тази комуникация мениджърът го кани в офиса или го отказва на следващ етап.
  • Интервю в офиса. Кандидатът се среща с няколко служители на компанията, които провеждат интервю под формата на разговор. Трябва да очаквате тестове и въпроси.

Не забравяйте, че спецификата на работата в Google също влияе върху нивото на интервютата. ако експертите се забавят с отговора.

Резюме

Ако Google е отворил свободни позиции, шансовете автобиографията ви да бъде разгледана се увеличават многократно. Корпорацията цени интересни и знаещи служители, така че често избират позиция за кандидат въз основа на неговите или нейните умения. Изискванията на Google за писане на автобиография не са по-различни. Тя трябва да бъде правилно съставена, структурирана, интересно поднесена, но на прост език. Перфектната автобиография ще ви помогне да бъдете наети. Google Play е фирменият магазин за приложения, където лесно можете да намерите всякаква информация как правилно да съставите такъв документ. Следвайте тези прости правила, когато пишете:


Автобиографията трябва напълно да отразява личността, силните страни и способностите на кандидата. Това е един вид портрет, който мениджърите по подбор на персонал си представят във въображението си въз основа на получените данни. Искате ли да направите положително впечатление? Бъдете смели, откровени, не се колебайте да поемете инициатива и отговорност.

Как да си намеря работа?

Мнозина може да се интересуват от въпроса: „Как е Google?“ Това е доста трудно да се направи. Някои кандидати се подготвят за интервюта няколко месеца преди деня X. Изучават теоретични дисциплини, комуникативни умения, учат се да гледат и говорят естествено, без притеснение. По време на интервюто специалистите на Google оценяват кандидата по четири основни критерия: аналитични умения, комуникационни умения, трудов опит и умения за програмиране.

Всеки критерий се оценява от 1,0 до 4,0. Интервюиращите само задават въпроси и се свързват с кандидата, а решението за допускане се взема от комисията по набиране на персонал. Рейтинговата система играе голяма роля за положителния резултат от интервюто. Ако потенциален служител получи 3,6, това се счита за отличен резултат. Окончателното решение за наемане на кандидат за позиция отнема няколко седмици. Служителите на компанията ви съветват да се подготвите за предстоящото интервю, като изучавате въпроси относно мащабируемостта и ограниченията на паметта и обработката бит по бит.

Кой е необходим?

Работата с услугите на Google изисква проактивни, трудолюбиви и квалифицирани специалисти. Компанията цени инженери по разработка, софтуерни инженери, дизайнери, мениджъри по разработка и продажби. Образование, ниво на интелигентност, общителност, портфолио, трудов опит - всичко това играе голяма роля при намиране на работа в голяма корпорация.

На свободна практика

Дистанционната работа в Google е чудесна възможност за тези, които искат да работят за компанията, но не могат физически да бъдат в офиса поради различни причини. За да получите работа в Google, която не изисква пряк контакт с ръководството и служителите, кандидатът трябва да притежава определени знания и умения. Интервюто на свободна практика не е по-различно. Специалист на фирмата ще разговаря с кандидата по телефона и ще задава технически въпроси. Те могат да се отнасят до писане на кодове. Понякога кандидат за дистанционна работа може да бъде поканен в офиса, за да общува лично.

Личното интервю се провежда от четири до шест интервюиращи. Той е обективен и независим. Зададените въпроси са нетрадиционни, но няма последователна структура. Решението за наемане се взема от мениджъри и инженери въз основа на резултатите от интервюто.

Критерии за подбор

Ако се интересувате от въпроса как да получите работа в Google, помислете за критериите за подбор на кандидати за конкретна позиция. Например ръководството има специални изисквания към техническите кандидати. По време на интервюто се оценяват личните и професионалните качества на кандидата:

  • Умения за програмиране.
  • Бързо обучаващ се.
  • Лидерство.
  • Чувство за собственост.
  • Интелектуална скромност.

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

Предимства

Работата в Google е интересно и възнаграждаващо изживяване за хора с творчески професии. Служителите на компанията имат много стимули и бонуси. За целите на продуктивната дейност ръководството създаде специални условия на труд, но това може да се отдаде на лична изгода. Работните места на служителите са оборудвани в съответствие със съвременните стандарти. Централата е уютна като у дома: меки дивани, фотьойли, вкусна и безплатна храна. Условията са такива, че можете да останете на работа до късно и да не бързате за вкъщи.

Огромният брой кафенета с безплатно и разнообразно меню удивлява въображението на обикновения работник. За закуска тук можете да ядете пържена риба тон и да я измиете с лимонено-ментова минерална вода, за обяд можете да поръчате панирано пиле с къри и да се насладите на шоколадов десерт. Местното балансирано меню (плодове, зеленчуци, зърнени храни), както и екзотични ястия - всичко това лесно може да се сравни с най-добрата ресторантска храна. Всяка прищявка на гурме служител ще бъде изпълнена тук, и то безплатно!

Работата в Google идва с допълнителни бонуси. Например има специални стаи за почивка, където служителите могат да релаксират. Персоналът на фирмата разполага с игрални зали, масажни столове, билярдна зала, пералня, автосервиз на пълно разположение на персонала на фирмата. Служителите могат да прекарват петък вечер с чаша лек алкохол. Приятно предимство на работата е солидна застраховка и наблюдение на здравето на персонала. Служителите често получават скъпи подаръци: нови смартфони и други джаджи.

Друг плюс: дизайнът на помещенията. Той е модерен, не е скучен и има футуристични черти. Тук е невъзможно да изпаднете в меланхолия и униние. Офисите са оборудвани с места за спане и възстановяване. Време за почивка в корпорацията обаче все още трябва да се намери.

недостатъци

Работата в Google не е толкова розова и приказна, колкото си мислят много хора. Това е отделен свят, в който трябва да се подчинявате на установените закони, да жертвате времето и принципите си. Като правило те наемат квалифицирани специалисти, завършили престижни учебни заведения. Начинаещите често не могат да издържат на натиска на успеха и не могат да приложат знанията си на практика. Да, има високи заплати, бонуси и други стимули, но работата във фирмата отнема цялото ви свободно време. Служителите на практика живеят в офиса, като в „златна клетка“.

Друг съществен недостатък са пренаселените офиси. В компанията работят много служители, като персоналът непрекъснато се попълва. Управлението просто няма време за разширяване. В тази весела американска компания има бюрокрация. Проблеми със сигурност съществуват в Google. Това е голяма институция, в която работят живи хора от кръв и плът. Никой не е имунизиран от грешки и недостатъци.

Заплата

Кой от нас не мечтае за висока заплата, реализация на творчески потенциал и придобити знания? Работата в Google е престижна и високоплатена. Без бонуси, плащания, парични стимули или подаръци служителите получават от 100 хиляди долара годишно. Най-добре платените позиции в компанията са финансов анализатор, мениджър развитие, старши инженер, мениджър продажби на продукти, изследователи, технически мениджър, технически ръководител на проекти, корпоративен правен консултант, мениджър връзки с обществеността, технически мениджър, дизайнер на потребителски интерфейс, мениджър онлайн продажби, инженер по наличност на услуги и софтуер и др. Обикновените служители получават по-малко.



Подобни статии