
O título do artigo parece uma falha épica, mas, na verdade, nem tudo é tão claro. E, em geral, essa história terminou muito positivamente, embora não no Google. Mas este é um tópico para outro artigo. No mesmo artigo, vou falar sobre três coisas: como foi o meu processo de preparação, como foram as entrevistas no Google e por que, na minha opinião, tudo não está tão claro quanto parece.
Como tudo começou
Numa fria noite de inverno cipriota, de repente tive a ideia de que meu conhecimento da ciência da computação clássica está muito longe da média, e algo precisa ser feito com isso. Se, de repente, alguém não leu por que a noite é cipriota e fria, você pode descobrir
aqui . Após algumas reflexões, decidiu-se iniciar um curso on-line sobre algoritmos e estruturas de dados. Eu ouvi de um ex-colega sobre o curso de Robert Sedgewick no Coursera. O curso consiste em duas partes (
parte 1 e
parte 2 ). Se os links mudarem repentinamente, você sempre poderá pesquisar no google pelo nome do autor. Cada parte leva 6 semanas. As palestras são ministradas no início da semana e os exercícios ainda são necessários durante a semana. A primeira parte do curso abrange estruturas básicas de dados, os principais tipos de classificação e a complexidade dos algoritmos. A segunda parte já está mais avançada, começando com gráficos e terminando com coisas como Programação Linear e Intratabilidade. Depois de pensar em tudo o que foi exposto, cheguei à conclusão de que é exatamente disso que preciso. Aqui, a propósito, um leitor curioso pode perguntar o que o Google tem a ver com isso. E, de fato, até aquele momento ele não tinha nada a ver com isso. Mas eu precisava de um objetivo, já que é um pouco difícil fazer 12 semanas à noite sem um objetivo. E qual poderia ser o objetivo de adquirir novos conhecimentos? Claro, a sua aplicação na prática. Na vida cotidiana, isso é bastante problemático, mas em uma entrevista em uma grande empresa facilmente. Um rápido google mostrou que o Google (desculpe-me pela tautologia) é uma das maiores empresas da Europa (e eu estava considerando a Europa), em que essas entrevistas são realizadas. Ou seja, seu escritório é em Zurique, na Suíça. Então está decidido - estudamos e fazemos uma entrevista no Google.
Preparação da primeira execução
12 semanas passaram despercebidas e terminei os dois cursos. Minhas impressões dos cursos são mais do que positivas, e posso recomendá-las a todos os interessados. Gostei dos cursos pelos seguintes motivos:
- Professor fala inglês razoavelmente claro
- O material está bem estruturado.
- Lindas apresentações mostrando o interior de cada algoritmo
- Seleção competente de material
- Exercícios interessantes
- Os exercícios são verificados automaticamente no site, após o qual um relatório é criado
Meu trabalho nos cursos costumava ser o seguinte. Durante 1-2 dias, ouvi palestras. Em seguida, passou por um teste rápido para o conhecimento do material. O resto da semana fez o exercício em várias iterações. Após o primeiro, obtive meus 30-70%, os subseqüentes elevaram o resultado para 97-100%. O exercício geralmente consistia na implementação de algum algoritmo, por exemplo,
Seam carving ou
bzip .
Depois de concluir o curso, percebi que muito conhecimento é muita tristeza. Se antes eu simplesmente sabia que não sabia de nada, agora comecei a perceber que era eu quem não sabia.
Como ainda era apenas o mês de maio e eu havia planejado uma entrevista para o outono, decidi continuar meus estudos. Depois de visualizar os requisitos para a vaga, foi decidido seguir em paralelo em duas direções: continuar estudando algoritmos e fazendo um curso básico de aprendizado de máquina. Para o primeiro objetivo, decidi mudar de curso para livro e escolhi o trabalho monumental de Steven Skiena “Algoritmos. Guia de Desenvolvimento ”(The Algorithm Design Manual). Não é tão monumental quanto o de Knut, mas ainda assim. Para o segundo objetivo, fui novamente ao Coursera e me matriculei no curso Andrew Ng
Machine Learning .
Mais três meses se passaram e eu terminei o curso e o livro.
Vamos começar com o livro. A leitura acabou sendo bastante interessante, embora não fácil. Em princípio, eu recomendaria o livro, mas não assim imediatamente. Em geral, o livro faz uma análise mais profunda do que aprendi nos cursos. Além disso, descobri (de um ponto de vista formal) coisas como heurística e programação dinâmica. Naturalmente, eu costumava usá-los antes, mas não sabia como eles eram chamados. Também no livro, há um certo número de histórias da vida do autor (War Story), que diluem um pouco a apresentação acadêmica. A segunda metade do livro pode ser omitida a propósito, há uma descrição dos problemas e métodos existentes para resolvê-los. É útil se for aplicado regularmente na prática, caso contrário será esquecido imediatamente.
O curso me agradou mais do que isso. O autor conhece claramente seu trabalho e conta histórias interessantes. Além disso, uma quantidade razoável, a álgebra linear e o básico das redes neurais, lembrei-me da universidade, por isso não tive nenhuma dificuldade em particular. A estrutura do curso é bastante padrão. O curso é dividido em semanas. A cada semana, as palestras são primeiro misturadas com pequenos testes. Após as palestras, é dada a tarefa, que precisa ser realizada, enviada e a mesma será verificada automaticamente. Em resumo, a lista de cursos é a seguinte:
- função de custo
- regressão linear
- descida gradiente
- dimensionamento de recursos
- equação normal
- regressão logística
- classificação multiclasse (um vs todos)
- redes neurais
- retropropagação
- regularização
- viés / variância
- curvas de aprendizado
- métricas de erro (precisão, recall, F1)
- Máquinas de vetores de suporte (classificação de grande margem)
- meios K
- Análise de Componentes Principais
- detecção de anomalias
- filtragem colaborativa (sistema de recomendação)
- descidas estocásticas, mini-lote e gradiente de lote
- aprendizagem online
- redução de mapa
- análise de teto
Após a conclusão do curso, estava presente um entendimento de todos esses tópicos. Após 2 anos, quase tudo foi naturalmente esquecido. Eu o recomendo para aqueles que não estão familiarizados com o aprendizado de máquina e desejam entender bem as coisas básicas para seguir em frente.
Primeira execução
Já era setembro e era hora de pensar em uma entrevista. Como o envio pelo site é bastante desastroso, comecei a procurar amigos que trabalham no Google. A escolha recaiu sobre o
datacompboy , pois era o único que eu conhecia diretamente (embora não pessoalmente). Ele concordou em transferir meu currículo e logo recebi uma carta do recrutador oferecendo uma vaga no calendário para a primeira conversa.Depois de alguns dias, a ligação ocorreu. Tentamos nos comunicar por meio do Hangouts, mas a qualidade era terrível, por isso mudamos para o telefone. Primeiro, eles discutiram rapidamente o padrão como, por que e por quê e depois mudaram para a triagem técnica. Consistia em uma dúzia de perguntas no espírito de "qual é a complexidade de inserir em um mapa de hash", "que árvores equilibradas você conhece". Não é difícil se houver um conhecimento básico dessas coisas. A triagem correu bem e, de acordo com os resultados, decidiu organizar a primeira entrevista em uma semana.
A entrevista também foi através do Hangouts. Primeiro, eles conversaram sobre mim por cerca de 5 minutos e depois seguiram para o quebra-cabeça. A tarefa estava nos gráficos. Eu rapidamente percebi o que fazer, mas escolhi o algoritmo errado. Quando comecei a escrever o código, percebi isso e mudei para outra opção, que adicionei. O entrevistador fez várias perguntas sobre a complexidade do algoritmo, perguntou se poderia ser mais rápido. De alguma forma, entorpeci e não consegui. Neste momento, aconteceu e nos despedimos. Depois de 10 minutos, ocorreu-me que, em vez do algoritmo Dijkstra que eu usava, seria possível usar a primeira pesquisa específica nesta tarefa, e isso seria mais rápido. Depois de um tempo, o recrutador ligou e disse que a entrevista como um todo correu bem e que mais uma deveria ser arranjada. Acordou outra semana depois.
Desta vez as coisas pioraram. Se pela primeira vez o entrevistador foi amigável e sociável, desta vez é meio sombrio. Não pude descobrir imediatamente o problema, embora as idéias que eu apresentei, em princípio, possam levar à sua solução. Como resultado, depois de algumas dicas do entrevistador, tomei uma decisão. Desta vez, tornou-se uma busca pela primeira vez, com apenas alguns pontos. Escrevi as decisões, dentro do prazo, mas esqueci os casos de fronteira. Depois de algum tempo, o recrutador telefonou e disse que desta vez o entrevistador estava insatisfeito, porque, em sua opinião, eu precisava de muitas dicas (3 ou 4 peças) e constantemente mudava o código enquanto escrevia. Com base nos resultados de duas entrevistas, foi decidido não ir além, mas adiar a próxima entrevista por um ano, se eu tiver esse desejo. Para sim e disse adeus.
E tirei várias conclusões sobre essa história:
- A teoria é boa, mas você precisa navegar rapidamente
- Uma teoria sem prática não ajudará. É necessário resolver problemas e trazer a escrita de código para o automatismo.
- Depende muito do entrevistador. E não há nada a ser feito.
Preparação para a segunda abordagem
Depois de pensar na situação, decidi tentar novamente em um ano. E editou um pouco o alvo. Se antes o objetivo principal era estudar, e a entrevista no Google era como uma cenoura distante, agora passar na entrevista era o objetivo, e estudar era um meio.
Assim, um novo plano foi desenvolvido, que incluía os seguintes itens:
- Continue estudando teoria lendo livros e artigos.
- Resolva problemas algorítmicos na quantidade de 500-1000 peças.
- Continue estudando teoria assistindo a um vídeo.
- Continue estudando teoria através de cursos.
- Explore a experiência de outras pessoas entrevistando no Google.
O plano foi concluído por mim em um ano. A seguir, descreverei o que exatamente fiz para cada um dos pontos.
Livros e artigos
Eu nem me lembro do número de artigos que li, li em russo e em inglês. Provavelmente
este acabou sendo o site mais útil. Aqui está uma descrição de um grande número de algoritmos interessantes com exemplos de código.
Eu li 5 livros: Algoritmos, 4ª edição (Sedgewick, Wayne), Introdução aos algoritmos 3ª edição (Cormen, Leiserson, Rivest, Stein), Quebrando a entrevista de codificação 4ª edição (Gayle Laakmann), Programming Interviews Exposed 2ª edição (Mongan, Suojanen) , Giguere), Elements of Programming Interviews (Aziz, Lee, Prakash). Eles podem ser divididos em 2 categorias. O primeiro livro inclui Sedgwick e Cormen. Isto é uma teoria. O resto é preparação para a entrevista. Sedgwick no livro conta a mesma coisa que em seus cursos. Apenas por escrito. Não faz sentido ler atentamente se você fez o curso, mas deve ignorá-lo de qualquer maneira. Se você não assistiu ao curso, faz sentido ler. Korman parecia muito chato para mim. Ele dominou honestamente com dificuldade. Ele retirou apenas o
teorema mestre e algumas estruturas de dados raramente usadas (pilha de Fibonacci, árvore de van Emde Boas, pilha de raiz).
Um livro para se preparar para uma entrevista vale a pena ler pelo menos uma. Todos eles são construídos aproximadamente com o mesmo princípio. Eles descrevem o processo de entrevista em grandes empresas de tecnologia, fornecem coisas básicas da Ciência da Computação, tarefas para essas coisas básicas, resolvem problemas e analisam soluções. Dos três, eu provavelmente recomendaria Cracking the Coding Interview como o principal, e o restante, conforme desejado.
Tarefas Algorítmicas
Este foi provavelmente o ponto de treinamento mais interessante. Você pode, é claro, sentar e resolver estupidamente os problemas. Existem muitos sites diferentes para isso. Eu usei principalmente três:
Hackerrank ,
CodeChef e
LeetCode . No CodeChef, as tarefas são divididas por complexidade, mas não por tópico. No Hackerrank, tanto em complexidade quanto em tópico.
Mas, como eu descobri imediatamente, há uma maneira mais interessante. E estas são competições (desafios de programação ou concursos de programação). Todos os três sites os fornecem. É verdade que existe um problema com o LeetCode - um fuso horário desconfortável. Portanto, eu não participei deste site. O Hackerrank e o CodeChef oferecem um número bastante grande de competições diferentes, com duração de 1 hora a 10 dias. Diferentes formatos têm regras diferentes. Bem, sim, isso pode ser discutido por um longo tempo. O principal ponto por que a concorrência é boa é a introdução de um elemento competitivo (e novamente tautológico) no processo de aprendizado.
No total, participei de 37 competições em Hackerrank. Destes, 32 foram classificados e 5 foram patrocinados (até recebi US $ 25 em um deles) ou por fã. Na classificação, entrei nos 4% melhores 10 vezes, 11 vezes nos 12% melhores e 5 vezes nos 25% melhores. Os melhores resultados foram 27/1459 nas 3 horas e 22/9721 na semana.
Mudei para o CodeChef quando as competições eram menos frequentes em Hackerrank. No total, consegui participar de 5 competições. O melhor resultado foi 426/5019 em uma competição de dez dias.
No total, em competições e assim, resolvi um pouco mais de 1000 problemas, que se encaixavam no plano. Agora, infelizmente, não há tempo livre para continuar a atividade competitiva, nem existe uma meta à qual possamos atribuir tempo não livre. Mas foi divertido. Eu recomendo aqueles que estão interessados em encontrar pessoas com a mesma opinião. Juntos ou um grupo é muito mais interessante. Eu me diverti com esse amigo, então talvez tenha corrido tão bem.
Assista ao vídeo
Depois de ler o livro de Skien, em princípio, fiquei interessado no que ele estava fazendo. Como Sedgwick, ele é professor na universidade. A este respeito, na rede você pode encontrar vídeos de seus cursos. Decidi fazer um curso
COMP300E - Desafios de Programação - 2009 HKUST . Não vou dizer que realmente gostei. Em primeiro lugar, a qualidade do vídeo não é muito boa. Em segundo lugar, eu não tentei resolver os problemas tratados no curso. Portanto, o envolvimento não foi muito alto.
Além disso, no processo de solução de problemas, tentando encontrar o algoritmo correto, me deparei com um vídeo de Tushar Roy. Ele trabalhou na Amazon e agora trabalha na Apple. Como descobri mais tarde, ele tem
um canal no YouTube onde publica análises de vários algoritmos. No momento da redação, o canal contém 103 vídeos. E devo dizer que a análise em sua execução é feita muito bem. Tentei assistir outros autores, mas de alguma forma não funcionou. Definitivamente, recomendo este canal para visualização.
Cursos de aprovação
Então eu não fiz nada de especial. Assisti a um vídeo do desenvolvedor Android Nanodegree do Google e fiz um curso da ITMO
Como ganhar competições de codificação: segredos dos campeões . O nanodegree é completamente imaginado, embora eu naturalmente não tenha aprendido nada de novo a partir daí. O curso da ITMO em termos de teoria está um pouco amassado, mas as tarefas foram interessantes. Eu não recomendaria começar com ele, mas em princípio o tempo foi gasto por um bom motivo.
Explore as experiências de outras pessoas
Obviamente, muitas pessoas tentaram acessar o Google. Alguém bateu, alguém não. Alguns escreveram artigos sobre isso. De coisas interessantes, provavelmente vou mencionar
este e
este . No primeiro caso, uma pessoa preparou para si mesma uma lista do que precisa aprender para se tornar um engenheiro de software e acessar o Google. Ele acabou na Amazônia, mas isso não é tão importante. O segundo manual foi escrito por uma engenheira do Google, Larisa
Agarkova (
Larrr ). Além deste documento, você também pode ler
o blog dela .
Faz sentido ler comentários sobre as entrevistas do Glassdoor. Eles são todos mais ou menos semelhantes, mas algumas informações úteis podem ser obtidas.
Não fornecerei links para outros artigos pequenos, você mesmo pode encontrá-los no Google.
Segunda execução
E agora o ano passou. Ele se mostrou muito saturado em termos de estudo. Mas, no novo outono, tive um conhecimento teórico muito mais profundo e habilidades práticas. Mais algumas semanas antes do
prazo estabelecido para o meu ano de preparação, quando de repente uma carta de um recrutador do Google caiu no correio me perguntando se eu ainda tinha vontade de trabalhar para o Google e se gostaria de falar com ele. Naturalmente, eu não era contra. Concordou em telefonar em uma semana. Também me pediram um currículo atualizado, ao qual adicionei uma breve descrição do que fiz durante o ano no trabalho e, em princípio.
Depois de conversar por toda a vida, eles decidiram que em uma semana haveria uma entrevista no Hangouts, assim como no ano passado. Passada uma semana, chegou a hora da entrevista, mas o entrevistador não apareceu. 10 minutos se passaram, eu já estava começando a ficar nervoso, quando de repente alguém entrou no chat. Como acabou um pouco mais tarde, meu entrevistador, por algum motivo, não pôde aparecer e foi encontrado com urgência um substituto. O homem estava um pouco despreparado, tanto em termos de configuração do computador quanto em termos de realização de entrevistas. Mas então tudo correu bem. Eu rapidamente resolvi o problema, descrevi onde existem truques, como contorná-los. Discutimos várias opções diferentes para o problema, a complexidade do algoritmo. Depois conversaram por mais 5 minutos, o engenheiro contou suas impressões sobre seu trabalho em Munique (eles não viram uma substituição urgente em Zurique) e se separaram.
No mesmo dia, um recrutador entrou em contato comigo e disse que a entrevista foi excelente e eles estão prontos para me convidar para uma entrevista no escritório. No dia seguinte, ligaram pelo Hangouts e discutiram os detalhes. Como eu precisava do visto, decidimos agendar uma entrevista em um mês.
Enquanto preparava os documentos, ao longo do caminho, discuti com o recrutador a próxima entrevista. Uma entrevista padrão do Google consiste em quatro algoritmos e um design de sistema. Mas, como eu consegui um emprego como desenvolvedor Android, me disseram que parte da entrevista será com detalhes do Android. O que exatamente e quais serão as especificidades do recrutador que eu não poderia abalar. Pelo que entendi, foi introduzido há relativamente pouco tempo e ele próprio não estava muito atualizado. Também me inscrevi em duas sessões de treinamento: como passar por uma entrevista algorítmica e como passar por uma entrevista de Design do Sistema. As sessões foram de utilidade média. Lá, também, ninguém poderia me dizer o que os desenvolvedores do Android estão perguntando. Portanto, minha preparação neste mês se resumiu ao seguinte:
- Compra de um quadro branco e gravação de 2 a 3 dezenas dos algoritmos mais populares nele, a partir da memória. 3-5 peças todos os dias. Total de cada um foi escrito várias vezes.
- Atualizando várias informações do Android que não uso todos os dias
- Assistindo a alguns vídeos sobre Big Scale e tudo mais
Como eu disse, paralelamente eu estava fazendo documentos para a viagem. Para começar, me pediram dados para fazer uma carta convite. Então tentei por um longo tempo descobrir quem em Chipre faz vistos para a Suíça, já que a embaixada suíça não faz isso. Como se viu, este é o consulado da Áustria. Liguei e marquei uma consulta. Eles solicitaram um pacote de documentos, mas nada de particularmente interessante. Uma foto, passaporte, autorização de residência, um monte de certificados diferentes e, naturalmente, uma carta convite. A carta, entretanto, não chegou. Como resultado, fui com a impressão usual e realmente funcionou.
A carta chegou três dias depois, e a FedEx cipriota não conseguiu encontrar meu endereço e precisou ir atrás dele. Ao mesmo tempo, recebi tudo no mesmo pacote da FedEx'e, que eles também não puderam entregar para mim, porque não encontraram o endereço e estão lá desde junho (5 meses, Karl). Como eu não a conhecia, isso é natural e não presumi que eles a tivessem. Consegui um visto no prazo, após o qual fui reservado um hotel e ofereci opções de voo. Corrigi as opções para torná-lo mais conveniente. Não havia vôos diretos, como resultado voaram para lá através de Atenas e de volta para Viena.Depois que todas as formalidades da viagem foram resolvidas, mais alguns dias se passaram e eu realmente voei para Zurique. Eu fiquei sem incidentes. Cheguei do aeroporto à cidade de trem - de maneira rápida e conveniente. Tendo vagado um pouco pela cidade, encontrei um hotel e me acomodei. Como o hotel foi reservado sem comida, jantei na porta ao lado e adormeci, porque o vôo era de manhã e eu já queria dormir. No dia seguinte, tomei café da manhã no hotel (por algum dinheiro) e fui ao escritório do Google. No total, em Zurique, o Google possui vários escritórios. Minha entrevista não foi central. E, em geral, o escritório parecia bastante comum, então não tive a chance de analisar todas as vantagens do escritório "normal" do Google. Entrou em contato com o administrador e sentou-se para esperar. Depois de algum tempo, o recrutador saiu e me contou o plano para o dia, depois do qual ele me levou para uma sala onde a entrevista deveria ocorrer.Na verdade, o plano incluiu 3 entrevistas, almoço e mais 2 entrevistas.Tempos da entrevista
A primeira entrevista foi sobre o Android. Além disso, não tinha nada a ver com algoritmos. Surpresa, no entanto. Bem, tudo bem, é ainda mais familiar. Solicitado a criar um componente de interface do usuário específico. Primeiro discutimos o que e como. Ele se ofereceu para tomar uma decisão no RxJava, descreveu o que exatamente e por que ele fez isso. Eles disseram que isso certamente é bom, mas vamos fazê-lo com a estrutura do Android. E, ao mesmo tempo, escreveremos o código no quadro. E não apenas um componente, mas toda a Atividade usando este componente. É para isso que eu não estava pronta. Uma coisa é escrever um algoritmo para 30 a 50 linhas em um quadro e outra é o macarrão de código Android, embora com abreviações e comentários com o espírito de "bem, eu não escreverei isso, pois é tão óbvio". Aconteceu algum vinagrete em 3 placas. I.e.
Eu resolvi o problema, mas parecia idiota.Entrevista número dois
Desta vez, a entrevista foi sobre algoritmos. E havia dois entrevistadores. Um é na verdade um entrevistador, e o segundo é um jovem Padawan (entrevistador sombra). Era necessário criar uma estrutura de dados com certas propriedades. Primeiro, como sempre, discutimos o problema. Fiz perguntas diferentes, o entrevistador respondeu. Depois de algum tempo, eles me pediram para escrever vários métodos da estrutura inventada no quadro. Desta vez, mais ou menos sucesso, embora com alguns erros menores, que corrigi com a ajuda do entrevistador.Entrevista número três
Desta vez, o System Design, que de repente também se tornou o Android. Era necessário desenvolver um aplicativo com certa funcionalidade. Discutimos os requisitos para o aplicativo, para o servidor, para o protocolo de comunicação. Em seguida, comecei a descrever quais componentes ou bibliotecas eu usaria ao criar o aplicativo. E então, à menção de Job Scheduler, houve algum tipo de mordaça. O ponto principal é que eu nunca o usei na prática, pois no momento do seu lançamento, mudei para o suporte a aplicativos, onde não havia tarefas para sua aplicação. Ao desenvolver os subseqüentes, era o mesmo. Ou seja, em teoria, eu sei o que é isso, quando e como é usado, mas não há experiência em aplicação. E o entrevistador não parecia gostar muito. Então eles me pediram para escrever um código. Sim, ao desenvolver um aplicativo, você precisa escrever imediatamente um código. Mais uma vez, código Android no quadro.Acabou assustador novamente.Almoço
Outro homem deveria vir, mas ele não veio. E o Google tem falhas. Como resultado, fui jantar com o entrevistador anterior, seu colega, e pouco depois o próximo entrevistador entrou. O jantar foi bastante decente. Novamente, como esse não é o escritório principal em Zurique, a sala de jantar parecia bastante comum, embora muito agradável.Entrevista número quatro
Finalmente, os algoritmos em forma pura. Resolvi o primeiro problema com muita rapidez e eficiência, apesar de ter perdido um caso limite, mas, no prompt do entrevistador (ele deu esse mesmo caso limite), encontrei o problema e o resolvi. Claro que você tinha que escrever um código no quadro. Então, uma tarefa semelhante foi dada, mas mais difícil. Para ela, encontrei algumas soluções não ideais e quase encontrei a ideal, não foram suficientes 5 a 10 minutos para reprimir o pensamento. Bem, não tive tempo de escrever um código para isso.Entrevista número cinco
E, novamente, uma entrevista para Android. Eu me pergunto por que estudei algoritmos o ano todo.No começo, havia algumas perguntas simples. Em seguida, o entrevistador escreveu um código no quadro e pediu para encontrar problemas nele. Encontrado, explicado, corrigido. Discutido. E então algumas perguntas inesperadas começaram com o espírito de “o que o método U faz na classe X”, “o que o método U faz dentro”, “o que a classe Z faz”. Obviamente, respondi alguma coisa, mas depois disse que não havia encontrado isso no meu trabalho ultimamente e, naturalmente, não me lembro de quem, o que e como em detalhes. Depois disso, o entrevistador perguntou o que eu estava fazendo agora. E as perguntas foram sobre esse tópico. Aqui eu já respondi muito melhor.Após a última entrevista, eles me deram o passe, desejaram-lhes sorte e os mandaram para casa. Ele andou um pouco pela cidade, jantou e foi para o hotel, onde adormeceu, uma vez que o vôo era novamente no início da manhã. No dia seguinte, cheguei em segurança a Chipre. Escrevi um feedback da entrevista a pedido do recrutador e preenchi um formulário de reembolso em um serviço especial. De todas as despesas, o Google paga diretamente apenas ingressos. Hotel, alimentação e viagem são pagos pelo candidato. Depois, preenchemos o formulário, aplicamos os cheques e enviamos para um escritório especial. Eles processam e rapidamente transferem dinheiro para a conta.Demorou uma semana e meia para processar os resultados da entrevista. Depois disso, fui informado de que estava "um pouco abaixo da barra". Quero dizer, não aguentei nem um pouco. Mais especificamente, duas entrevistas foram bem, duas nem um pouco, e o System Design não é muito. Agora, se pelo menos três corressem bem, poderíamos lutar, e assim sem chance. Eles sugeriram que eles chegassem um ano depois.No começo, é claro, fiquei chateado, pois havia sido feito muito esforço na preparação e, na época da entrevista, eu já estava madura com o pensamento de deixar Chipre. Um dispositivo do Google e se mudar para a Suíça parecia uma ótima opção.Conclusão
E aqui chegamos à parte final do artigo. Sim, não participei de uma entrevista no Google duas vezes. Isso é triste
Provavelmente seria interessante trabalhar lá. Mas, você pode olhar para o assunto do outro lado.- Durante um ano e meio, aprendi muitas coisas relacionadas ao desenvolvimento de software.
- Tive muito prazer em participar de competições de programação.
- Passei alguns dias em Zurique. Quando mais eu vou chegar lá?
- Eu tive uma experiência interessante de entrevista em uma das maiores empresas de TI do mundo.
Assim, tudo o que aconteceu no último ano e meio pode ser simplesmente considerado treinamento, ou treinamento. E os resultados desse treinamento se fizeram sentir. Minha idéia de deixar Chipre estava madura (por algumas razões familiares), passei com sucesso por várias entrevistas com outra empresa bem conhecida e depois de 8 meses me mudei. Mas esta é uma história completamente diferente.
No entanto, acho que ainda devo agradecer ao Google por esses anos e meio em que trabalhei comigo mesmo e por dois dias interessantes em Zurique.O que posso dizer no final. Se você trabalha com TI, prepare-se para uma entrevista no Google (Amazon, Microsoft, Apple etc.). Talvez um dia você vá lá. Mesmo que você não queira, acredite em mim, essa preparação não o deixará pior. Nesse momento, quando você perceber que pode (mesmo que apenas em um conjunto bem-sucedido de circunstâncias) passar por uma entrevista com uma dessas empresas, muito mais estradas se abrirão diante de você do que antes de iniciar sua preparação. E tudo o que você precisa ao longo do caminho é propósito, perseverança e tempo. Desejo-lhe sucesso :)