É possível desenvolver uma carreira profissional totalmente dentro do mercado de tecnologia Open Source?
Certamente você já viu algum artigo ou publicação mencionando os benefícios que contribuir em projetos Open Source podem trazer para alavancar a carreira. Mas é possível desenvolver a sua carreira totalmente dentro da área de Open Source? Hoje vamos te mostrar que não apenas é possível, como também pode te transformar em um profissional chave no mercado de tecnologia.
Mercado de trabalho
Segundo uma pesquisa da Linux Foundation’s Open Source Security Foundation (OpenSSF) e do Laboratory for Innovation Science em Harvard (LISH) com desenvolvedores que contribuem em projetos de código aberto, mais de 51% dos profissionais que estão trabalhando, foram contratados justamente para desenvolver FOSS (Free and Open Source Software).
Esses dados tendem a aumentar cada vez mais, já que até mesmo as gigantes de tecnologia como o Google, Facebook, IBM e a própria Microsoft aceitaram as vantagens do código aberto e têm se beneficiado muito da comunidade, disponibilizando alguns de seus projetos em plataformas como o GitHub (recentemente adquirido pela Microsoft em uma transação bilionária). Estima-se hoje que 8 dos principais projetos da plataforma são produtos de grandes empresas que recebem a maior parte das contribuições da comunidade e não necessariamente de seus funcionários.
Mas por que isso?
Além dos benefícios já conhecidos como a qualidade do software, inovação e segurança, essas empresas perceberam no código aberto uma grande possibilidade de redução de custos não apenas de desenvolvimento, como também de aquisição de talentos. E é aqui que você entra…
Carreira e história
Um dos principais benefícios em contribuir em projetos Open Source são as skills adquiridas durante o processo. Além de melhorar suas habilidades de comunicação, resolução de problemas e trabalho em equipe, você tem a chance de trabalhar em um projeto maduro, com profissionais experientes, além de se aprofundar nas tecnologias escolhidas pelos mantenedores do projeto. E aqui está o pote de ouro no final do arco-íris:
Esforço = RECONHECIMENTO
As empresas de tecnologia cada vez mais contratam por perfil e promovem por experiência. Se você dominar determinadas linguagens e tiver conhecimento sobre alguns aspectos de projetos da empresa, isso com certeza vai te colocar na frente de muita gente no mercado de trabalho. E esse é um dos motivos que tem levado cada vez mais empresas a investir em tecnologias Open Source: facilitar a busca por profissionais qualificados.
Comumente ao ouvir profissionais que atuam nessa área sobre como eles começaram a trabalhar, você vai ouvir algo do tipo:
“Bem, eu tinha feito algumas contribuições em determinado projeto…”
Ou então…
“Eu já vinha trabalhando há algum tempo em determinado projeto quando a empresa X me chamou para uma entrevista”.
Pode observar, não tem segredo, é puro reconhecimento.
Mas o Open Source só tem espaço para os experientes?
Eu sei, você deve estar pensando: “Ah, mas eu sou novato, não sei nem por onde começar no código aberto”. Então antes de nos aprofundarmos no tema carreira, vamos lembrar de como tudo começou e porque hoje em dia está muito mais fácil contribuir.
Alguns aspectos evoluíram muito durante os anos e tem tornado a comunidade cada vez mais aberta e acessível, permitindo que qualquer profissional, técnico ou não, possa vir a ser além de um contribuidor, um especialista naquela tecnologia.
Por mais “beginner” que seja, você provavelmente já sabe que o código aberto e o software livre surgiram mais ou menos na mesma época, na década de 90, com uma filosofia similar baseada na liberdade. Inclusive, vale destacar que o Free, do Free Software, vem de Liberdade e não de gratuidade como eventualmente é associado. Mas o importante aqui é mostrar que toda essa liberdade fez com que a comunidade e os projetos evoluíssem muito com o tempo, não apenas em volume mas também em maturidade. Hoje, muito mais informações são disponibilizadas, os projetos são bem mais maduros, com processos de desenvolvimento melhor estruturados, possibilitando uma maior organização e acessibilidade. Tudo isso contribui para a maior qualidade do software e um aumento significativo de investimentos e participação.
Evolução da Comunidade
O que queremos ressaltar com isso é que hoje em dia a contribuição se dá de modo muito mais profissional do que antigamente. Quem começou a contribuir lá no início, quando surgiu o código aberto, se deparou com um grande projeto a ser compreendido e ao mesmo tempo construído. Na época, era preciso ser usuário, aprendiz e desenvolvedor, tudo ao mesmo tempo e isso exigia um nível de experiência e conhecimento sobre tecnologia um pouco maior. Além disso, o domínio da língua inglesa era um grande limitador à participação, pois quase não havia material traduzido. Era tudo muito recente.
Apesar de hoje em dia o inglês e o conhecimento ainda serem habilidades necessárias, elas não são limitantes. É possível encontrar muito material em outros idiomas, como o próprio português, por exemplo, e contribuir de outras formas que não apenas com código. Além disso, hoje em dia, o básico da arquitetura do projeto costuma estar bem estabelecido, o que significa que você não vai precisar ficar corrigindo coisas da tecnologia que será utilizada no projeto, o que antigamente era bem comum.
A criação do Git e do GitHub também foram essenciais para ampliar a participação na comunidade, permitir maior organização e padronização dos processos de desenvolvimento, e facilitar a entrada de novas contribuições. Isso melhorou não apenas o lado dos mantenedores, como também daqueles que querem ingressar nesse meio, e contam com um material bem mais rico para se basear. Toda essa evolução permitiu maior acessibilidade e, com isso, atenção a outras áreas importantes do projeto que não exclusivamente o código. O que quer dizer que há uma série de atividades onde você também pode contribuir, caso não queira botar a mão no código.
Além do software, propriamente dito, você também pode contribuir:
- Revisando e corrigindo a documentação
- Traduzindo materiais
- Testando o software
- Produzindo conteúdo a respeito
- Organizando eventos
- Divulgando a tecnologia
Independentemente da área de atuação, o seu esforço vai resultar em habilidades riquíssimas para o seu currículo, que vão te deixar cada vez mais perto do tão esperado reconhecimento.
Mas como começar?
Se você quer começar a contribuir, é fundamental ter uma conta no GitHub.
Depois de escolher a área que você mais gosta e criar a sua conta, você pode explorar as categorias dentro do próprio GitHub, ou através de ferramentas como o Up For Grabs, que apresenta uma lista de projetos com issues para iniciantes ou o First Timers Only que também apresenta alguns bugs para quem está começando agora.
Mas antes de sair “propondo correções” por aí, você precisa ter certeza do que está fazendo para não gerar trabalho desnecessário para os demais. E aqui entra a principal característica de um profissional do meio Open Source: altruísmo.
Por isso, conheça bem o projeto, veja quem são os mantenedores, de quem é a autoria, quais são as issues abertas, verifique se as pessoas têm reviews nas contribuições. Busque o readme e o código de conduta. Mostre que você quer de fato contribuir.
Conhecendo bem a anatomia do projeto, certifique-se de ter uma comunicação clara e efetiva daquilo que irá propor e só então pense em formular sua primeira contribuição.
E claro, comece pelo mais fácil…
Mesmo se o seu objetivo seja construir uma carreira, você não precisa impressionar ninguém agora. Faça o que sabe, se aprofunde no projeto e o seu reconhecimento virá com o tempo.
Por fim, mantenha seu perfil no GitHub atualizado.
É cada vez mais comum empresas solicitarem acesso para verificar seus projetos e suas contribuições.
E nunca se esqueça!
Por trás do projeto, existem diversas pessoas envolvidas que também buscam o melhor dele. São essas pessoas que vão te ajudar daqui pra frente. Então seja legal com elas.