Se lancer dans l'informatique : l'expérience d'un développeur nigérian

Se lancer dans l'informatique : l'expérience d'un développeur nigérian

On me pose souvent des questions sur la façon de démarrer une carrière dans l'informatique, en particulier de la part de mes compatriotes nigérians. Il est impossible de donner une réponse universelle à la plupart de ces questions, mais il me semble néanmoins que si je décris une approche générale pour débuter en informatique, cela peut être utile.

Est-il nécessaire de savoir écrire du code ?

La plupart des questions que je reçois de ceux qui souhaitent se lancer dans l'informatique au Nigeria concernent spécifiquement l'apprentissage de la programmation. Je pense que la raison réside dans deux circonstances :

  • Je suis moi-même développeur, il est donc logique que les gens me demandent conseil sur des questions connexes.
  • Travailler avec du code est aujourd’hui l’opportunité de carrière la plus attrayante dans le domaine informatique, du moins ici. Beaucoup de gens pensent qu’il n’y a pas d’autre option. Pour ajouter de l'huile sur le feu, les programmeurs et leurs managers ont les salaires les plus élevés de l'industrie à travers le monde.

À mon avis, il est important de réaliser qu’il n’est pas nécessaire de s’attaquer au code et de s’efforcer de devenir, comme le dit l’expression généralement admise, un « technophile ». Je suis d'avis que n'importe qui peut apprendre à programmer et le faire de manière professionnelle avec suffisamment d'efforts, mais peut-être que vous n'en avez tout simplement pas besoin.

Il existe de nombreux autres cheminements de carrière dans le domaine informatique qui méritent également d’être pris en compte. Ci-dessous, j'exprimerai mes réflexions sur certains d'entre eux et analyserai à quel point ils sont prometteurs du point de vue d'une personne vivant au Nigeria.

Il ne s'agit pas encore d'une liste complète des métiers alternatifs qui ne sont pas directement liés à l'écriture de code. Cependant, je parlerai également de mon expérience en tant que programmeur - si vous êtes venu ici pour cela, faites défiler jusqu'à la section « Et la programmation ?

Options pour travailler en tant que non-programmeur

Conception

Le design est un concept assez large en informatique, mais généralement lorsque les gens me posent des questions sur le design, ils parlent d'UI ou d'UX. Ces deux aspects comprennent également un large éventail de phénomènes : tout ce qui concerne les sensations visuelles, tactiles et même auditives qui surviennent lors de l'interaction avec un produit relève d'eux.

Dans les grandes organisations, en particulier celles dotées d'un écosystème technologique bien développé, les tâches UI et UX sont fragmentées entre des spécialistes spécialisés. Certains designers - généralement il a commencé comme généraliste - ne s'occupe que des icônes, un autre ne s'occupe que de l'animation. Ce degré de spécialisation est inhabituel au Nigeria : l'industrie n'a pas encore atteint la maturité nécessaire à son déploiement. Ici, vous êtes plus susceptible de trouver des généralistes qui effectuent des tâches liées à l'UI et à l'UX.

En fait, même les designers qui effectuent également du travail front-end à temps partiel ne sont pas rares. Mais maintenant, la situation commence à changer. De plus en plus d'entreprises réussissent suffisamment pour se permettre d'embaucher des spécialistes, de sorte que des équipes entières travaillent sur la conception des produits. Sur la base de tout ce qui a été dit, maîtriser simplement le métier de designer et se limiter à cela est une stratégie tout à fait efficace pour construire une carrière sur le marché nigérian.

Gestion de projet

Les chefs de projet sont nécessaires dans presque tous les domaines d'activité, vous pouvez donc essayer d'utiliser l'expérience et les connaissances acquises dans un autre secteur pour réussir dans l'informatique. Bien entendu, il faut tenir compte du fait que certains d’entre eux s’avéreront hors de propos, sans compter que le manager doit également comprendre les détails techniques du projet qu’il mène. Mais si vous pensez être doué pour gérer les gens, établir le dialogue et élaborer des plans de travail efficaces, envisagez cette option.

Marketing et développement commercial

