
Les plus grands sauts dans mon développement professionnel ont eu lieu lorsque j'ai dû difficilement, obstinément, ne pas abandonner pour comprendre quelque chose de nouveau - et cela ne m'a pas toujours semblé être quelque chose de bien. Mais progressivement, j'ai développé une approche qui a permis de surmonter les blocages internes.
Peut-être que cela vous aidera.
Lorsque vous rencontrez des difficultés lors du développement de logiciels, il est très facile de perdre confiance en vous - parfois, je veux même tout abandonner. J'ai remarqué que dans de telles situations, le cerveau commence à inventer des raisons pour lesquelles il vaut mieux passer du temps sur quelque chose de plus familier, ou se plaint que la tâche est trop difficile pour moi.
Je sais que d'autres l'ont aussi.
Sur Reddit, les gens parlent de difficultés similaires d'apprentissage, et j'ai entendu plus d'une fois par d'autres développeurs professionnels qu'ils doutent de leur propre capacité à comprendre des concepts complexes, qu'ils pensent «faciles pour les autres collègues».
Il est très important de persévérer face à de telles difficultés - même si ce n'est pas facile.
Au fil des ans, j'ai appris plusieurs «trucs» mentaux qui m'ont aidé dans des minutes, des heures et des jours difficiles.
Je vais parler de ces points de vue qui ont été particulièrement utiles.
Traduit en Alconost1. Le développeur évolue professionnellement grâce au travail acharné et aux efforts
Quelle est la principale chose chez le développeur: le talent ou le travail acharné?
Les gens sont juste nés de grands développeurs - ou doivent-ils faire un effort pour le faire?
Il me semble qu'il est impossible de trouver la bonne réponse à cette question, j'ai donc décidé de considérer que grâce aux efforts déployés, ils
devenaient de bons développeurs.
Ce point de vue est plus utile: cela signifie que si quelque chose ne m'est pas donné, vous devez travailler dur et
je vais le comprendre .
De plus, il s'ensuit que mon travail ne sera pas toujours facile ou joyeux - je devrai travailler dur.

