Olá, Web Developers!
Na semana passada o entrevistado foi o Felipe Moura.
Hoje trazemos pra vocês a terceira entrevista de uma série que publicaremos nas próximas semanas. E o entrevistado dessa vez é o João Batista Neto.
Curso JavaScript Básico
Conhecer o cursoFale um pouco sobre você (de onde é, onde mora, o que faz, onde trabalha atualmente, etc);
Bom, vamos lá: sou o João Batista Neto; moro em Franca; sou desenvolvedor de sotware e atualmente trabalho no iMasters.
Até meus 3~4 anos de idade, morei em São Paulo; depois disso fui mudando de cidade para cidade, até que finalmente chegasse em Franca.
Para relaxar do desenvolvimento, estudo gastronomia e também música, que são duas áreas complexas, que envolvem extrema dedicação e que me permitem desligar temporariamente do desenvolvimento. Sempre participei de feiras de ciências na escola - ganhei várias - e quando criança, me chamavam de Professor Pardal.
A vinda para Franca, em meados de 1994, foi para o início de um novo negócio do meu pai: uma rede de materiais para construção toda automatizada - o que era inédito para a época. Terminais burros espalhados pela loja, com cabos coaxiais que se olhasse de cara feia derrubava a rede toda, todos dando boot via disquete e um servidor parrudão, que na época era um 386, que era o único da frente de loja que tinha um HD.
A rede era uma NOVEL rodando DOS 7 e as máquinas administrativas, quando tinha, tinha um Windows 3.11 - o interessante é que naquela época as máquinas não eram Windows como hoje em dia; você tinha que iniciar o Windows via DOS. O sistema de automação comercial, feito em Clipper, acabou vindo a ser meu ponto de partida na área.
Quando e como você começou a se interessar pela área?
Houve uma vez, quando os desenvolvedores foram fazer uma atualização do sistema, uma migração de Clipper Summer 87 para o Clipper 5.2, que eles esqueceram uma caixa de disquetes com o fonte do sistema.
Foi lendo e estudando aquele código e o que ele fazia, que tive meu primeiro contato com programação e que acabei verdadeiramente me interessando por aquilo. Eu já achava aquele negócio de redes muito legal, mas escrever um código e vê-lo funcionando era fantástico.
Naquela época o acesso à informação não era tão simples como é hoje, que basta entrar site, fórum, grupo, etc, para se ter qualquer tipo de ajuda; naquela época as coisas eram bem mais complicadas. Então, naturalmente, até conseguir fazer algo útil, derrubei a rede do meu pai inúmeras vezes; se tinha algo em que eu havia realmente ficado bom, era em paralisar toda a loja porque eu havia derrubado a coisa toda.
Foi de tanto derrubar aquela rede que, já cansado, meu pai comprou um IBM Aptiva; um 486 DX4 de 100MHz. Foi nessa máquina e através de muitos livros, que vim a dominar aquela linguagem.
Como foi seu primeiro trabalho na área?
De 1994 até meados de 2000 passei quase que o tempo lendo e estudando. Eu já era fluente em algumas tecnologias, desenvolvia algumas coisas internas nas lojas do meu pai, mas era tudo, digamos, muito seguro e controlado.
Foi em 2000 que migrei para web e fui trabalhar numa agência; foi também quando tive meu primeiro contato com ECMAScript - na época com o ActionScript, já que naquela época tudo era feito com Flash. Cheguei a fazer parte do MUGB - Macromedia User Group Brazil -, e foi a partir daí que comecei a participar de comunidades.
Há pessoas que possuem medo ou vergonha de responder ou perguntar algo nas comunidades. Como você enxerga a sua participação na comunidade para o seu crescimento profissional?
Num cenário normal, onde a pessoa tem vergonha de perguntar e/ou responder, ela precisa compreender que aprendemos melhor quando procuramos ensinar. As comunidades são como organismos: uma coisa viva que se renova o tempo todo.
Sempre haverá alguém que sabe mais do que você e sempre haverá alguém que sabe menos do que você. Mas você não precisa ficar com vergonha da pessoa que sabe mais que você, porque essa pessoa já esteve exatamente na mesma posição onde você está hoje. É normal e esperado que evoluamos.
Assim, tentar responder nos faz pesquisar; pesquisar nos faz ler; ler nos faz compreender sobre o tema; a compreensão sobre o tema nos ajuda a comunicar melhor e nos ajuda a subir um degrau na escada do conhecimento.
Como comecei a participar de comunidades há tanto tempo, que acho difícil separar o Neto profissional do Neto de comunidades; acho que já são uma coisa só.
Curso Java - Fundamentos
Conhecer o cursoMas o ponto é que quanto mais estudo para tentar ajudar alguém numa comunidade, melhor é para mim profissionalmente; e o inverso também é verdadeiro: quanto mais estudo para resolver um problema no trabalho, melhor é para eu ajudar alguém numa comunidade.
No fim das contas, acho que participar de comunidades é fundamental na nessa área.
Quando estamos criando um código, é comum que a gente acabe escrevendo algo muito específico para aquela aplicação. Mas você desenvolve bibliotecas reutilizáveis para a comunidade.
Quando está planejando a aplicação, você já pensa nela em partes para que certos fragmentos possam ser reutilizados por outras aplicações?
Como é esse processo?
Acho que cada linha de código que escrevemos é um produto que precisa entregar um valor e que será consumido por alguém.
Assim, se eu preciso escrever uma integração com algo, eu observo a integração como um produto. Ver as coisas como produto facilita na hora de decidir sobre o que é uma biblioteca e o que não é; o que é parte e o que é todo; o que é reutilizável e o que é específico.
Se transportarmos o desenvolvimento de software para uma montadora de veículos, vamos ver um exemplo claro daquilo que precisamos: temos um motor, temos um chassis, temos a lataria, pneus, fios e componentes da parte elétrica, bancos, painel, etc; temos um monte de coisas que são implementadas separadamente, que juntas entregam um determinado valor, mas que também podem ser consumidas individualmente.
Para as pessoas que pensam em escrever sua própria biblioteca/framework, qual conselho você dá? Quais pontos levar em consideração na hora de pensar em criar sua própria solução ao invés de contribuir para um projeto open-source já existente? Como divulgar seu projeto para a comunidade?
Contribuir com projetos existentes é importante, mas às vezes a pessoa ainda não se sente segura o bastante para isso.
Levando em consideração que desenvolvemos software o tempo todo, acredito que encarar cada parte do software, como software também, nos ajuda a desenvolver bibliotecas reutilizáveis. E o bacana disso é que o desenvolvimento do software se torna menos caro, a manutenção se torna mais simples e, eventualmente, podemos compartilhar a biblioteca sem riscos de vazamentos de informações sensíveis.
E aqui há um aspecto interessante: alguns profissionais usam linkedin para manter seus currículos; o desenvolvedor deve usar o github.
Quando você publica determinado código open source, você está, além de ajudando a comunidade, populando seu currículo.
Quando um recrutador está a procura de um desenvolvedor, ele procura por coisas que esse desenvolvedor já fez. Quando ele encontra um código no github, ele já sabe exatamente o que esperar e sabe exatamente se esse desenvolvedor é adequado para determinada oportunidade que ele está oferecendo.
No fim das contas, open source é bom para a comunidade, que se torna mais rica com cada contribuição, mas especialmente bom para o profissional, que passa a ser visto também pelo mercado de trabalho.
Há muitos iniciantes que ficam preocupados em escolher qual tecnologia estudar primeiro, pois ficam com medo de focar em algo que seja descontinuado em pouco tempo, afetando suas oportunidades no mercado.
Nesses muitos anos de experiência você já deve ter ouvido muito “linguagem x vai morrer” e ela continua firme até hoje, ou que “tecnologia y é o futuro” e ela acaba sendo esquecida.
Qual a sua visão sobre isso e como escolher um foco de estudo sem medo de que seja uma má escolha?
Vejo linguagens e tecnologias como ferramentas; não tenho apego a elas; o que eu preciso é resolver determinado problema.
Somos profissionais extremamente especializados, numa área extremamente volátil. Só que precisamos ser especializados em resolver problemas, não em digitar códigos.
Na real, pouco me importa se tecnologia X vai morrer; se hoje ela me ajudou a entregar o valor que preciso, então ela foi extremamente importante para mim.
Mas essa é uma pergunta recorrente para quem está iniciando; então, quando ela surge, procuro filtrar um pouco e limitar o escopo:
- Qual área você quer seguir?
- Você se sente melhor trabalhando com interface ou com backend?
Mobile? Desktop? Embarcados? Games? Web?
Decidido onde se quer atuar, procure uma comunidade e veja com o que as pessoas estão trabalhando.
Curso Python - Fundamentos
Conhecer o cursoSe amanhã a tecnologia que você escolheu estiver fadada a morrer, estude outra; você já terá atuado algum tempo e já terá crescido com ela. Estudar faz parte da nossa área e na pior das hipóteses, você adquirirá mais conhecimento.
Fique Ligado!
Para seguir o João Batista Neto nas redes sociais: