Desenvolvedor JavaScript — do Brasil à Europa

Entrando pra TI: O trabalho

Depois daquela burocracia tradicional de levar documentos, fazer exame admissional, etc., finalmente começo a trabalhar. Foi sensacional. Eu nunca havia me sentido em um ambiente de trabalho tão incrível.

Ganhei um notebook da empresa para trabalhar, no qual eu podia levar pra casa se o quisesse ou precisasse. Tinha minha mesa, meu espaço.

Inicialmente, todo dia de manhã havia frutas, pão, manteiga para tomarmos um café da manhã bacana. Café? À vontade. Consuma tanto café quanto os seus receptores de cafeína e o seu coração aguentar!

Às sextas, geralmente alguém comprava bolos para o pessoal comer no trabalho pra geral comer.

Também era possível fazer pequenas pausas no dia pra tomar um café ou até mesmo comer alguma coisa, sem que ninguém ficasse controlando cada segundo.

Enfim, trabalhar em um lugar como aquele era algo libertador pra quem passou pelos lugares que passei.

freedom! =')
freedom! =')

Entendendo o fluxo de trabalho

A primeira semana inteira de trabalho se resumiu em um extenso treinamento sobre o funcionamento do sistema e sobre as “Regras de Negócio” gerais de armazéns e claro, do nosso produto.

Por diversas vezes eu havia ouvido esse termo, "Regras de Negócio", mas, só naquele momento eu consegui finalmente entender do que se tratava exatamente.

Claro, esse não é um conceito inerente somente ao setor de TI, mas parece que é nele que o pessoal bate muito nessa tecla, ou pelo menos usa como Buzzword.

Caso você não saiba o que é, Regra de Negócio, aqui vai um ~Wikipedia definitions~:

Regras de Negócio são declarações sobre a forma da empresa fazer negócio. Elas refletem políticas do negócio. As organizações com isto têm políticas para satisfazer os objetivos do negócio, satisfazer clientes, fazer bom uso dos recursos, e obedecer às leis ou convenções gerais do negócio.[…]

Em outras palavras, falando em software, é toda aquela lógica que seu sistema tem que atender para fazer sentido ao seu propósito, como por exemplo, “O sistema tem que imprimir essa lista de itens, entretanto, eles precisam ser calculados da forma X e exibidos por categoria”.

Talvez você nem faça ideia, assim como eu não fazia, mas controlar a gestão de um armazém possui uma complexidade que parece baixa, mas é muito alta, principalmente quando apesar de existir uma forma padrão de se trabalhar, cada armazém organiza e monta sua operação tendo as suas próprias peculiaridades.

Agora, tenta imaginar escrever um sistema que gerencie a complexidade natural desse tipo de atividade, contando com os diferentes formas de se trabalhar de cada cliente? Sério, era (e ainda é) muito complexo.

Então, nessa altura do campeonato, toda aquela visão que eu tinha de mim mesmo que era um cara ~inteligentão~ e especial começava a ruir.

Fodão sqn!
Fodão sqn!

A quantidade de informação e regras eram colossais e muitas vezes eu não conseguia assimilar corretamente. O sentimento de incapacidade era grande.

Porém, faltava o famoso hands-on, ou no português claro: PRÁTICA. E sabemos que não há nada melhor que a prática pra assimilar as coisas, não é mesmo?

Durante o treinamento tivemos umas simulações de como seria usar o sistema, mas é aquela velha história do exemplo "Hello World", é sempre o caminho feliz e mais fácil.

Fim do treinamento, hora de ir pro posto de trabalho e tentar aplicar tudo o que foi passado nos problemas do dia-a-dia.

Nesse momento, descobri que meu trabalho se resumia nas seguintes atividades:

  • Ver os tickets que eram abertos pelos clientes, tentando compreender o problema reportado e verificando se fazia sentido e tentando resolver. Caso houvesse dúvidas, pedir ajuda.
  • Caso não estivesse tão claro o que o usuário desejava fazer no sistema ou qual o erro, tinha que entrar em contato com ele pelo próprio chamado, skype, e-mail, telefone, porém, a preferência era de ligar para o bendito, uma vez que apesar de odiar falar com pessoas no telefone, era o método mais rápido de entender o problema com o menor ruído;
  • Caso eu conseguisse identificar um erro no sistema, precisava abrir um ticket para o pessoal do desenvolvimento, reportando o bug.
  • Caso fosse um mal entendimento do que o sistema pode ou não fazer um uma falha no uso, mais conhecimento como erro operacional, eu dava uma palestrinha para o cliente explicando o que ele tava fazendo de errado.

Não parecia tão difícil, até eu começar a ver na prática quão complexo eram algumas análises, e as vezes, não só pra mim que era o novato, mas também para a galera que já estavam lá há anos.


Ferramental

Aprender sobre as regras de negócio da empresa foi uma experiência bem bacana, mas para além disso, aprendi várias outras coisas que são pertinentes a qualquer empresa que produza código.

A primeira delas foi sobre controle de versão. Quando entrei lá, ainda não tinha tido nenhuma aula sobre e fui descobrir sua importância a medida que precisei consultar logs de alteração de arquivos, versionar algum script que era de uso comum ou usado em alguma análise bem específica.

Apesar de naquela época utilizar o SVN como versionamento ao invés do git, foi lá que aprendi sobre como é importante adotar essa prática.

Outra coisa que eu aprendi que foi bem legal foi sobre a geração de versões. Até hoje gerar versões de um sistema (mesmo com o Semantic Versioning) é algo meio estranho pra mim, nunca sei EXATAMENTE quais são os limites do major e minor, mas foi lá que eu entendi mais ou menos como funciona esse fluxo.

Aprendi como é útil e pesado uma IDE. Lá, a ferramenta padrão era o Eclipse. Só perde pro visual Studio, mas pqp, que IDE pesada.

'Building Project…. …. …..'

Enfim, tive um contato com um estilo de trabalho que eu nunca havia tido antes e isso foi muito loco, mesmo!


Provando Valor

Apesar de me sentir libertado e feliz de trabalhar em um local como aquele, eu comecei a sentir uma certa pressão por parte do meu supervisor para mostrar valor o quanto antes.

Quando eu digo “mostrar valor”, quero dizer de produtividade, rendimento, VAI MEU FILHO, DESLANCHA LOGO, resolva esses problemas do começo ao fim se precisar ficar pedindo ajuda.

E mesmo querendo mostrar isso o mais rápido possível, minha insegurança e medo de errar limitava a minha capacidade, me fazendo sempre sentir necessidade de alguém me ajudando.

Foi então que notei um certo tipo de atitude nociva por parte dele que sempre foi gatilho para despertar o meu modos operante “Sangue no Olho”.


Você provavelmente já presenciou ou viveu alguma situação onde uma pessoa com mais poder que a outra, encontra formas de ridicularizar ou humilhar a ela, seja falando em um tom de deboche, elevando o tom de voz ou satirizando o que está ouvindo. Enfim, atitudes que muita gente por aí acha normal (não deveriam), mas que chegam a constranger até mesmo que está por perto e de fora.

E não precisa ser uma situação mega constrangedora não, pode ser atitudes sutis e pequenas, mas que geram um pequeno impacto, e depois de muitas vezes sofrida, pode causar sérios problemas.

Exemplo:

  • Então Chefe, tem esse problema aqui.
  • Mas está faltando essa e essa informação… você realmente entendeu o problema?
  • Eu acho que entendi… mas…
  • Não existe acho que entendi, ou você entendeu ou você não entendeu. Se está achando que entendeu, significa que não entendeu.

Situações como essa, que levando para o lado racional, tudo bem, faz todo o sentido mesmo.

Mas, mesmo sendo muito racional, ninguém gosta de ser tratado de qualquer jeito, ainda mais na frente de seus companheiros de equipe.

Comecei a viver na pele esse tipo de situação e consequentemente me sentir muito incomodado e puto. Sabia que mais cedo ou mais tarde eu ia perder a cabeça por conta disso.

Desde os meus 10 anos eu fui criado somente pela minha mãe. A nossa regra dentro de casa era: Não existe ditadura e/ou imposição de vontades. Se tu gritar comigo eu vou gritar com você. Da forma com que você me tratar, será tratado.

Ou seja, o regime com a pessoa mais importante da minha vida era de respeito e tratamento igualitário, o que como consequência, me levou a ter pouca ou nenhuma paciência com gente querendo me tratar de qualquer jeito, independente da posição hierárquica.

Não havia sido a primeira vez que tinha sido tratado dessa forma, e, aquela altura do campeonato e depois de trabalhar em tantos lugares diferentes, com boas e más pessoas, eu notei uma coisa sobre o ser humano (nem todos, claro):

Se alguém tenta exercer poder sobre outra, no sentido de “Eu falo e tu fica quetinho me escutando”, e a pessoa alvo desse tipo de ataque não reage, e pior, ainda pede desculpas, o agressor se sente cada vez mais confortável pra continuar fazendo aquilo e cada vez pior.

Parece primitivo, né? Consigo imaginar um grupo de macacos, onde o alfa do bando pega um macaco bem frágil e fica batendo nele. Ele não reage, não demonstra ameaça, o alfa vai continuar batendo.

Sim, um comportamento primitivo e animal. Mas afinal, somos o que?

Nunca se esqueça…

