Entrando na TI: a experiência de um desenvolvedor nigeriano

Entrando na TI: a experiência de um desenvolvedor nigeriano

Muitas vezes recebo perguntas sobre como iniciar uma carreira em TI, especialmente de meus colegas nigerianos. É impossível dar uma resposta universal à maioria destas questões, mas ainda assim, parece-me que se eu delinear uma abordagem geral para estrear em TI, pode ser útil.

É necessário saber escrever código?

A maioria das perguntas que recebo daqueles que desejam ingressar na área de TI na Nigéria referem-se especificamente a aprender a programar. Acho que a razão está em duas circunstâncias:

  • Eu também sou um desenvolvedor, então faz sentido que as pessoas busquem meu conselho sobre questões relacionadas.
  • Trabalhar com código é a oportunidade de carreira mais atraente em TI hoje, pelo menos aqui. Muitas pessoas pensam que não há outras opções além dela. Colocando lenha na fogueira, os programadores e seus gerentes têm os salários mais altos do setor em todo o mundo.

Na minha opinião, é importante perceber que não é necessário assumir o código e se esforçar para se tornar, como diz a expressão geralmente aceita, um “técnico”. Sou da opinião que qualquer pessoa pode aprender a programar e fazê-lo profissionalmente com bastante esforço, mas talvez você simplesmente não precise disso.

Existem muitos outros planos de carreira em TI que também valem a pena considerar. A seguir expressarei minha opinião sobre alguns deles e analisarei o quão promissores são do ponto de vista de quem mora na Nigéria.

Esta ainda não é uma lista completa de profissões alternativas que não estão diretamente relacionadas à escrita de código. Porém, também falarei sobre minha experiência como programador - se você veio aqui para isso, vá até a seção “E a programação?”

Opções para trabalhar como não programador

Projeto

Design é um conceito bastante amplo em TI, mas geralmente quando as pessoas me fazem perguntas sobre design, estão falando sobre UI ou UX. Esses dois aspectos também incluem uma ampla gama de fenômenos - tudo relacionado às sensações visuais, táteis e até auditivas que surgem ao interagir com um produto se enquadra neles.

Em grandes organizações, especialmente aquelas com um ecossistema tecnológico bem desenvolvido, as tarefas de UI e UX são fragmentadas em especialistas especializados. Alguns designers - geralmente começaram como generalistas - são responsáveis ​​apenas pelos ícones, outros lidam apenas com animação. Este grau de especialização é incomum na Nigéria – a indústria ainda não atingiu a maturidade necessária para se espalhar. Aqui é mais provável que você encontre generalistas que executam qualquer tarefa relacionada a UI e UX.

Na verdade, mesmo designers que também fazem trabalho de front-end em meio período não são incomuns. Mas agora a situação está começando a mudar. Cada vez mais empresas estão se tornando bem-sucedidas o suficiente para contratar especialistas, para que equipes inteiras trabalhem no design do produto. Com base em tudo o que foi dito, simplesmente dominar a profissão de designer e limitar-se a ela é uma estratégia totalmente funcional para construir uma carreira no mercado nigeriano.

Gerenciamento de projetos

Os gerentes de projeto são necessários em quase todos os campos de atividade, então você pode tentar usar a experiência e o conhecimento adquiridos em outro setor para ter sucesso em TI. Claro, é preciso levar em conta que alguns deles acabarão se revelando irrelevantes, sem falar que o gestor também deve entender os detalhes técnicos do projeto que está liderando. Mas se você acha que é bom em gerenciar pessoas, construir diálogos e elaborar planos de trabalho eficazes, considere esta opção.

Marketing e desenvolvimento de negócios

O desenvolvimento de negócios também é um conceito muito vago. Nas empresas de tecnologia, isso é feito por funcionários que garantem que o projeto apresente algum tipo de crescimento - seja um aumento no número de assinantes, no número de pedidos, nas visualizações de anúncios ou qualquer outro indicador que reflita o valor central que o produto traz. Uma grande variedade de habilidades está envolvida neste processo: promoção de produtos, design, coleta de estatísticas, comunicação oral e escrita, gerenciamento de projetos e assim por diante.

Suporte ao cliente

É menos provável que essa função atraia a atenção de pessoas que desejam construir uma carreira em TI. Atribuo isto ao facto de, em geral, as pessoas que trabalham em empregos de apoio em áreas não tecnológicas serem mal remuneradas. Este facto, por sua vez, é um subproduto do facto de as organizações nigerianas não darem muito valor ou investirem na assistência ao cliente - uma máxima profundamente enraizada na nossa cultura: “sair de alguma forma".

