Google da dicas para voce entrar na empresa. |
O Google é a empresa mais cobiçada por profissionais em diversas áreas, com salários, benefícios e um clima organizacional de fazer inveja.
Mas, tanta regalia não vem de graça. A concorrência para conseguir uma
vaga na companhia é muito grande, chegando a haver mais de 2 milhões de
currículos para apenas 4 mil contratações.
Com tanta disputa, fica difícil saber exatamente como impressionar os
recrutadores e conquistar uma oportunidade de carreira na área de
tecnologia. Um engenheiro de software sênior, por exemplo, pode ganhar
mais de 250 mil dólares por ano, e tem um dos cargos mais cobiçados na
empresa.
Para ajudar estudantes ou profissionais já formados que sonham em se
tornar bons engenheiros de software e, quem sabe, fazer parte da equipe
do Google, a equipe do Google for Education divulgou um guia com várias competências recomendadas para dominar esta profissão.
O guia oferece sugestões de cursos online, sites de pesquisas,
materiais de consulta e dicas sobre diversos assuntos técnicos. E apesar
da página estar em inglês, alguns dos cursos também estão disponíveis
em português. “Os recursos online oferecidos neste guia não foram feitos
para substituir as disciplinas em sua universidade. Eles podem ajudar a
complementar seu aprendizado ou ajudar a ter uma introdução sobre cada
assunto”, diz a empresa.
Confira abaixo as competências que o Google gostaria que seus talentos de tecnologia dominassem.
Recomendações para aprendizado acadêmico:
1. Curso de introdução na Ciência da Computação
Introdução para o curso de Ciência da Computação e conceitos sobre programação para a web.
2. Programar em pelo menos uma linguagem orientada a objetos, como C++, Java ou Python
Instruções para iniciantes: Coursera - Learn to Program: The Fundamentals, MIT Intro to Programming in Java, Google's Python Class, Coursera - Introduction to Python, Python Open Source E-Book
Instruções para nível intermediário: Udacity's Design of Computer Programs, Coursera - Learn to Program: Crafting Quality Code, Coursera - Programming Languages, Brown University - Introduction to Programming Languages
3. Aprenda outras linguagens de programação
Adicione outras linguagens de programação e marcação em seu repertório,
como Java Script, CSS, HTML, Ruby, PHP, C, Perl, Shell, Lisp. Scheme.
Onde pesquisar: w3school.com - HTML Tutorial, Codecademy.com
4. Teste seu código
Aprenda a identificar erros, crie testes e hackeie seu software.
Onde pesquisar: Udacity - Software Testing Methods, Udacity - Software Debugging
5. Desenvolva raciocínio lógico e conhecimentos em matemática
Cursos: MIT Mathematics for Computer Science,
Coursera - Introduction to Logic, Coursera - Linear and Discrete
Optimization, Coursera - Probabilistic Graphical Models, Coursera - Game
Theory
6. Desenvolva uma forte compreensão em algoritmos e estruturas de dados
Aprenda sobre os tipos fundamentais de dados, ordenação de algoritmos e estruturas de dados, Grande-O.
Cursos: MIT Introduction to Algorithms, Coursera Introduction to Algorithms Part 1 & Part 2, List of Algorithms, List of Data Structures, Book: The Algorithm Design Manual
7. Desenvolva conhecimento aprofundado em sistemas operacionais
8. Aprenda sobre inteligência artificial
Cursos: Stanford University - Introduction to Robotics, Natural Language Processing, Machine Learning
9. Aprenda a desenvolver compiladores
Cursos: Coursera - Compilers
10. Aprenda Criptografia
11. Aprenda Programação Paralela
Recomendações não acadêmicas:
1. Trabalhe em projetos que vão além da sala de aula
Crie e mantenha um site, construa seu próprio servidor ou até mesmo um robô.
Onde pesquisar: Apache List of Projects, Google Summer of Code, Google Developer Group
2. Trabalhe em uma pequena parte de um grande sistema (codebase), leia e entenda o código, rastreie documentações e faça debugs.
O Github é uma boa forma de ler o código de outras pessoas ou de contribuir em projetos.
3. Trabalhe em um projeto com outros programadores
Isso faz com que você aprimore sua habilidade de trabalhar em equipe e ainda aprender com outras pessoas.
4. Pratique seu conhecimento em algoritmos e habilidades de programação
Pratique seu conhecimento em algoritmos por meio de competições como o
CodeJam ou o Concurso Internacional de Programação da ACM.
Sugestão: no Brasil, várias instituições também costumam realizar
hackathons para premiar os projetos mais inovadores de soluções. Nesse
ano, por exemplo, a PUC-Rio e o Itaú Unibanco já organizaram as suas.
5. Torne-se em um monitor
Ajudar a ensinar outros estudantes faz com que você aprimore seu conhecimento no assunto.
6. Faça um estágio na área de Engenharia de Software
Participe de processos seletivos para estagiar na área e tome cuidado
para não perder os prazos de inscrição para as oportunidades. Saiba
quais vagas estão em aberto na companhia nesta página.