Le développement des affaires est également un concept très vague. Dans les entreprises technologiques, cela est fait par des employés qui s'assurent que le projet affiche une certaine forme de croissance - qu'il s'agisse d'une augmentation du nombre d'abonnés, du nombre de commandes, de vues d'annonces ou de tout autre indicateur reflétant la valeur fondamentale que le le produit apporte. Une grande variété de compétences sont impliquées dans ce processus : promotion de produits, conception, collecte de statistiques, communication orale et écrite, gestion de projet, etc.

Soutien à la clientèle

Ce rôle est le moins susceptible d'attirer l'attention des personnes qui souhaitent faire carrière dans l'informatique. J'attribue cela au fait qu'en général, les personnes qui occupent des emplois de soutien dans des domaines non technologiques sont sous-payées. Ce fait, à son tour, est un sous-produit du fait que les organisations nigérianes n’accordent pas beaucoup de valeur ou n’investissent pas dans l’assistance client – ​​une maxime profondément enracinée dans notre culture : «sortir d'une manière ou d'une autre».

Cependant, j'ai récemment remarqué un changement d'attitude à l'égard du support et de l'investissement dans celui-ci, du moins dans l'écosystème technologique. Les jeunes entreprises ont réalisé que les Nigérians pouvaient s'en sortir, mais pour les affaires, il est préférable et plus rentable d'apporter à leurs clients le maximum d'assistance possible. Mais même si nous mettons cette tendance de côté, dans la section suivante, je donnerai une autre raison pour laquelle vous devriez envisager une carrière dans le support technique et dans d'autres domaines connexes.

S'étendre au-delà du marché nigérian

L’immense avantage que nous offre Internet est qu’il efface les frontières entre les pays, du moins en matière de travail et de coopération. Le fait que vous puissiez exporter vos compétences dans tous ces domaines (et dans beaucoup d’autres) tout en travaillant à distance signifie que nous ne sommes pas limités par la demande de concepteurs, de travailleurs du numérique et de managers au Nigeria même.

Il existe plusieurs façons d’accéder au marché international :

  • Travail à distance en freelance. Il existe des plateformes qui ont été créées dans ce but spécifique - Toptal, Gigster, Upwork et d'autres. Je travaille moi-même en freelance sur Gigster depuis plus de deux ans. De nombreux autres spécialistes nigérians y travaillaient également, non seulement en tant que développeurs, mais également en tant que chefs de projet et concepteurs.
  • Travail à distance à temps plein. Il existe des startups dispersées dans le monde dont les fondateurs recherchent des personnes sans se soucier des facteurs géographiques. Ceci est clairement démontré par des sites d'emploi comme À distance|OK.
  • Quitter le pays. De mon point de vue, c’est la voie la plus difficile, du moins dans notre pays. Voyager à l'étranger n'est pas une tâche facile pour nous, compte tenu du nombre de choses que nous devons faire et payer pour obtenir un visa et l'autorisation de vivre à l'étranger, surtout si le pays n'est pas africain. Mais il y a un plus : en principe, il n’est pas nécessaire d’aller au-delà de l’Afrique. De nombreuses entreprises sont intéressées par l'embauche en Afrique du Sud, au Kenya, au Ghana et dans d'autres pays. Mais il faut l’admettre : en dehors du continent, la demande et les salaires sont plus élevés.

J'ai choisi de travailler à distance pour deux raisons :

  1. C'est presque une option idéale tant pour l'employeur que pour l'employé. L’employé a généralement cette réflexion : « J’ai passé deux ans à tout apprendre sur l’assistance technique en ligne et ils m’offrent 25 000 naira. » En revanche, un employeur situé à des milliers de kilomètres valorise ses compétences et est prêt à l'embaucher pour des raisons financières - cela lui coûtera probablement moins cher que le travail des gens de sa propre région. Cela n’a l’air de rien, mais ce n’est en réalité pas si effrayant. Les valeurs absolues ne donnent pas toujours une idée de la façon dont les niveaux de salaire affectent la qualité de vie d’une personne. Il faut tenir compte du coût de la vie dans les régions respectives. Il pourrait être plus rentable d'être un développeur à distance de 40 000 $ à Ibadan que de gagner 100 000 $ et de vivre à San Francisco.
  2. Si vous gagnez de l’argent dans une autre devise et que vous le dépensez au Nigeria, vous bénéficiez de l’économie locale.

Et la programmation ?

