Esse post é uma tradução do original “10000 things all ICS students should do before graduating”
Resolvi traduzir esse post pois achei a ideia do autor muito boa.
Hoje, muitos alunos de análise de sistemas, ciência da computação, engenharia da computação, e outros cursos da área, estão sendo formados com base em tecnologias antigas e ultrapassadas…
Por exemplo, creio que 80% de uma turma de um último período em analise de sistemas, não vai saber que a linguagem Ruby existe, ou muito menos a definição de TDD (Coisas que são utilizados hoje em dia em empresas grandes como a Globo.com).
Digo isso pois já entrevistei muitos candidatos para estágio, e o nível do pessoal está ainda bem no básico. Mesmo sabendo que para estagiar, você não precisa “saber nada”, existe algumas coisas que podem te ajudar a “se classificar melhor” numa seleção técnica.
Então abaixo segue a lista na integra retirada do blog mencionado acima:
0000 – Registrar seu próprio domínio
0001 – Instalar o Apache web server e configura-lo de uma forma não tão simples (Por exemplo, múltiplos sites rodando no mesmo apache)
0010 – Instale o WordPress e mantenha seu próprio Blog. Escreva bem os seus posts e regularmente. Uma boa escrita é uma habilidade fundamental para dominar esta profissão.
0011 – Rode seu próprio site na sua casa ou numa empresa de hospedagem.
0100 – Crie pelo menos uma aplicação web LAMP (Linux, Apache, Mysql, PHP). Seria legal se escrevesse duas. Uma em PHP e outra em Python…. Ou em Ruby (LAMR ?? haha)
0101 – Tenha seu próprio servidor (físico ou virtual) na nuvem
0110 – Instale o VMWare/Virtualbox ou equivalente para poder rodar mais de um sistema operacional em seu laptop
0111 – Configure seu roteador da sua cada para servir um site ou alguns arquivos do computador da sua casa para os seus amigos acessarem…
1000 – Use um sniffer de pacote (Wireshark) para aprender e ver as requisições de rede que são feitas entre seu computador e um jogo on-line favorito.
1001 – Faça contribuições a projetos open-source.
1010 – Desenvolva um aplicativo que use pelo menos umas das APIs Web mais populares como a do Facebook Connect ou do Google.
1011 – Habilite o Google Adsense em seu blog ou site, e ganhe um pouco de dinheiro baseado no tráfego virtual.
1100 – Compilar um projeto de código aberto complicado a partir do zero. Tente o FFMpeg por exemplo !
1101 – Ler obras de literatura e, além de desfrutar a leitura, preste muita atenção à forma como o autor conta a história e faz uso das palavras. Os programas devem ser tão cuidadosamente escritos como aquelas obras de arte!
1110 – Obter-se envolvido em um projeto de software onde os requisitos mudam no meio – cerca de 0,01% dos projetos pessoais e cerca de 99,99% dos projetos do mundo real, assim que encontrar um deste último tipo, concluir o projeto com a paciência e ter capacidade de aceitar críticas de forma construtiva.
1111 – Escrever um aplicativo usando Map-Reduce. Executá-lo no Google app-engine ou na Amazon EC2.
Eu particularmente teria adicionado na lista mais alguns pontos:
– Colocar todo código desenvolvido em algum “controle de versão” (Exemplo: Git)
– Estudar sobre testes automatizados e desenvolver utilizando a técnica TDD
– Considerando que a maioria das empresas utilizam um linux em seus servidores de produção, estudar conceitos básicos de unix e saber dar um ssh de um servidor para outro, por exemplo.
Espero que as dicas sirvam para alguns estudantes 🙂 Não deixe de ler o post original na integra: http://tagide.com/blog/2011/06/things-ics-students-should-do-before-graduating/