Carreira Dev

21 jul, 2014

Como se destacar em programação e banco de dados

Publicidade

 CapaPost

Olá, pessoal. A cada final de semestre milhares de recém-formados são despejados no mercado de trabalho quando seus cursos são finalizadas. Isso quer dizer que a concorrência para uma vaga na área de programação ou banco de dados é grande e, mesmo assim, ainda há um enorme déficit de profissionais destas áreas.

Como ultimamente ando pensando muito sobre programação, devido ao meu curso para iniciantes, resolvi escrever este artigo com algumas recomendações de como se destacar da maioria dos profissionais que terminam seus estudos e estão caminhando para o mercado de trabalho. Enquanto estas dicas não necessariamente vão acender a luz verde em um processo de contratação, elas têm o potencial de ao menos fazer com que a pessoa que olha o currículo note algo diferente e que se destaca dos demais candidatos.

Faça mais do que o mínimo e do que a média das pessoas faz

AcimaMedia

Quando estamos aprendendo uma tecnologia dentro de uma sala de aula, geralmente vamos ver apenas o básico que ela proporciona devido a vários fatores, como limitação de recursos, falta de tempo ou mesmo dificuldade de aplicação imediata. Isso contribui para que muitos aprendizes adquiram o péssimo hábito de fazer apenas o básico ou mesmo ficar na média dos demais.

Alguém que deseja se destacar na área técnica precisa primeiro identificar o que é o mínimo e o esforço médio que a maioria das pessoas fazem. Uma vez que isso esteja claro, é preciso ter muita motivação, força de vontade e trabalho duro para se destacar, fazer muito acima do que a média pessoas fazem.

O professor mandou ler os capítulos 1 a 2 do livro para a próxima aula? Leia o 1, 2,3 e 4! No trabalho em grupo você deve escolher um banco de dados e montar o modelo de dados de um sistema OLTP? Faça este modelo em diferentes bancos de dados e apresente também como ele poderia ser criado para um sistema OLAP. Se o exercício pedir para criar um diagrama de classes com, no mínimo 5 entidades, aproveite a oportunidade e faça um diagrama com 10 classes.