La question la plus pressante ici est : « Que faut-il étudier exactement ? Les mots « écrire du code » couvrent tellement de terrain qu'il est difficile de ne pas se laisser submerger et de se sentir submergé d'informations la nuit. Il existe de nombreux langages et outils de programmation qui peuvent être utilisés de différentes manières. Les débutants, et surtout les autodidactes, ont généralement l’impression d’être bombardés de toutes parts.

"Maîtrisez JavaScript, ne le confondez pas avec Java, même si Java serait également bien si vous souhaitez travailler avec le côté serveur sur Android, cependant, JavaScript est également bon pour le côté serveur et Android, mais il a été conçu à l'origine pour navigateurs. Vous aurez également besoin de HTML, CSS, Python, Bootstrap (mais Bootstrap n'est pas bon... ou n'est-ce pas ?), React, Vue, Rails, PHP, Mongo, Redis, Embedded C, Machine Learning, Solidity, etc. »

La bonne nouvelle est que ce genre de confusion peut être évité. L'année dernière, j'ai écrit руководство, où j'explique les concepts les plus fondamentaux (en quoi le backend diffère du frontend et la partie client du serveur), qui sont souvent entendus par les programmeurs - du moins ceux qui sont impliqués dans le développement Web ou les applications mobiles.

Voici quelques conseils :

1. Pensez au type de produit que vous aimeriez créer. Il sera plus facile de comprendre ce que vous devez maîtriser exactement si vous essayez d'imaginer le résultat final. Vous voudrez peut-être savoir comment créer une application de suivi des dépenses sur Android. Vous pensez peut-être depuis longtemps à quel point il serait cool d'écrire vous-même le code de votre blog personnel au lieu de solutions toutes faites de WordPress ou Medium. Ou peut-être n'êtes-vous pas satisfait de l'apparence et du fonctionnement actuel des services bancaires en ligne.

Peu importe que quelqu’un d’autre ait déjà accompli ce que vous vous êtes fixé comme objectif. Peu importe que personne d’autre que vous ne l’utilise. Peu importe si l’idée vous semble stupide ou irréaliste. Ceci est juste pour vous donner un point de départ. Vous pouvez maintenant accéder à Google et rechercher « comment coder un blog ».

Une autre façon de trouver un point de départ est de réfléchir à ce que vous aimeriez devenir exactement. "Je veux faire de l'apprentissage automatique." "Je veux devenir développeur iOS." Cela vous donnera également des expressions que vous pourrez rechercher sur Google : « cours d'apprentissage automatique ».

2. Maîtrise fractionnée de la matière. Les premiers pas depuis le point de départ laissent également un sentiment de confusion totale. La raison en est que créer un blog à partir de zéro, par exemple, nécessite la connaissance d'un certain nombre de langages et d'outils. Mais au tout début, cela ne devrait pas vous déranger.

Continuons avec l'exemple du premier point. J'ai donc cherché sur Google « comment écrire du code pour un blog » et je suis tombé sur un article de mille mots contenant des termes tels que HTML/CSS, JavaScript, SQL, etc. Je commence par prendre le premier mot que je ne comprends pas et je commence à chercher des informations via des requêtes telles que « qu'est-ce que HTML&CSS », « apprendre HTML&CSS ».

3. Formation ciblée. Se concentrer. Laissez tout ce qui est inutile de côté pour le moment et commencez par les bases. Familiarisez-vous avec le concept HTML et CSS (ou tout ce que vous avez) aussi complètement que possible jusqu'à ce que vous ayez l'impression de l'avoir compris. Il peut être difficile d’étudier les rudiments parce qu’on ne comprend pas comment tout cela est appliqué dans la pratique. Ne vous arrêtez pas. Avec le temps, tout devient plus clair.

Après avoir terminé avec le premier terme incompréhensible, vous pouvez passer au suivant - et ainsi de suite à l'infini. Ce processus ne se termine jamais.

Apprendre à apprendre

Vous avez donc décidé de vous essayer à l’informatique. Il ne nous reste plus qu'à trouver comment contourner certains goulots d'étranglement :

  • Trouvez du temps pour la formation et des ressources avec du matériel
  • Faire face au facteur Nigeria, c’est-à-dire à tous nos défauts qui rendent toute action cinquante fois plus difficile
  • Récupérez l'argent que nous prévoyons de dépenser à travers tout cela

