Como é trabalhar como Software Developer, por Willian Molinari, o PotHix

William Oliveira
Training Center
Published in
6 min readApr 12, 2017

Esse post é parte de uma série de entrevistas para o Training Center sobre o que um profissional pode dizer sobre sua área de atuação visando mostrar para outras pessoas como é trabalhar no que fazem, esclarecendo para algumas pessoas se elas se dariam bem trabalhando na área ou mesmo só para mostrar para outras pessoas como é trabalhar com isso.

Essa entrevista foi enviada para o PotHix, desenvolvedor de software com muita habilidade em Ruby, Shell, Linux, JavaScript, etc, etc, etc, muito ativo nessa comunidade e no meio do Open Source e hackudo pra caramba.

Introdução

Eu sou o Willian Molinari, mais conhecido como PotHix na comunidade de software. Atualmente sou Líder técnico na Locaweb, trabalhando com o time de ferramentas internas. Trabalho com software há mais de 10 anos e já trabalhei profissionalmente com várias linguagens, entre elas: Ruby, Go, Python, ASP, PHP, Javascript e um pouquinho de C.

Como você conheceu a área de desenvolvimento de software?

Eu descobri que curtia computadores por volta da oitava série quando um amigo me mostrou as revistas de hacker que ele tinha comprado. Nessa época eu nem tinha computador, o que eu fazia era ir na casa dele para acompanhar. Com essas revistas de Hacker eu conheci Linux e programação. Comecei a trabalhar com algo completamente não relacionado com computadores, com isso eu consegui comprar meu primeiro computador e aos poucos fui me adaptando de jogador de videogames no computador para desenvolvedor.

Tive que aprender tudo sozinho e comecei a faculdade depois de já estar trabalhando como desenvolvedor por mais de 1 ano. Aprender porque Javascript não se comunicava com a linguagem server-side (básico de client-server) demorou um pouco, essa é a parte que ter um mentor ajuda.

Por que você escolheu ser desenvolvedor de software?

Depois de descobrir que eu curtia computadores eu comecei a procurar várias áreas. Fiz um curso de montagem e configuração de micro e vi que não era a minha praia. Depois de pegar alguns livros de C básico eu descobri que gostava de resolver problemas com código. Minha ideia era trabalhar com desenvolvimento para desktop, mas a primeira oportunidade com desenvolvimento que surgiu foi para trabalhar com web, que aos poucos eu fui gostando.

Tecnologia é uma coisa que faz parte da minha vida, dificilmente vou conseguir tirar minhas mãos do código de alguma forma. Código é uma das poucas coisas (escrever é outra) que consegue me deixar no estado de flow.

Como foi o seu primeiro trampo?

Meu primeiro trampo foi como instalador de portas de madeira em obras, conta? Depois disso fui auxiliar administrativo do setor de importação e exportação de uma multinacional, mas acho que isso também não importa.-Hehe

Meu primeiro trabalho com desenvolvimento de software foi em uma empresa familiar que fazia brindes personalizados. Eles tinham um sistema em ASP que precisava ser mantido. Fui conversar com o dono da empresa e disse que não conhecia nada de ASP, estava começando a estudar a linguagem agora. Ele me ofereceu o sistema da empresa para cuidar e eu aceitei.

Eu era meio que o “menino da informática” por lá, além de programar eu ainda fazia a manutenção dos computadores da empresa (uns 10 computadores mais ou menos). Mas a chance de colocar as mãos em um sistema funcionando me trouxe muito conhecimento na área que eu queria. Foi lá que eu fiz uma lib de Ajax manualmente, na época que isso não era tão bizarro. Naqueles tempos eu fazia deploy diretamente do editor de texto, direto em produção. Tempos selvagens… Que bom que a gente cresce.

O maior desafio era aprender as coisas sozinho, eu era o único desenvolvedor da empresa e tinha que me virar para fazer as coisas funcionarem. Eu desenvolvia tanto o site da empresa quanto o sistema interno que controlava os pedidos. Foi uma boa experiência, e consegui estudar as coisas que eu gostava. Estudei Ruby por conta própria e consegui sair de lá. O que eu queria mesmo era trabalhar com uma linguagem legal (Ruby) e usar o sistema operacional que eu gosto (Linux), e assim aconteceu.

Quais são as skills de quem trabalha nesta área?