Vivemos em sociedade como a que conhecemos hoje há muito menos tempo do que existimos como espécie. A maior parte da nossa existência vivemos na natureza só reagindo a instintos primitivos e sobrevindo.

Enfim, toda aquela situação era uma pura situação de dominador e dominado, prova de poder, no nível mais primitivo que era muito comum nas.

Bem, eu tinha duas escolhas a fazer, espanar ou reagir. Foi então que decidi optar pela opção de reagir a agressão de duas formas:

  1. Primeiro, tentei melhorar minha base argumentativa e pensar muito bem nas possibilidades antes de levar os problemas pro meu supervisor ou pra quem quer que fosse (regra valiosa).
  2. Segundo, aplicar a Lei de Talião:

A lei de talião, do latim lex talionis (lex: lei e talio, de talis: tal, idêntico), também dita pena de talião, consiste na rigorosa reciprocidade do crime e da pena — apropriadamente chamada retaliação. Esta lei é frequentemente expressa pela máxima olho por olho, dente por dente. É a lei, registrada de forma escrita, mais antiga da história da humanidade. […] — Fonte: wikipedia

Em outras palavras, olho por olho, dente por dente. Falou de qualquer jeito? Vai ouvir resposta de qualquer jeito. Começou a gritar, vai ouvir resposta na mesma altura.

HAHHAHAHAHAHAHAHA
HAHHAHAHAHAHAHAHA

Você até pode argumentar que essa não é a melhor maneira para se resolver esse tipo de situação e que talvez um diálogo mais civilizado tenha um efeito mais positivo e eu HOJE eu vou concordar com você, entretanto, naquela época foi a forma que eu encontrei de sair disso.

Depois de quase um ano de inúmeras conversas bem ásperas, e eu começar a provar que não tava ali pra brincadeira, um respeito começou a surgir e eu pude voltar a ficar de boas!

Obviamente, isso não veio apenas da guerra animal que acontecia naquele circulo, mas também, por que a cada vez que minha capacidade era colocada em cheque, eu me empenhava muito mais pra entender o que estava acontecendo e não dar abertura e nem margem pra conversa fiada.

No fim, viramos bons companheiros de trabalho! =)


Começo da Insatisfação

Sempre enxerguei a relação entre um funcionário com a empresa como uma relação propriamente dita, como um namoro ou casamento, por exemplo.

As vezes você começa e passa pouco tempo já não quer mais estar ali, as vezes não. Tem gente que se encaixa muito bem ali e fica durante anos, outros não estão felizes mas é o que tem pra hoje. No meu caso, a paixão foi morrendo e cada dia que passava, eu sentia que não fazia sentido manter aquela relação.

Um dos traços da minha personalidade (já recebi vários feedbacks sobre isso) é não conseguir fazer a mesma coisa por muito tempo. Eu amo rotinas, mas até minha rotina envolve fazer coisas diferentes quando eu canso do que estou fazendo.

Trabalhar no suporte virou uma rotina de fazer A MESMA COISA passa dia entra dia. A analogia que eu gosto de fazer de pra exemplificar o que era trabalhar na minha posição, era de correr em uma esteira. Você liga a esteira, corre, corre por muito tempo. Depois desliga ela e desce, e no fim, você está no mesmo lugar. No outro dia, a mesma coisa. No fim do mês você correu quilômetros, mas não saiu do lugar.

O vazio de não fazer alguma coisa realmente importante (por mais que pra empresa seja), ou que me desse um sentido de ser na minha vida estava batendo forte.

😢
😢

Hora de mudar

Comecei a estudar desenvolvimento, pensando na carreira que eu queria ter.

É o que dizem né? Temos que tomar atitudes HOJE baseado no que queremos ser amanhã, e foi exatamente o que eu fiz, mas, havia um porém: Eu estava estudando pra ser algo que não cabia na empresa.

Meu negócio era o Front-end, navegador, fazer as coisas bonitas e pensando na usabilidade do usuário, mas lá, o sistema era todo feito em Java e pra gerar o front eles usavam (devem usar ainda) um toolkit chamado GWT (Google Web Toolkit) que basicamente é uma ferramenta que pega teu código em Java e compila uns HTML + CSS + JS muito louco, dando uma compatibilidade com quase todos os browsers antigos existentes e consequentemente, tirando a necessidade de ter um time responsável por criar essa parte (eu).

Então a moral da história é que a empresa só tinha desenvolvedor back-end e sem chance de abrir em curto/médio prazo vagas para trabalhar em alguma coisa relacionada a front.

Há quem diga:

Ah.. mas desenvolvedor é desenvolvedor né? Tem que programar em qualquer coisa, bla bla bla

Concordo com você. Mas sou da opinião que você tem que ter tesão no que você está fazendo, e minha experiência com Java havia sido péssima até então.