Je vais être honnête : je n’ai pas de réponses complètes à chaque point. La question des ressources est particulièrement aiguë parce que... eh bien, nous sommes au Nigeria. Si vous souhaitez vous mondialiser, vos conditions sont bien pires que celles de vos concurrents. La plupart des habitants n’ont même pas accès à un ordinateur, à une alimentation électrique ininterrompue ou à un Internet stable. Personnellement, je n’avais pas les trois au début de ma carrière, et je n’étais pas encore dans la pire des situations.

La plupart des ressources que j'énumère ci-dessous concerneront des sujets de programmation - c'est là que je suis le plus avisé. Mais des sites similaires peuvent facilement être recherchés sur Google pour d’autres domaines abordés.

Internet est tout pour vous

Si vous disposez déjà d'un accès constant à Internet ou si vous pouvez facilement vous le permettre, alors tout va bien. Sinon, profitez au maximum du temps dont vous disposez pour accéder à Internet. Ce n'est pas idéal, principalement parce que cela vous prive de la possibilité de trouver immédiatement des réponses aux questions, mais vous pouvez principalement vous entraîner à coder hors ligne, une fois que vous avez téléchargé les programmes et le matériel d'apprentissage nécessaires.

Chaque fois que j'ai eu l'occasion d'aller en ligne (par exemple, dans le bureau où j'ai effectué mon stage, ou sur ce banc près de l'auberge des diplômés de l'Université de Lagos où l'on peut obtenir une connexion Wi-Fi), j'ai fait ce qui suit :

  • Téléchargé tous les fichiers nécessaires à l'installation et à la configuration des programmes
  • J'ai téléchargé des livres, des documents PDF, des tutoriels vidéo, que j'ai ensuite étudiés hors ligne
  • Pages Web enregistrées. Si vous voyez un didacticiel que vous n'aurez pas le temps de consulter en déplacement, enregistrez l'intégralité de la page Web sur votre ordinateur. Des ressources comme freeCodeCamp fournir référentiels avec un ensemble complet de matériaux.

Le trafic mobile est devenu l'une de mes principales dépenses. Le gérer judicieusement, surtout si vous envisagez de distribuer le Wi-Fi sur votre ordinateur, est une compétence qui doit être développée. Heureusement, les prix du trafic ont baissé ces dernières années.

Mais je devrai payer pour les livres, tutoriels et cours ?

Pas vraiment. Il existe tout un tas de ressources gratuites sur Internet. Codecademy propose un forfait gratuit. Sur Udacity tous les cours, sauf les niveaux nano, ne coûtent rien. Une grande partie du contenu payant a été remise en ligne sur Youtube. Sur Coursera и Khan Academy Il existe également de nombreux documents gratuits. Et ce ne sont là que quelques-unes des milliers de ressources disponibles sur Internet.

Il est indéniable que le contenu payant est souvent de meilleure qualité. Maintenant, bien sûr, j'ai arrêté d'approuver cela en temps opportun, mais à un moment donné, j'ai piraté des livres et des vidéos pour lesquels je n'avais pas assez d'argent.

Et enfin, l’outil le plus puissant à votre disposition est Google. J’ai à peine effleuré la pointe de l’iceberg des ressources que l’on peut y trouver. Cherchez simplement ce dont vous avez besoin et il sera probablement là.

Code et conception - uniquement sur ordinateur

Si vous l'avez déjà, alors tant mieux. Sinon, vous devrez vous soucier de l'obtenir. Mais la bonne nouvelle est que vous n’aurez besoin de rien de trop sophistiqué au début, surtout si vous envisagez de faire du développement Web. Ces caractéristiques conviennent tout à fait :

  • Processeur 1.6 GHz
  • RAM 4 Go
  • Disque dur de 120 Go

Quelque chose comme celui-ci peut être acheté pour environ 70 000 nairas, encore moins cher si vous l'achetez d'occasion. Et non, vous n'avez pas besoin d'un MacBook.

Il y a environ six ans, j'apprenais le développement WordPress et je devais emprunter l'ordinateur portable HP d'un ami presque tous les jours pour le faire. J'ai appris par cœur quels jours et heures il avait cours à l'université et quand il se couchait - à ce moment-là, je ne pouvais utiliser que l'ordinateur.