No entanto, ultimamente tenho notado uma mudança nas atitudes em relação ao apoio e ao investimento nele – pelo menos no ecossistema tecnológico. As empresas jovens perceberam que os nigerianos poderiam sair, mas para os negócios é melhor e mais rentável fornecer aos clientes a máxima assistência possível. Mas mesmo se deixarmos essa tendência de lado, na próxima seção darei outra razão pela qual você deveria considerar uma carreira em suporte técnico e outras áreas relacionadas.

Expandindo além do mercado nigeriano

A enorme vantagem que a Internet nos dá é que apaga as fronteiras entre os países, pelo menos em relação ao trabalho e à cooperação. O facto de poder exportar as suas competências em todas estas áreas (e muitas que não o são) enquanto trabalha remotamente significa que não estamos limitados pela procura de designers, trabalhadores digitais e gestores na própria Nigéria.

Existem várias maneiras de entrar no mercado internacional:

  • Trabalho remoto como freelancer. Existem plataformas que foram criadas para este fim específico - Toptal, Gigster, Upwork e outros. Eu mesmo sou freelancer no Gigster há mais de dois anos. Havia também muitos outros especialistas nigerianos trabalhando lá – não apenas como desenvolvedores, mas também como gerentes de projetos e designers.
  • Trabalho remoto em tempo integral. Existem startups espalhadas pelo mundo cujos fundadores procuram pessoas independentemente de fatores geográficos. Isto é claramente evidenciado por sites de emprego como Remoto|OK.
  • Saindo do país. Do meu ponto de vista, esse é o caminho mais difícil, pelo menos no nosso estado. Viajar para o exterior não é uma tarefa fácil para nós, considerando quantas coisas precisamos fazer e pagar para conseguir um visto e permissão para morar no exterior, principalmente se o país não for africano. Mas há uma vantagem: em princípio, não é necessário esforçar-se para além de África. Existem muitas empresas interessadas em contratar na África do Sul, Quénia, Gana e outros países. Contudo, temos de admitir: fora do continente, tanto a procura como os salários são mais elevados.

Escolho trabalhar remotamente por dois motivos:

  1. Esta é quase uma opção ideal tanto para o empregador quanto para o empregado. O funcionário geralmente pensa assim: “Passei dois anos aprendendo tudo sobre suporte técnico online e eles estão me oferecendo 25 nairas”. Por outro lado, um empregador localizado a milhares de quilómetros de distância valoriza as suas competências e está disposto a contratá-lo por razões financeiras – muito provavelmente lhe custará menos do que o trabalho de pessoas da sua própria região. Não parece muito, mas na verdade não é tão assustador. Os valores absolutos nem sempre fornecem uma imagem de como os níveis salariais afetam a qualidade de vida de uma pessoa. É necessário levar em consideração o custo de vida nas respectivas regiões. Pode ser mais lucrativo ser um desenvolvedor remoto de US$ 000 em Ibadan do que ganhar US$ 40 e morar em São Francisco.
  2. Se você ganhar dinheiro em outra moeda e gastá-lo na Nigéria, estará beneficiando a economia local.

E a programação?

A questão mais urgente aqui é: “O que exatamente estudar?” As palavras “escrever código” cobrem tanto que é difícil não ficar sobrecarregado e sobrecarregado com informações à noite. Existem muitas linguagens de programação e ferramentas que podem ser usadas de diversas maneiras. Os iniciantes, e principalmente os autodidatas, geralmente se sentem bombardeados por todos os lados.

“Mestre JavaScript, só não confunda com Java, embora Java também seja bom se você quiser trabalhar com o lado do servidor no Android, no entanto, JavaScript também é bom para o lado do servidor e Android, mas foi originalmente projetado para navegadores. Você também precisará de HTML, CSS, Python, Bootstrap (mas Bootstrap não serve... ou não?), React, Vue, Rails, PHP, Mongo, Redis, Embedded C, Machine Learning, Solidity e assim por diante. ”

A boa notícia é que esse tipo de confusão pode ser evitado. Ano passado eu escrevi orientar, onde explico os conceitos mais básicos (como o backend difere do frontend e a parte do cliente do servidor), que são frequentemente ouvidos por programadores - pelo menos aqueles que estão envolvidos em desenvolvimento web ou aplicações móveis.

Aqui estão algumas dicas:

1. Pense em que tipo de produto você gostaria de criar. Será mais fácil entender exatamente o que você deve dominar se tentar imaginar o resultado final. Você pode querer saber como criar um aplicativo de rastreamento de despesas no Android. Você já deve estar pensando há muito tempo em como seria legal escrever você mesmo o código do seu blog pessoal, em vez de soluções prontas do WordPress ou Medium. Ou talvez você não esteja satisfeito com a aparência e o funcionamento do banco on-line atualmente.

