Message au futur programmeur

Vous avez donc décidé de devenir programmeur.

Peut-être souhaitez-vous créer quelque chose de nouveau.

Peut-être que les gros salaires vous attirent.

Peut-être souhaitez-vous simplement changer de domaine d'activité.

Pas le point.

Ce qui compte c'est que tu décides devenir programmeur.

Que faire maintenant?

Message au futur programmeur

Et il existe plusieurs approches.

Premier: aller à l'université pour une spécialité informatique et recevoir une formation spécialisée. Le chemin le plus banal, relativement fiable, extrêmement long, le plus fondamental. Cela fonctionne si vous êtes encore en train de terminer vos études ou si vous avez les moyens de subvenir à vos besoins d'un an et demi (au mieux, si vous attrapez tout à la volée et pouvez commencer à travailler en 2e année) à quatre (si vous combinez travail et études). ce n'est pas ton point fort) ans.

Qu’est-ce qu’il est important de savoir ici ?

  • Il faut choisir la bonne université. Voir les programmes de formation, les évaluations. Les concours universitaires sont un bon indicateur. Si les équipes universitaires se classent au moins périodiquement dans le top dix lors d'olympiades de programmation relativement importantes, alors le codage à l'université ne sera pas un rudiment (malgré le fait que vous n'êtes peut-être pas du tout intéressé par les olympiades). Eh bien, en général, les règles du bon sens : il est peu probable que la branche de Bratsk de l'Université d'État du Baïkal fasse de vous un puissant full stack.
    Exemples de bonnes universités : Université d'État de Moscou/Université d'État de Saint-Pétersbourg (évidemment), Baumanka (Moscou), ITMO (Saint-Pétersbourg), NSU (Novossibirsk). Malgré toute leur éminence, il est tout à fait possible de s'y lancer avec un budget limité, si l'on ne vise pas les grands départements.
  • Pas seulement une université. Même si vous recevrez une formation complète dans toutes sortes de domaines, cela ne suffit pas. En raison de la bureaucratie, le programme de formation sera presque toujours en retard sur les tendances modernes. Au mieux, pendant un an ou deux. Au pire, pendant 5 à 10 ans. Vous devrez combler vous-même la différence. Eh bien, c'est évident : si vous étudiez la matière avec d'autres étudiants, chacun d'eux sera votre concurrent égal. Si vous le souhaitez, vous aurez une meilleure apparence sur le marché.
  • Cherchez un emploi le plus tôt possible. J'ai commencé à travailler dès ma deuxième année. À la fin de mes études universitaires, j’étais déjà un développeur intermédiaire, et non un modeste junior sans expérience. Je pense qu'il est évident qu'après avoir obtenu son diplôme universitaire, gagner 100 30 est plus agréable que gagner XNUMX XNUMX. Comment y parvenir ? Tout d’abord, voir les points A et B. Deuxièmement, allez à des rencontres, des festivals, des conférences, des salons de l’emploi. Surveillez le marché et essayez d'obtenir un emploi en tant que junior/stagiaire à temps partiel dans n'importe quelle entreprise pour laquelle vous êtes au moins approximativement adapté. N’ayez pas peur des conférences payantes : elles offrent souvent des réductions très intéressantes aux étudiants.

Si vous suivez tous ces points, au moment où vous recevrez votre diplôme, vous pourrez devenir un très bon spécialiste doté d'une expérience professionnelle et d'une richesse de connaissances fondamentales, que les autodidactes négligent souvent en raison de leur caractère non appliqué. Eh bien, la croûte peut vous aider si vous partez à l'étranger : ils y regardent assez souvent.

Si vous ne vous conformez pas... Eh bien, vous pouvez obtenir un score en suivant le courant, en copiant et en vous préparant à l'examen du jour au lendemain. Mais à quel point pensez-vous être compétitif à ce moment-là ? Bien sûr, je ne dis pas qu’il faut obtenir des A dans tout. Il vous suffit d'acquérir des connaissances. Utiliser le bon sens. Étudiez ce qui est intéressant et utile et ne vous souciez pas des notes.

Message au futur programmeur

L’essentiel n’est pas ce qu’ils essaient de vous imposer. L'essentiel est ce qui est intéressant et pertinent

-

En outre, deuxième méthode: cours de programmation. Internet regorge d'offres pour faire de vous un junior en seulement 3 mois de cours. Juste avec un portfolio, et ils vous aideront même à trouver un emploi. Juste 10 XNUMX par mois, ouais.
Peut-être que cela fonctionnera pour certains, mais purement à mon humble avis : c'est de la connerie complète. Ne perdez pas votre temps et votre argent. Et c'est pourquoi:

Une personne éloignée de l'informatique ne pourra pas comprendre les spécificités du métier en 3 mois. Pas question du tout. Il y a trop d’informations à absorber, trop de choses à comprendre et, de plus, trop de choses auxquelles s’habituer.

Alors que vont-ils vous vendre ? Ils vous vendront une « compétence mécanique ». Sans trop entrer dans les détails, ils vous montreront ce que vous devez écrire pour obtenir exactement ce résultat. Avec des instructions détaillées et l’aide d’un enseignant, vous rédigerez une sorte de candidature. Un, maximum deux. Voici le portefeuille. Et l'aide à la recherche d'un emploi consiste à envoyer des offres d'emploi à des juniors de grandes entreprises où il est peu probable que vous obteniez un entretien.

Pourquoi cela est-il ainsi? C'est simple : il est très important pour un programmeur de penser de manière abstraite. Un programmeur résout des problèmes qui peuvent être résolus de mille manières possibles. Et la tâche principale est d'en choisir un, le plus correct, parmi des milliards, et de le mettre en œuvre. Créer un ou deux projets selon des instructions vous donnera une certaine connaissance d'un langage de programmation, mais ne vous apprendra pas à résoudre des problèmes abstraits. Pour faire une analogie : imaginez qu'ils promettent de vous apprendre la course d'orientation, de vous emmener sur quelques itinéraires de randonnée simples, puis de dire que vous êtes prêt à conquérir la taïga seul en hiver. Eh bien, quoi, on vous a appris à utiliser une boussole et à allumer un feu sans allumettes.

Pour résumer : ne croyez pas ceux qui promettent de vous « rouler » en peu de temps. Si cela était possible, tout le monde serait devenu programmeur depuis longtemps.

Message au futur programmeur

À gauche : ce qui vous sera enseigné. À droite : Qu’est-ce qui vous sera demandé au travail ?

-

La troisième voie - la voie choisie par la majorité. Auto-éducation.

La voie la plus difficile, mais peut-être la plus noble. Regardons cela plus en détail.

Vous avez donc décidé de devenir programmeur. Où commencer?

Tout d’abord, vous devez répondre vous-même à la question : pourquoi voulez-vous cela ? Si la réponse est "Eh bien, bien sûr, ce n'est pas particulièrement intéressant, mais ils paient cher", alors vous pouvez vous arrêter là. Ce n'est pas l'endroit pour vous. Même si votre volonté est suffisante pour passer au crible un tas d'informations, écrire des milliers de lignes de code, endurer des centaines d'échecs et toujours obtenir un emploi, par conséquent, sans amour pour le métier, cela ne mènera qu'à l'épuisement émotionnel. La programmation nécessite un énorme effort intellectuel, et si ces efforts ne sont pas alimentés par un retour émotionnel sous forme de satisfaction pour un problème résolu, alors tôt ou tard le cerveau deviendra fou et vous privera de la capacité de résoudre quoi que ce soit. . Ce n’est pas le scénario le plus agréable.

Si vous êtes sûr que cela vous intéresse, vous pouvez alors décider des détails - ce que vous voulez faire exactement. Si vous ne savez pas en quoi les programmeurs peuvent différer les uns des autres, Google peut vous aider.

Je vous écris tout de suite le premier conseil pour que vous ne l’oubliiez pas : apprenez l’anglais. L'anglais est nécessaire. Vous ne pouvez aller nulle part sans l'anglais. Certainement pas. Sans anglais, vous ne pouvez pas devenir un programmeur normal. C'est ça.

Ensuite, il convient d'établir une feuille de route : un plan selon lequel vous allez vous développer. Étudiez les détails, examinez les postes vacants dans votre spécialité, découvrez superficiellement quels types de technologies y sont utilisés.

Un exemple de feuille de route pour un programmeur backend (pas pour tout le monde, bien sûr, ce n'est qu'une des options possibles) :

  1. Bases du html/css.
  2. Python. Les bases.
  3. Programmation réseau. Interaction entre python et web.
  4. Cadres de développement. Django, flacon. (remarque : juste pour comprendre de quel genre de « django » et de « flacon » il s'agit, il faut regarder les postes vacants et lire ce qui y est requis)
  5. Etude approfondie de python.
  6. js les bases.

Il très, Je répète, très un plan approximatif, dont chacun des points est énorme en soi, et de nombreux sujets ne sont pas inclus (par exemple, les tests de code). Mais c'est au moins une sorte de systématisation des connaissances qui vous permettra de ne pas vous tromper sur ce que vous savez et ce que vous ne savez pas. Au fur et à mesure de notre étude, ce qui manque deviendra plus clair et cette feuille de route sera complétée.

Ensuite : trouvez le matériel que vous utiliserez pour étudier. Principales options possibles :

  • Cours en ligne. Pas ces cours qui « juin en 3 jours », mais ceux qui enseignent une chose précise. Ces cours sont souvent gratuits. Exemples de sites avec des cours normaux : stepik, coursera.
  • Manuels en ligne. Il existe des logiciels gratuits, shareware et payants. Vous découvrirez vous-même où payer et où ne pas payer. Exemples: Académie HTML, apprendre.javascript.ru, livre django.
  • Livres. Il y en a beaucoup, beaucoup. Si vous n’arrivez pas à choisir, trois conseils : essayez de prendre de nouveaux livres, car... les informations deviennent très rapidement obsolètes ; La maison d'édition O'Reilly a un niveau de qualité assez élevé et une présentation normale ; Si possible, lisez en anglais.
  • Meetups/conférences/conférences. Pas si utile en termes de richesse d'informations, mais extrêmement utile en termes de possibilité de communiquer avec des collègues, de poser des questions pertinentes et de faire de nouvelles connaissances. Peut-être même trouver un poste vacant.
  • Google. Beaucoup de gens sous-estiment, mais la capacité de trouver simplement des réponses à certaines questions est très importante. N'hésitez pas à chercher sur Google des choses que vous ne comprenez pas. Même les seniors chevronnés le font. La capacité de trouver rapidement des informations sur quelque chose équivaut essentiellement à la connaître.

D'accord, nous avons décidé des sources d'information. Comment travailler avec eux ?

  1. Lisez/écoutez attentivement. Ne lisez pas quand vous êtes fatigué. Plongez dans le sens, ne sautez pas les points qui semblent évidents. Souvent, le passage de l’évidence à l’incompréhensible se fait assez rapidement. N'hésitez pas à revenir en arrière et à relire.
  2. Prendre des notes. Premièrement, il vous sera plus facile de comprendre vos notes lorsqu’il y aura beaucoup d’informations. Deuxièmement, les informations sont ainsi mieux absorbées.
  3. Effectuez toutes les tâches que la source vous suggère. Mais non, pas comme ça. Faire TOUS tâches que la source vous propose. Même ceux qui semblent simples. Surtout ceux qui semblent trop compliqués. Si vous êtes bloqué, demandez de l'aide débordement de pile, au moins via Google Translate. Les devoirs sont rédigés pour une raison, ils sont nécessaires à la bonne assimilation de la matière.
  4. Créez vous-même des tâches et faites-les aussi. Idéalement, il devrait y avoir plus de pratique que de théorie. Plus vous fixez étroitement le matériel, plus il est probable que dans un mois vous ne l'oublierez pas.
  5. Facultatif : inventez vous-même des quiz au fur et à mesure de votre lecture. Notez les questions délicates dans une source distincte et, après une semaine ou un mois, lisez et essayez d'y répondre. Si cela ne fonctionne pas, réessayez.

Et nous répétons ces 5 points pour chaque technologie étudiée. Ce n'est qu'ainsi (avec une étude approfondie de la théorie et une couverture dense de la pratique) que vous développerez une base de connaissances de haute qualité avec laquelle vous pourrez devenir un professionnel.

Et il semblerait que tout soit simple : on apprend les technologies une à une, on comprend le Zen et on se met au travail. C'est comme ça, mais ce n'est pas le cas.

La plupart des gens qui apprennent la programmation ressemblent à ceci :

Message au futur programmeur

la photo est honnêtement volée par conséquent,

Et ici, vous devez examiner chacune des étapes plus en détail :

Commencer: Vous n'avez aucune connaissance. Point de départ. Rien n’est encore clair, mais c’est probablement extrêmement intéressant. Le chemin commence en montée, mais légèrement. Très bientôt tu grimperas

Sommet de la folie: « Hourra, vous avez terminé vos deux premiers cours ! Tout s'arrange ! » A ce stade, l’euphorie des premiers succès aveugle les yeux. Il semble que le succès soit déjà proche, même si vous n’en êtes encore qu’au début de votre voyage. Et en luttant pour ce succès, vous ne remarquerez peut-être pas comment votre chute rapide dans le gouffre va commencer. Et le nom de cette fosse :

Vallée du désespoir: Vous avez donc terminé les cours de base, lu quelques livres et décidé de commencer à écrire quelque chose par vous-même. Et soudainement ne fonctionne pas. Il semble que tout soit connu, mais comment le combiner pour que cela fonctionne n'est pas clair. "Je ne sais rien", "Je n'y arriverai pas". A ce stade, beaucoup de gens abandonnent. En fait, la connaissance existe réellement et elle ne s’est évaporée nulle part. Les exigences claires et le soutien ont tout simplement disparu. La véritable programmation a commencé. Lorsqu’il faut manœuvrer dans un espace où il y a un but, mais où il n’y a pas d’étapes intermédiaires, beaucoup de gens tombent dans la stupeur. Mais en réalité, ce n'est qu'une autre étape de l'apprentissage - même si les dix premières fois, tout s'avère moche, avec d'énormes efforts. L'essentiel est de mener l'affaire à son terme encore et encore, au moins d'une manière ou d'une autre. La onzième fois, les choses seront plus faciles. Le cinquantième, une solution apparaîtra qui vous paraîtra belle. Le centième, ça ne fera plus peur. Et puis ça viendra

Pente de l'illumination: A ce stade, les limites de votre savoir et de votre ignorance apparaissent clairement. L'ignorance ne fait plus peur, on comprend comment la surmonter. Il deviendra plus facile de manœuvrer dans l’espace sans prendre de décisions. C'est déjà la ligne d'arrivée. Conscient déjà de ce qui vous manque en tant que spécialiste, vous compléterez et consoliderez ce qui est nécessaire et entrerez sur le terrain l'âme sereine.

Plateau de stabilité: Toutes nos félicitations. C'est la ligne d'arrivée. Vous êtes un expert. Vous pouvez travailler, vous ne vous perdrez pas face à une technologie inconnue. Presque tous les problèmes peuvent être surmontés si vous faites suffisamment d’efforts. Et même si c’est la ligne d’arrivée, ce n’est que le début d’un voyage encore plus grand.

Le chemin du programmeur.

Bonne chance avec ça !

Littérature à lecture facultative:
À propos de devenir programmeur et de l'effet Dunning-Kruger : tyk.
Manière hardcore de devenir programmeur en 9 mois (ne convient pas à tout le monde) : tyk.
Liste de projets que vous pouvez mettre en œuvre de manière autonome pendant vos études : tyk.
Juste un petit supplément de motivation : tyk.

Source: habr.com

Ajouter un commentaire