2. Essayer de faire quelque chose pour la première fois peut être difficile, et il est déraisonnable de s'attendre à ce que vous deveniez immédiatement dans ce dock
En tant que développeur, je suis souvent frustré lorsque je rencontre quelque chose que je ne comprends pas, mais je pense que je
devrais comprendre.
D'une certaine manière, j'ai dû travailler pour une entreprise qui utilisait git, et tout le monde autour de moi était un spécialiste de ce VCS. Il fut un temps où je devais faire face au fait que ma connaissance de SQL n'était pas si bonne.
Et dans chacun de ces cas, une partie de moi était sûre que je
devrais être bien versé dans ces domaines: au final, je suis le principal développeur d'un large profil avec de nombreuses années d'expérience!
Oui, j'avais de l'expérience, mais cela n'annulait pas le fait que je devais étudier ces technologies en détail pour la première fois, et au début je n'étais pas très bon dans ces domaines.
Parfois, le nouveau est facile, parfois non. J'ai commencé à regarder les choses de cette façon: si je fais quelque chose pour la première fois, je
n'ai pas à bien le faire.
Cela se révèle en quelque sorte comme ça ...
«Je n'ai jamais programmé en Java auparavant, ce qui signifie que je ne devrais pas être bon dans ce domaine. Par conséquent, je vais à ces cours. "
"Je n'ai jamais utilisé de dépôts git - je n'ai pas besoin de savoir comment faire. Par conséquent, je demanderai à un collègue de m'aider. »
J'ai donc pu désarmer la voix dans ma tête, qui insiste sur le fait que je ne suis pas apte à mon travail, que je ne réussirai pas. Bien sûr, cela peut ne pas fonctionner pour moi, et naturellement, je ne suis pas très bon jusqu'à présent - mais je ne devrais pas être en mesure de bien faire tout de suite, alors j'essaie de m'améliorer progressivement.
3. Travailler avec le code ne doit pas toujours être agréable: même si la tâche n'est pas intéressante, elle peut toujours être effectuée
Parfois, je dois travailler sur des tâches qui ne sont pas amusantes.
Par exemple, un morceau de code de traitement de données dans mon cluster Spark entraîne des pannes de nœuds aléatoires, ou une bibliothèque ne veut pas fonctionner, quoi que j'essaie de trouver.
La solution à ces problèmes n'est pas agréable, et parfois, pour être honnête, j'aimerais faire autre chose - juste pour ne pas perdre de temps à essayer de comprendre ce qui se passe.
Mais je comprends: la programmation ne doit pas toujours plaire - il suffit parfois de retrousser ses manches et de reprendre un travail sans intérêt.
Lorsque cela se produit, c'est difficile. Mais progressivement, j'ai réalisé qu'il y avait un avantage à cela: les tâches les plus complexes le rendent plus efficace pour s'améliorer.
4. Plus la tâche est difficile, plus vous en apprendrez et l'échec dans de tels cas est normal
Il s'avère que j'étudie vraiment quand je lutte constamment avec une tâche qui me semble trop compliquée.
Et dans ma vie, il y a de nombreux exemples.
Quand j'ai pris le livre sur la programmation pour la première fois, le code était difficile pour moi - mais j'ai quand même appris à programmer.
Ou, par exemple, j'ai en quelque sorte essayé de prendre en charge le développement de l'architecture de grandes applications. J'ai lutté pendant longtemps et jusqu'à ce que je découvre des modèles structurels et constructifs - après quoi nous avons dû abandonner des mois de travail sur le code, recommencer et créer l'application à partir de zéro en quelques semaines - à l'aide de nouvelles connaissances.
Une fois, j'ai dû prendre SQL au sérieux et vraiment l'étudier - après cela, j'ai pu travailler avec le département d'analyse des données de notre entreprise.
Enfin, je me suis engagé à concevoir une infrastructure de traitement des données pour notre entreprise à l'aide des technologies d'application web. Je me suis débattu avec cela jusqu'à ce que je découvre le «Data Lake», les pipelines ETL et les solutions informatiques distribuées.
Et la liste continue.
Dans chacun de ces cas, il n'y avait rien de plaisant: il y avait des solutions sans issue et du code inutile qui devait être jeté, et de nombreuses tentatives infructueuses pour essayer quelque chose.
Mais grâce à ces difficultés, j'ai acquis de nouvelles compétences et suis devenu meilleur en tant que développeur - sans toute cette douleur et ce désespoir, je n'aurais jamais rien su.
Par conséquent, aujourd'hui, je préfère considérer que le stress, les difficultés et une certaine nervosité sont un bon signe: si c'est
difficile pour moi, alors
j'étudie .
Au final, j'ai appris à accepter calmement des situations dans lesquelles je dois être nerveux: elles sont bien sûr désagréables, mais je pense que ça vaut le coup.
Le cerveau est un outil puissant
Nous pouvons choisir un point de vue sur la situation, ce qui permet de faire face aux difficultés qui se produisent inévitablement sur le chemin d'un développeur qui souhaite se perfectionner professionnellement.
J'espère que mes «trucs» mentaux (ou ceux que vous inventez vous-même) vous aideront à faire face aux difficultés.
Soyez têtu et n'abandonnez pas.
Si vous ne comprenez pas quelque chose, continuez à travailler dur et essayez de le comprendre: vous serez surpris de ce dont vous êtes capable - essayez simplement.
À propos du traducteurL'article a été traduit par Alconost.
Alconost
localise des jeux , des
applications et des sites dans 70 langues. Traducteurs en langue maternelle, tests linguistiques, plateforme cloud avec API, localisation continue, chefs de projet 24/7, tout format de ressources de chaîne.
Nous réalisons également
des vidéos de publicité et de formation - pour les sites qui vendent, présentent des images, de la publicité, des formations, des teasers, des explicateurs, des bandes-annonces pour Google Play et l'App Store.
Plus de détails