Não importa que outra pessoa já tenha alcançado o que você estabeleceu como meta para si mesmo. Não importa que ninguém mais o use, exceto você. Não importa se a ideia parece estúpida ou irreal aos seus olhos. Isto é apenas para lhe dar um ponto de partida. Agora você pode ir ao Google e pesquisar “como codificar um blog”.

Outra maneira de encontrar um ponto de partida é pensar exatamente no que você gostaria de se tornar. “Eu quero fazer aprendizado de máquina.” “Quero ser um desenvolvedor iOS.” Isso também fornecerá frases que você pode pesquisar no Google: “cursos de aprendizado de máquina”.

2. Domínio fracionário do material. Os primeiros passos desde o ponto de partida também deixam uma sensação de total confusão. O motivo é que criar um blog do zero, por exemplo, exige conhecimento de diversas linguagens e ferramentas. Mas no início isso não deve incomodá-lo.

Vamos continuar com o exemplo do primeiro ponto. Então, pesquisei no Google “como escrever código para um blog” e me deparei com um artigo de mil palavras que incluía termos como HTML/CSS, JavaScript, SQL e assim por diante. Começo pegando a primeira palavra que não entendo e começo a buscar informações através de consultas como “o que é HTML&CSS”, “aprender HTML&CSS”.

3. Treinamento de foco. Foco. Deixe tudo o que for desnecessário de lado por enquanto e comece com o básico. Familiarize-se com o conceito de HTML e CSS (ou o que você tiver) o mais detalhadamente possível até sentir que já o entendeu. Pode ser difícil estudar os rudimentos porque você não entende como tudo isso é aplicado na prática. Não pare. Com o tempo, tudo fica mais claro.

Depois de terminar o primeiro termo incompreensível, você pode passar para o próximo - e assim por diante, ad infinitum. Este processo nunca termina.

Aprendendo a aprender

Então, você decidiu tentar sua sorte em TI. Agora só precisamos descobrir como contornar alguns gargalos:

  • Encontre tempo para treinamento e recursos com materiais
  • Lidar com o factor Nigéria, ou seja, todas as nossas deficiências que tornam qualquer acção cinquenta vezes mais difícil
  • Pegue o dinheiro que planejamos queimar com tudo isso

Serei honesto: não tenho respostas abrangentes para cada ponto. A questão dos recursos é especialmente grave porque... bem, estamos na Nigéria. Se você quiser se tornar global, suas condições serão muito piores que as de seus concorrentes. A maioria dos habitantes locais nem sequer tem acesso a um computador, fornecimento ininterrupto de eletricidade ou Internet estável. Pessoalmente, eu não tinha os três quando comecei minha carreira e ainda não estava na pior situação.

A maioria dos recursos listados abaixo estão relacionados a tópicos de programação - é aqui que sou mais experiente. Mas sites semelhantes são facilmente pesquisados ​​no Google para outras áreas que foram discutidas.

Internet é tudo para você

Se você já tem acesso constante à Internet ou pode pagar por isso com facilidade, então está tudo ótimo. Caso contrário, aproveite ao máximo o tempo que você tem acesso à Internet. Isso não é o ideal – principalmente porque rouba a capacidade de encontrar respostas para perguntas imediatamente – mas você pode praticar a codificação off-line principalmente, depois de baixar os programas e materiais de aprendizagem necessários.

Sempre que tive oportunidade de entrar online (por exemplo, no escritório onde estagiei, ou naquele banco perto do albergue de pós-graduação da Universidade de Lagos onde se pode obter wi-fi), fiz o seguinte:

  • Baixou todos os arquivos necessários para instalação e configuração de programas
  • Baixei livros, documentos PDF, tutoriais em vídeo, que depois estudei offline
  • Páginas da web salvas. Se você vir um tutorial que não terá tempo de visualizar em qualquer lugar, salve a página inteira da web em seu computador. Recursos como freeCodeCamp fornecer repositórios com um conjunto completo de materiais.

O tráfego móvel se tornou uma das minhas principais despesas. Gerenciá-lo com sabedoria, especialmente se você planeja distribuir Wi-Fi para o seu computador, é uma habilidade que precisa ser desenvolvida. Felizmente, os preços do tráfego diminuíram nos últimos anos.

Mas terei que pagar por livros, tutoriais e cursos?

Na verdade. Há um monte de recursos gratuitos na Internet. Codecademy oferece um plano gratuito. Sobre Udacity todos os cursos, exceto os nanoníveis, não custam nada. Grande parte do conteúdo pago foi reenviado para o Youtube. Sobre Coursera и Khan Academy Também há muitos materiais gratuitos. E estes são apenas alguns dos milhares de recursos disponíveis na Internet.

Não há como negar que o conteúdo pago costuma ser de qualidade superior. Agora, é claro, parei de aprovar isso em tempo hábil, mas certa vez pirateei livros e vídeos para os quais não tinha dinheiro suficiente.