Aprendeu um novo algoritmo clássico de ordenação? Implemente-o nas linguagens clássicas (Java, C#, C/C++) e também crie uma implementação em linguagens que pouca gente conhece como F#, Go, LUA ou outras. Nas reuniões de grupo sempre chegue mais cedo e aproveite para revisar o que vai ser discutido. Se marcaram às 8h, segue às 07h30 e deixe bem claro para todos que você leva muito à sério este tipo de atividade. Todos os membros da equipe estão confidentes que o plano vai funcionar logo de cara? Tenha um plano B e C pronto para ser implementado mesmo que ninguém saiba disso.

Mostre iniciativa

Iniciativa

Em muitas situações a pessoa que mostra uma iniciativa acaba sendo recompensada, seja de uma forma ou de outra. Quem está começando na área e é convidado a participar de projetos sempre deve mostrar a iniciativa para resolver problemas, otimizar soluções, reduzir custos, tornar algo mais fácil, acelerar processamento e realizar outras atividades que vão além do que é comandado por quem está à frente do projeto.

Já escrevi sobre isso antes, mas repito aqui: entrar em uma reunião mudo e sair calado é uma receita certa para que o profissional não seja notado. A propósito, sempre procure evitar participar de um projeto, reunião ou encontro de mãos vazias, ou seja, traga sempre alguma ideia, novidade, recurso ou algo que posso ser discutido.

Mesmo que as pessoas não apreciem isto ou que esta iniciativa logo seja descartada, a atitude de trazer algo que contribua não vai passar em branco e manda uma mensagem clara para todos os envolvidos: você gastou um tempo se preparando e não apareceu de mãos abanando para o encontro.

Invista na sua carreira

InvistaCarreira

As carreiras que envolvem programação e banco de dados estão em constante atualização, pois sempre há uma nova versão de software, modelo de desenvolvimento, patch, service pack, anúncio sobre o rumo da empresa ou outro tipo de notícia relevante para os profissionais da área.

Quando o profissional está saindo da faculdade e quer entrar no mercado de trabalho, sinaliza que ele ainda tem muito que aprender e que não vai parar de investir na sua carreira. Ele está sendo maduro e demonstrando que entende como a área funciona. Indicar que há interesse em algum curso, workshop, treinamento, livro ou outro tipo de forma de atualização é um ponto positivo que pode fazer a diferença em uma entrevista de emprego.

Atualmente é muito mais fácil encontrar pessoas que descrevem seus sonhos de consumo como itens materiais (novo carro, apartamento, celular, etc) ou em experiências (viagens, shows, cruzeiros) do que pessoas que investem em oportunidades para aprimoramento pessoal como cursos, intercâmbios e bolsas de estudo. Não há nada de errado em ter sonhos de consumo comuns, mas quando a pessoa passa mais tempo almejando conquistar algo que não têm relação direta com a carreira isso deixa claro qual é o tipo de perfil que ela representa.

Bata metas e quebre recordes

monster-university-monsters-university-33232617-1680-10501

Muitas oportunidades na área de desenvolvimento surgem para aquelas pessoas que acabaram se destacando em outras áreas e mostrando que são competentes. O caso clássico envolve os profissionais que trabalham com suporte, telemarketing e infra que foram muito competentes ao ponto de receberem convites para as áreas que realmente lhe interessam.

Quando se está começando no mercado de trabalho é comum passar por situações, ambientes, áreas e até problemas que as pessoas com mais senioridade não passariam. Apesar desta situação ser um pouco desmotivante, é preciso lembrar que tal cenário pode ser apenas um passo para alcançar algo melhor no futuro.

Independente da área ou contexto na qual o profissional começa, ele deve se lembrar de que sempre é possível se destacar alcançando (e ultrapassando) as metas e batendo os recordes existentes. Isso me lembra muito uma das cenas finais do filme Universidade Monstros SA. Sem muitos spoilers, em um determinado momento do filme os personagens não conseguem atingir o objetivo da maneira que eles planejaram inicialmente. Mas isso não fica assim, pois eles começam por baixo galgando diversos postos até finalmente chegarem na área que eles queriam. E como eles fazem isso? Simplesmente se dedicando, batendo metas e recordes em cada uma das áreas que eles foram colocados, mesmo quando o que eles têm que fazer é muito distante do objetivo final deles.

Não tenha medo de arriscar

Risco

Profissionais iniciantes, e até alguns experimentes, muitas vezes apresentam certo receio e até mesmo medo de se arriscar para modificar e realizar tarefas de manutenção em código fonte legado. Este comportamento é justificado pela complexidade, precariedade ou falta de motivação de se trabalhar com uma base de código antiga, possivelmente ultrapassada e que tenha características que não atraem quem está envolvido na programação.

Um exemplo são sistemas antigos que ninguém mais altera com medo de fazer parar de funcionar. Na mente dos profissionais, ser alocado para realizar manutenção nestes sistemas é encarado com uma armadilha, pois, se por algum motivo, o profissional manipular o código e o sistema parar de funcionar isso certamente será motivo para algum tipo de punição. Por outro lado, esta situação é uma excelente oportunidade para que o profissional se destaque.

A solução na maioria dos casos é confiar que este sistema jurássico funciona e cercar ele de serviços que podem ser testados. E quando a empresa não acredita em testes e considerar que a linha que acaba de ser escrita já está legada? Esta afirmação não é sempre verdade, pois caso seja um sistema pequeno, onde é a alteração é fácil (um CRUD simples, por exemplo), talvez os testes não sejam tão importantes.

Se por um lado receber a tarefa de trabalhar com este tipo de sistema jurássico e que ninguém mais quer manipular gera medo e receio, por outro lado esta tarefa pode ser uma ótima oportunidade para que o profissional realize um excelente trabalho e se destaque na carreira. Certamente o profissional que conseguir enxergar uma oportunidade neste tipo de situação vai conseguir se aprimorar tecnicamente e também demonstrar para seus superiores que ele não tem receio de encarar situações que, além de lhe forçarem sair de sua zona de conforto, são tecnicamente desafiadoras.

Tomar a atitude de assumir a responsabilidade pela manutenção de um sistema legado que não atrai programadores requer muita coragem e tempo de treinamento para realizar alterações, mesmo que sejam superficiais. Em compensação, o profissional pode sair valorizado, tecnicamente mais experiente e também melhorar sua autoestima e se destacar dos demais.

Mostre que você consegue se virar bem nas adversidades tendo imaginação e soluções criativas

Criatividade2

A criatividade é uma das habilidades que geralmente é associada com o pessoal de design, marketing, comunicação ou área de produção. Contudo, ela é uma habilidade extremamente importante por quem trabalha na área de desenvolvimento e que envolve programação e banco de dados.

Muitas vezes o famoso “pulo do gato” ou “truque” tem muito menos a ver com inspiração ou com momento eureca que somente gênios são capazes de produzir. Isso quer dizer que para se destacar sendo criativo existem várias atitudes e comportamentos ao longo da carreira que não podem ser resumidas ao simples fato de acordar do meio da noite e ter uma ideia genial. Criatividade e imaginação também devem ser cultivadas através de vários estímulos e referências e o profissional que dominar como exercitar seus pensamentos para agir de forma criativa certamente estará a um passo à frente dos demais.

 Participe de concursos e competições

Hackathon

Atualmente a área de programação possui diversas atividades que ajudam muito um profissional a ter um item que se destaca no seu currículo. Estou falando sobre concursos, competições, hackathons e outros eventos que de alguma forma ou de outra premiam os seus melhores colocados.

Tais eventos geralmente são presenciais e podem despertar o interesse de um entrevistador. Participar deste tipo de evento mostra que o profissional está interessado em resolver problemas e também quer testar suas habilidades de forma competitiva. Estas qualidades são algo que podem tornam o profissional mais atrativo para empresas, pois mostra que ele está fazendo algo além do que a maioria faz em seu tempo livre.

 Faça o seu networking em eventos

O estereótipo do profissional que trabalha com desenvolvimento muitas vezes é retratado como aquela pessoa antissocial, que não se comunica, trabalha melhor sozinho e não se preocupa com nada que está além da linha de código. Este rótulo já deixou de ser verdade há muito tempo e, inclusive, atualmente ele não tem mais a conotação de profissionalismo necessário para o mercado de trabalho.

Isso quer dizer que quem deseja se destacar e prosperar na área precisa ir a eventos, conversar com pessoas, anotar contatos, mostrar interesse pelo que o outros fazem fechar parcerias, montar projetos em conjunto com outras pessoas e, o mais importante, ser visto.

Uma ótima oportunidade para estas realizar ações é participar de conferência técnicas e não técnicas (voltadas para CEO) da área de forma ativa, ou seja, conversando com a maior quantidade de pessoas possíveis e aumentando a rede de contatos (o famoso networking). Certamente tal participação reflete na carreira do profissional e é uma excelente oportunidade para colocar em prática as habilidades de marketing pessoal que fazem com que as pessoas saibam quem é quem, que está aonde e quem é capaz do quê.

 Esteja engajado em algum projeto pessoal ou colaborativo

 Collaborate

Independentemente da escolha do profissional, saber trabalhar com desenvolvimento requer algum grau de experiência, tanto na parte teórica quanto prática. E é aí que está o problema: a falta da parte prática, pois a parte teórica é relativamente fácil de ser obtida através de estudo, cursos, faculdade etc.

Mas como conseguir experiência com desenvolvimento e se destacar se todas as entrevistas de emprego pedem essa tal experiência? Uma ótima forma de se ganhar experiência em programação, e por tabela com banco de dados, é a participação de projetos de software livre. Sim, esses projetos são abertos à comunidade e sempre estão precisando de colaboradores.

Muitos projetos de software livre precisam de colaboradores de todos os níveis, desde aquele programador avançado até quem está começando a aprender a utilizar o computador. O importante é compreender o espírito de colaboração e saber contribuir para o projeto com algo relevante. Com certeza quem coloca no seu currículo que participa ativamente em um projeto de código livre mostra um diferencial na hora da contratação, assim como quem tem certificação também se diferencia. Porém colaborar para um projeto de software livre, independentemente do nível do projeto ou do tipo de colaboração, mostra que o profissional sabe trabalhar em grupo, é proativo e está em sintonia com a comunidade.

É claro que existem diversas formas de contribuir para um projeto de código livre. O primeiro passo é conhecer o projeto, como funciona e qual é a sua finalidade. Em seguida, é preciso entrar em contato com os membros que participam do projeto, geralmente através da lista de discussão de e-mail, fórum, comunidades em redes sociais e até pelo Twitter. Este é um ponto chave: apresentar aos membros do projeto quem você é, como você quer contribuir, como está engajado.

A contribuição em si pode variar. Não sabe programar? Tudo bem, você pode montar uma documentação, ajudar na tradução ou mesmo sugerir melhorias ou reportar bugs. Normalmente o começo é assim, devagar. Porém, com o tempo, é possível assumir mais responsabilidades, desde que você entenda a visão dos membros mantenedores do projeto e se adapte à forma de trabalho deles. Novamente, o importante aqui é ter vontade de contribuir para ganhar experiência. Divergências sempre vão surgir, mas, pelo menos a princípio, é importante deixar claro até que ponto você pode contribuir no projeto e como você pretende realizar essa contribuição.