by Klaus Wuestefeld
Seja realmente bom em alguma coisa. Não fique só choramingando ou querendo progredir às custas dos outros. Não pense q pq vc sentou 4 anos numa faculdade ouvindo um professor falar sobre software q vc sabe alguma coisa. Jogador de futebol não aprende a jogar bola tendo aula. Ele pratica. Instrumentistas geniais nao aprendem a tocar tendo aula. Eles praticam. Pratique. Chegue em casa depois do trabalho e da aula e pratique. No final de semana, pratique.
- Crie seu próprio virus, seu proprio jogo, seu proprio SO, seu proprio gerenciador de janelas, seu proprio webserver, sua propria VM, qq coisa. Varias coisas.
Nao precisa ser só programacao. Pode ser networking, vendas, etc. Só precisa ser bom mesmo. Tenha paixão pela coisa.
As melhores praticas do mercado sao polinizadas primeiro nos projetos de software livre. Aprenda com eles.
Discípulo, Viajante, Mestre: Primeiro seja um discipulo, tenha mestres locais, aprenda alguma coisa com alguem realmente bom, qq estilo. Depois viaje, encontre outros mestres e aprenda o estilo deles. Por fim, tenha o seu estilo, tenha discípulos, seja um mestre.
Vou fazer o curso da Mary Poppendieck em SP semana q vem e qdo tiver o curso de Scrumban do Alisson e do Rodrigo quero fazer tbem.
"Torne-se excelente" tbem pode ser chamado de "Melhoria Continua" ou "Learning".
Desenvolvimento de software é a mesma coisa há 60 anos: modelo imperativo. Há 30 anos: orientação a objetos. Bancos de dados relacionais: 30 anos. ("Web", por exemplo, não é uma tecnologia ou um paradigma. É meramente um conjunto de restrições sobre como desenvolver e distribuir seu software).
- Não corra atras da ultima buzzword do mercado. Busque a essência, os fundamentos.
Busque na wikipédia e grokke: determinismo, complexidade de algoritmos "O()", problema de parada de turing. Pronto, pode largar a faculdade. Falando sério.
Trabalhe com software livre. Não dê ouvidos a grandes empresas, grandes instituições ou grandes nomes só pq são grandes.
Vc acha q vai aprender mais, ter mais networking e mais chance de alocação no mercado trabalhando em par comigo no Sneer por um ano, 8h por semana, ou passando 4 anos na faculdade, 20h por semana, pagando sei la qto por mes?
Vc acha q vai aprender mais trabalhando em par com o Bamboo 6 meses na linguagem boo e na engine do Unity ou fazendo um ano de pós em "a buzzword da moda"?
- "Nao seja deslumbrado" tbem é conhecido como "Coolness".
Com a demanda q temos hoje no mercado, se vc é desenvolvedor de software e n consegue negociar um contrato com uma empresa onde vc é pago por hora e pode trabalhar qtas horas quiser com um minimo de meio periodo, vc precisa rever a sua vida.
- É melhor ter dois empregos de meio-periodo q um de periodo integral, pq vc pode largar um deles a qq momento.
Vc nunca vai conseguir nada melhor se nao tiver tempo, se nao tiver disponibilidade pra pegar algo melhor qdo aparecer.
Vc sustenta seus pais e 7 irmaos? Nao. Entao para de ser ganancioso e medroso no curto prazo, para de pagar facu, mestrado, pós, MBA, sei-la-o-q e vai aprender e empreender.
Trabalhe remoto. Não é o mais fácil, mas é perfeitamente possível.
Não fique reclamando q está trabalhando demais. Aumente seu preço e trabalhe menos.
Participe de dojos, de congressos, de projetos de software livre. Tenha amigos, colegas, conhecidos. Seja conhecido. Nao faça ruído em seis projetos e doze fóruns. Ajude de verdade em um ou dois projetos de cada vez. Ao longo do tempo, vc terá ajudado em varios projetos, trabalhado em varias empresas.
Ajude seus amigos sem cobrar (a "camaradagem"). Dê palestras gratuitas. Cursos gratuitos. Participe de projetos de software livre.
Pare as vezes uma tarde pra receber um amigo seu e explicar seu projeto. Vá visitar seus amigos nos projetos deles. Viaje com algum amigo seu pra visitar um cliente dele, só pra conversar e fazer companhia.
Vc tem um espaço onde dá cursos? É uma Aspercom, Caelum da vida? Chama os brothers p dar curso. Porra, bola um modelo em q as pessoas podem se inscrever para cursos variados, pagando um sinal, e mantém tipo uma agenda pre-combinada: "Será numa terça e quinta a noite, avisadas com duas semanas de antecedencia". Se rolar, beleza, se depois de meses nao der quorum, devolve o sinal. Pode ser curso de Prevayler, de Kanban, de Scrum, de Lean, de Comp Soberana, de Restfulie, de Cucumber, de Rails, de Teste Automatizado Mega-Avançado, qq coisa.
Chame amigos seus pra dar curso em dupla com vc. Divida clientes. Divida projetos, mesmo q nao precise de ajuda.
Dizia o pai de um brother meu de infância: "Tudo q custa dinheiro é barato."
Trabalhe em coisas q tem custo administrativo/burocratico/manutencao zero. Por menos ganho q tragam, depois de prontas, estarao tendo uma relação custo/beneficio infinitamente vantajosa.
Faça coisas massa. Participe de projetos de software livre. Dê palestras gratuitas. Promova eventos (dojos, debates, grupos de usuarios, etc).
Meta a cara. Arrisque empreender. Arrisque inovar. O que você tem a perder? No máximo um emprego, mas isso pode ser revertido facilmente em um mercado aquecido como o atual. O pior que pode acontecer é não dar certo. Mesmo assim você terá aprendido muito mais do que batendo cartão.
Saia da zona de conforto. Se o seu trabalho estiver fácil e sob controle, isso significa que ele não está mais agregando para a sua evolução técnica e pessoal.
Não desperdice a chance de trocar de função se a nova oportunidade for mais desafiadora. Isso fará você crescer tecnicamente e o preparará para desafios maiores ainda. Conhecer pessoas novas é tão importante quanto manter-se em contato com código.
Não se detenha por insegurança ou pela sensação de despreparo. Como você acha que vai ganhar experiência em alguma coisa se sempre adiá-la?