Bien sûr, ces recommandations ne conviennent pas à tout le monde - certains ne pourront pas débourser 70 000 nairas d'un coup, certains n'ont pas d'amis avec un ordinateur portable et ne souhaitent pas l'emprunter. Mais il est fondamentalement important de trouver au moins un moyen d'accéder à l'ordinateur.

Si vous n'envisagez pas de travailler avec du design ou du code, un smartphone est une excellente alternative pour apprendre les sujets dont vous avez besoin. Mais bien sûr, c’est plus pratique avec un ordinateur.

Si vous ne disposez d'un ordinateur que périodiquement, vous pouvez utiliser entre les deux des applications mobiles, ce qui rend très pratique l'absorption d'informations en déplacement. Beaucoup d’entre eux offrent la possibilité d’étudier hors ligne.

  • Codecademy Aller, Py - de bonnes options pour apprendre le code en mode mobile
  • Google a publié une belle application Apprêt, avec lequel vous pouvez développer vos compétences en marketing numérique
  • KA Lite est une application qui vous permet de regarder des vidéos de Khan Academy hors ligne.

Je suis sûr que si nous y regardons de plus près, cette liste peut être élargie.

Où chercher de l'aide

Vous n’êtes pas obligé de surmonter toutes les difficultés seul. Voici quelques ressources pour vous aider dans votre formation :

  • Andela: La plateforme Andela produit des spécialistes de classe mondiale, et en même temps elle les rémunère également. La durée du programme est de quatre ans, et pendant cette période, vous apprendrez non seulement, mais vous fabriquerez également de vrais produits pour des entreprises technologiques du monde entier, ce qui offre une expérience très précieuse.
  • Projet pilote de l'école Lambda en Afrique: l'école Lmyabda forme en neuf mois des développeurs qualifiés qui trouvent instantanément du travail, et ils ne vous prendront pas un seul naira jusqu'à ce que vous trouviez un emploi quelque part. Maintenant Lambda est devenu disponible en Afrique; Paystack coopère avec l'école, Acheter des pièces (où je travaille), Cowrywise, CredPal et d'autres entreprises locales. Le premier set est désormais fermé, mais l’année prochaine, j’en suis sûr, nous en annoncerons un nouveau.
  • Bourse IA. Célèbre développeur front-end et co-fondateur de ma société BuyCoins Ire Aderinokun Chaque année, elle finance un cours de niveau nano sur Udacity pour une femme. C’est particulièrement tentant car leur programme ne se limite pas à la programmation : ils incluent également le numérique et d’autres disciplines commerciales. Aucune candidature n’est actuellement acceptée, mais des travaux sont en cours pour préparer la deuxième itération.
  • éclabousser: Un programme gratuit où les femmes apprennent à coder avec des mentors. Ici, vous pouvez apprendre non seulement à travailler avec du code, mais également à créer et gérer des startups avec le soutien de fondateurs expérimentés.

Autres astuces

  • Prévoyez du temps pour étudier et pratiquer chaque jour.
  • Recherchez activement ce dont vous avez besoin. C'est certainement quelque part sur Internet. Alors continuez à chercher.
  • Si l'alimentation est fréquemment coupée, améliorez votre capacité à gérer au maximum les batteries de votre téléphone et de votre ordinateur. Je branche toujours les chargeurs à la première occasion. Je suis tellement habitué aux pensées paranoïaques que lorsque je rentre chez moi, il se peut qu'il n'y ait pas de lumière.
  • Une fois que vous avez atteint un niveau où vous pouvez avoir confiance dans votre capacité à maîtriser des concepts ou des sujets, essayez de trouver un emploi contractuel - cela vous obligera à les comprendre à fond. À ce stade, le montant de votre paiement n'a pas vraiment d'importance, considérez tout argent comme un joli bonus.
  • Sortez dans le monde. Faites savoir aux gens que vous êtes sérieux. Cela peut être réalisé de plusieurs manières : créer un site Web personnel, engager des conversations avec d'autres développeurs, rejoindre des groupes sur les réseaux sociaux, rédiger des articles de blog.
  • N'abandonne pas.

Source: habr.com

Ajouter un commentaire