E por último, a ferramenta mais poderosa à sua disposição é o Google. Mal toquei na ponta do iceberg de recursos que podem ser encontrados lá. Basta procurar o que você precisa e provavelmente estará lá.

Código e design - somente no computador

Se você já tem, ótimo. Caso contrário, você terá que se preocupar em obtê-lo. Mas a boa notícia é que você não precisará de nada muito sofisticado no início, especialmente se planeja desenvolver web. Estas características são bastante adequadas:

  • Processador 1.6 GHz
  • RAM 4 GB
  • Disco rígido de 120 GB

Algo assim pode ser comprado por cerca de 70 nairas, ainda mais barato se você comprar de segunda mão. E não, você não precisa de um MacBook.

Há cerca de seis anos, eu estava aprendendo desenvolvimento em WordPress e precisava pegar emprestado o laptop HP de um amigo quase todos os dias para fazer isso. Eu sabia de cor quais dias e horários ele tinha aulas na universidade e quando ia dormir - só conseguia usar o computador naquele horário.

É claro que essas recomendações não são adequadas para todos - alguns não conseguirão desembolsar 70 nairas de uma vez, alguns não têm amigos com um laptop e desejam pegá-lo emprestado. Mas é de fundamental importância encontrar pelo menos alguma forma de obter acesso ao computador.

Se você não planeja trabalhar com design ou código, então um smartphone é uma ótima alternativa para aprender os tópicos que você precisa. Mas, claro, é mais conveniente com um computador.

Se você tiver um computador apenas periodicamente, poderá usar aplicativos móveis, o que torna muito conveniente a absorção de informações em qualquer lugar. Muitos deles oferecem a oportunidade de estudar offline.

  • Codecademy Go, Py - boas opções para aprender código no modo móvel
  • O Google lançou um ótimo aplicativo Cartilha, com o qual você pode desenvolver suas habilidades de marketing digital
  • KA Lite é um aplicativo que permite assistir vídeos da Khan Academy offline.

Tenho certeza de que se olharmos mais de perto, essa lista pode ser ampliada.

Onde procurar ajuda

Você não precisa superar todas as dificuldades sozinho. Aqui estão alguns recursos para ajudá-lo em seu treinamento:

  • Andela: A plataforma Andela forma especialistas de classe mundial e ao mesmo tempo também os remunera. A duração do programa é de quatro anos, e durante esse tempo você não só aprenderá, mas também fabricará produtos reais para empresas de tecnologia de todo o mundo, o que proporciona uma experiência muito valiosa.
  • Piloto da Lambda School África: a escola Lmyabda treina desenvolvedores qualificados em nove meses que encontram trabalho instantaneamente e não tirarão um único naira de você até que você consiga um emprego em algum lugar. Agora lambda tornou-se disponível na África; Paystack coopera com a escola, Comprar moedas (onde trabalho), Cowrywise, CredPal e outras empresas locais. O primeiro set já está fechado, mas no próximo ano, tenho certeza, anunciaremos um novo.
  • Bolsa IA. Famoso desenvolvedor front-end e cofundador da minha empresa BuyCoins Ire Aderinokun Todo ano ela paga por qualquer curso de nível nano na Udacity para uma mulher. Isto é especialmente tentador porque o seu programa não se limita à programação: eles também incluem disciplinas digitais e outras disciplinas de negócios. As inscrições não estão sendo aceitas no momento, mas estão em andamento trabalhos para preparar a segunda iteração.
  • folga: Um programa gratuito onde mulheres aprendem a programar com mentores. Aqui você aprenderá não apenas como trabalhar com código, mas também como criar e gerenciar startups com o apoio de fundadores experientes.

Outras dicas

  • Reserve um tempo para estudar e praticar todos os dias.
  • Pesquise ativamente o que você precisa. Definitivamente está em algum lugar da Internet. Então continue procurando.
  • Se faltar energia com frequência, melhore ao máximo sua capacidade de gerenciar ao máximo as baterias do telefone e do computador. Eu ainda conecto carregadores na primeira oportunidade - estou tão acostumado com pensamentos paranóicos que, quando chegar em casa, pode não haver luz lá.
  • Depois de atingir um nível em que você possa se sentir confiante em sua capacidade de dominar quaisquer conceitos ou tópicos, tente encontrar um contrato de trabalho - isso o forçará a entendê-los completamente. Nesta fase, não importa realmente quanto você recebe, considere qualquer dinheiro como um belo bônus.
  • Saia para o mundo. Deixe as pessoas saberem que você está falando sério. Isso pode ser conseguido de várias maneiras: crie um site pessoal, converse com outros desenvolvedores, participe de grupos nas redes sociais, escreva postagens em blogs.
  • Não desista.

Fonte: habr.com

Adicionar um comentário