Um desenvolvedor de software deve dominar pelo menos uma linguagem de programação. Eu sempre chamo isso de “ser fluente em alguma linguagem”. Sabe quando você tem algo para explicar mas não sabe falar bem o idioma e se atrapalha todo? Isso não pode acontecer com programação também. Escolha uma linguagem que tem um mercado que te interessa e seja fluente nela.

Eu escolhi Ruby como minha linguagem principal, mas eu sei que ela não é a melhor ferramenta para resolver todos os tipos de problemas. Atualmente quando vou fazer CLIs eu prefiro usar Golang, por exemplo. Como trabalho com web, saber Javascript é imprescindível.

Enfim, escolha uma linguagem para ser sua referência e aprenda o básico de outras para quando seu problema precisar de algo mais. Se curtir desafios, aprenda uma linguagem para cada paradigma também: funcional, imperativo, orientado a objeto e etc.

Quais são os principais desafios da área?

O cenário de desenvolvimento de software está constantemente mudando. Um desenvolvedor muito experiente se vê como um desenvolvedor novato quando começa a aprender uma nova linguagem com um paradigma diferente, por exemplo. Sempre há novas ferramentas aparecendo e você vê elas por aí ao procurar emprego. A cada vaga é uma sopa de letrinhas em forma de frameworks, alguns deles você só ouviu falar. A indústria ta mudando aos poucos, valorizando mais os profissionais que sabem aprender rápido do que os que conhecem a letrinhas da sopa. Os desenvolvedores precisam ficar se atualizando constantemente e conhecendo o que está rolando no mercado para não ficar desatualizado.

Quais são as principais recompensas da área?

Atualmente trabalho 80% do meu tempo remotamente. O trabalho do desenvolvedor de software não exige necessariamente um trabalho presencial e hoje temos ferramentas para encurtar essa distância, caso necessário. Trabalhar remotamente é uma grande recompensa na minha opinião. Eu trabalhei por muitos anos presencialmente e gastava no mínimo 1h40 diariamente para me deslocar até a empresa. Atualmente eu uso esse tempo para descansar, estudar ou aproveitar minha família.

O salário geralmente é bom e o mercado está bem aquecido, com muitas empresas buscando pessoas boas para atuarem em seus produtos. Com algum tempo de estudo e algum conhecimento prático você consegue um emprego facilmente até mesmo nos tempos de crise atuais.

Sempre gostei de comunidades de software e já participei de dezenas de eventos / encontros de comunidades por aí. Em 2008 eu ajudei a criar o GURU-SP, que venho ajudando a organizar até hoje. Participar de comunidades é uma coisa que eu recomendo para todos os desenvolvedores de software. Não posso falar sobre todas as comunidades, mas pelo menos o Guru-SP eu sei que é um lugar fantástico para conhecer pessoas interessantes e aprender coisas novas.

Você pensa em mudar de área?

Não pretendo. Pretendo continuar desenvolvendo software até quando eu ainda conseguir. As linguagens provavelmente vão mudar, o foco pode mudar um pouco (devops, full stack, etc) mas dificilmente sairei dessa área.

Por que alguém deveria se tornar um(a) desenvolvedor de software?

Se você curte tecnologias e curte resolver problemas, essa é uma ótima área. Você vai ter que se dedicar bastante por conta própria, não é como em outras áreas que a faculdade “te capacita” para trabalhar e você sai um “profissional formado”. Desenvolvedores de software saem da faculdade (quando fazem) sabendo um pouco de cada coisa na área de pesquisa. Dependendo do tipo de curso, ele pode sair sabendo um pouquinho sobre o mercado. Cabe a você colocar tudo isso em prática por sua conta e mostrar para as empresas que você sabe desenvolver coisas por si só.

Este foi um post sobre como é trabalhar como Software Developer, porém temos também sobre como é trabalhar como Consultor de TI, por André Baltieri, Coordenador de Sistemas, por Jhonathan Souza Soares, Quality Analyst Engineer, por Úrsula Junque, Full-Stack Developer, por Ana Eliza, Front-End Developer, por Fernando Daciuk e muitos outros. Confere lá!

Siga o Training Center no Twitter para se manter atualizado(a) sobre nossas novidades: trainingcentr

Entre no nosso Slack para participar das decisões desse projeto e também para ver gifs engraçados!

Conheça nossas iniciativas.

--

--

William Oliveira
Training Center

Engenheiro de software frontend, escritor do livro O Universo da Programação (http://bit.ly/universo-da-programacao), periférico e bissexual