Assim que terminei as aulas de lógica e passei daquela fase ~C/C++~, eu comecei a programar com Java.

Quando você começa em qualquer linguagem, você não programa NA LINGUAGEM em si. Você faz uns rabiscos, que não refletem a maneira correta de se programar na linguagem.

Se você já tem uma boa noção de JavaScript por exemplo e pega um curso introdutório, vai ver o pessoal ensinando como declarar variáveis com var, ensinando laços for tipo for(var i = 0; i < 10; i++) , enfim, não da pra você saber logo no começo o que é a linguagem em si.

Mas a questão é que eu nunca gostei muito do Java. Muita verbosidade pra fazer QUALQUER coisa. Há discussões infinitas sobre isso e nem cabe aqui nesse contexto, sei que tem lados bons de se usar o Java de verdade, mas eu nunca me senti atraído, principalmente que eu sempre quebrei muito a cabeça com versão do JDK, versão de Maven, servidor Tomcat e os carambas.

Fora tudo isso, olhar para o código fonte da nossa aplicação me fazia ter cada vez mais certeza ainda que eu não queria mexer com aquilo, me dava arrepios. Hoje tenho amigos que trabalharam lá e dizem que aquilo não é uma aplicação em Java propriamente dita, aquilo é um frankenstein maluco.

Cada vez eu estudava mais a parte de front, me aprofundava no JavaScript e ficava mais e mais encantado, querendo seguir mais e mais naquela linha.

Todas as oportunidades que eu tinha de resolver algum problema meu, eu criava um repositório no Github, codava, subia meu código, sempre pensando:

Que merda é essa que eu fiz…

As vezes ficava orgulhoso que conseguia evoluir mais no projeto atual do que no passado, superava alguma barreira que estava tendo. Sempre orgulhoso, mas nunca satisfeito.

Fora a questão de ter espaço para eu crescer lá, ainda havia um problema bem grande: Falta de "ídolos".

Apesar de ter trabalhado e conhecido algumas pessoas sensacionais, a maioria era bem mediano pra baixo e não eu não conseguia nutrir nenhuma admiração.

E não que isso seja um problema, como já é debatido bastante na comunidade, nem todo mundo quer nem precisa ser um mito, um ninja. Entretanto, eu precisava de me espelhar em alguém, de olhar pro lado e falar: Caralho, só gente foda nessa merda, preciso grudar neles e absorver o máximo.

Isso até poderia ser uma questão pontual na empresa, mas o problema é mais em baixo.

Minha cidade natal algo em torno de 600 mil habitantes, não é uma cidade tão pequena, porém, a mentalidade das pessoas e do grosso dos profissionais é bem de cidade do interior.

Na empresa, ninguém nem tinha conta no Github. Ninguém sabia o que era comunidade e se talvez soubessem, mas não demonstravam o menor interesse em participar. Aquela velha mentalidade de: "Todo código que eu faço precisa ser guardado a 7 chaves" reinava e reina até hoje.

A mentalidade do mercado e dos profissionais de lá me parece atrasadas muitos anos, quando comparado às grandes capitais e o mundo de tecnologia a fora.

Tanto é que eu procurava vagas de front-end que já era uma realidade nas capitais, fora do país, e só me aparecia de "Desenvolvedor Web PHP+MYSQL".

É sério isso?
É sério isso?

O cenário está mudando, a passos de tartaruga, mas está.

Então aquilo tudo tava formando uma bola de neve maldita no qual eu não sentia evolução na empresa, na cidade, no mercado. Me sentia sufocado em saber que estava morando em lugar sem espaço para o que eu queria ser, pra ver as coisas que eu queria ver.

Foi então que na minha segunda férias, comecei a pensar sobre o que fazer pra resolver aquela sensação ruim que tanto me consumia.

Depois de muito pensar, decidi que precisava de um desafio maior do que qualquer outro que já tive. Precisava de um desafio maior que eu mesmo.

PRECISO IR EMBORA DESSE PAÍS DE UMA VEZ POR TODAS!

Assim que voltei do trabalho, estava decidido no que eu queria fazer. Peguei todas minhas economias de dois anos, pedi demissão, vendi tudo que eu tinha e paguei meu intercâmbio!

Porém, esses detalhes ficarão para o Ato na qual falarei do planejamento do intercâmbio e como foi a realização da ideia.


Agradecimentos

Entes de fechar, quero deixar meu muito obrigado para todas as pessoas que tive contato nessa experiência. Se você tiver lendo esse relato e remeter coisas boas a meu respeito, esse agradecimento é pra você.

De toda a experiência que eu tive, a melhor parte sem dúvidas foi aprender e compartilhar com todos que tive contato, em uma troca mútua de conhecimentos tanto profissional quanto pra vida.