Pendant la crise, j'ai perdu mon emploi et maintenant j'ai peur d'écrire du code intelligent pour ne pas effrayer les derniers postes vacants



Il y a quelques années, j'étais plein de colère et de désespoir. J'étais le gars qui a passé cent ans dans une grande entreprise, épuisé, mais je ne savais toujours pas quel marché géant était à l'extérieur. Le burnout m'a fait peur. Je doutais de mes compétences et croyais aux indices de mes supérieurs que vous trouveriez un meilleur emploi que celui-ci.

Je ne savais pas où aller, j'ai transformé le désespoir et la colère en texte et j'ai aimé ça. J'ai tellement aimé que, au fond, j'ai commencé à me réjouir de n'importe quelle merde de ma vie - seule la merde faisait du bon matériel. Pire encore, j'ai commencé à chercher de la merde exprès.

Mais le trouver est devenu de plus en plus difficile, car en réalité la vie du développeur est un putain de conte. Le monde est simple et clair, vous avez un travail intéressant, vous avez toujours où appliquer vos envies créatives - et vous avez beaucoup d'argent. La peur du chômage n'existe pas - vous obtiendrez chaque jour des dizaines de postes vacants. Il n'y a pas de peur des crises - les salaires des développeurs augmentent plus rapidement que tout le monde dans le pays, et si quelque chose ne va pas, vous trouvez simplement un emploi où votre masse salariale est liée à un dollar ou vous choisissez une relocalisation. C'est une industrie où des personnes spécialement formées résoudront toutes les difficultés pour vous. Cliquez simplement sur la tâche au moins quelques heures par jour.

Nous sommes assis ici comme des Européens âgés et nous nous plaignons des troupeaux de travailleurs migrants sans instruction qui nous volent de l'argent de leurs stupides sous-professions.

À un moment donné, au plus fort du bien-être, j'ai écrit mon texte le plus impudent. Cela s'est avéré non pas du fait que dans ma vie il y avait de la vraie merde, mais parce que je ne pouvais pas trouver de la merde, et cela m'a rendu furieux. J'ai écrit et réalisé que ces articles stupides me suffisaient. J'ai décidé de devenir un adulte et un oncle sérieux, comme un troisième commentateur me l'a conseillé.

Sérieusement engagé dans le travail, et non à travers les manches. Mettre en place des plans. J'ai finalement accepté de voler avec ma femme et mes amis en vacances (je détestais même l'idée de vacances), j'ai acheté des billets. Il s'est détendu et a essayé de commencer à vivre comme une personne. Même la voiture a commencé à rouler lentement et prudemment. Et c'est ici que la merde que je cherchais depuis si longtemps m'a trouvé. Mais cette fois, je n'étais pas content de lui.



Une semaine avant la nouvelle année, j'ai été sévèrement licencié du bureau où, dans un mois, je devais devenir chef d'équipe. C'était désagréable, mais pas effrayant. Quels problèmes - en trouver un nouveau. Mais des travaux étaient nécessaires en ce moment, et le marché est déjà entré dans le mode «viens après les vacances». J'ai accepté le travail du projet et le travail à temps partiel, j'ai passé quelques heures dessus pendant le voyage, j'ai immédiatement reçu la cache et j'étais calme.

Mais le travail de conception est un travail qui se terminera bientôt. J'ai commencé à chercher un lieu permanent à l'avance et je ne pouvais pas comprendre ce qui se passait. Le marché m'a gâté, avant de me rendre uniquement aux partis de la sécurité sociale où j'étais invité à cause des articles - pour que je n'aie rien à expliquer à personne. Ce n'est pas que j'étais très bon techniquement, mais je ne suis pas assez mauvais pour ne pas être obsédé par la sécurité sociale.

Et hier, il y avait dix condamnations par jour, et aujourd'hui tout à coup zéro. Je m'attendais à ce que la quarantaine génère un tas d'uddalenki, et il a donné naissance à un chasseur de têtes vide, des ignorants et des échecs. Hier, c'était ridicule d'imaginer que lorsque vous postulez pour un emploi, vous obtiendrez «non», aujourd'hui vous n'obtiendrez rien d'autre. Aujourd'hui, s'ils ont écrit «non», c'est bien. Au moins, ils vous ont remarqué.

La crise, le putain de virus, l'article à cause duquel j'ai été enfermé dans des listes noires. Ce dernier est au moins un peu amusant: je représente les eychars jubilatoires - "Voulez-vous retravailler?" Eh bien, ne travaille pas. " À cent pour cent, ils pensent que j'ai resserré la queue et que c'est agréable de courir pour demander du travail, dès que la vie s'est verrouillée.

Mais je sais lequel d'entre nous est un vrai hypocrite. Je ne vais pas aller au marché avec ce mantra réussi généralement accepté "oh non, que vous, bien sûr, je ne suis pas là pour l'argent! Depuis mon enfance, je rêvais de venir au bureau à 10 heures du matin et de riveter le même type de tâche! Seules les valeurs de vos entreprises sont importantes pour moi, rien à voir avec l'argent. » Et je sais avec certitude que si vous donnez un milliard de dollars à ces mystérieux yeux brûlants, ils chient immédiatement sur la table du patron, vont au bout du monde et arrosent des arbres exotiques dans leur jardin et admirent les étoiles sur la pelouse jusqu'à la vieillesse.

Nous sommes tous forcés de travailler et nous sommes fous de moi parce que j'avais assez d'œufs pour dire la vérité à voix haute.

Je ne veux peut-être pas travailler cent fois, mais lorsque vous êtes un développeur qui a perdu son siège au plus fort de la crise, le monde n'est plus simple et compréhensible - il ressemble soudain à une bande de merde hostile qui est sur le point de vous attacher à lui-même. Lorsque vous avez un bon revenu, vous devenez rapidement un tas d'obligations, et maintenant votre existence de base commence à coûter cinq salaires moyens dans votre région. J'ai oublié depuis longtemps la peur de se retrouver sans argent, mais maintenant il y a cette peur. À plusieurs reprises amplifié par la crise.



Mais j'ai eu de la chance - avec l'un des postes vacants, auquel j'ai répondu au cas où, une réponse positive est venue. Au moins, ils étaient prêts à me parler.

Vacance sur une pile complète, un dos sur les objets tranchants, un front sur un script. Je ne suis ni back-end ni front-end. Je m'appelle une pile complète parce que je connais à la fois le script C # et Java / type. Mais je n'ai presque pas fait de backend ou de frontend - j'ai fait des bibliothèques, des ordinateurs de bureau et des téléphones portables.

Nous avons téléphoné et avons rapidement convenu que nous avions besoin d'une tâche de test. Le vol le plus simple, netcor, avant sur quelque chose des trois grands. Eh bien, je pense que l'offre est dans ma poche. Personne et rien ne diront mieux sur mes compétences que mon code. Je ne pourrai pas miser sur une sécurité sociale quand il y a une solution réfléchie et claire au problème derrière moi.

Et j'avais raison, je n'ai pas chié à l'interview. Je merde en faisant un test.

Je ne suis pas un backender, donc je n'imagine pas vraiment l'architecture de telles choses. Mais je suis un développeur professionnel. Je suis stupidement allé voir Google et je lui ai demandé comment l’API Web était réalisée. Google a répondu avec des articles sur le RNIS et des articles dans des rapports techniques. J'ai étudié à fond tout cela et j'ai réalisé que je n'aimais pas Nichrome comme l'approche de l'industrie.

Comment valident-ils les données là-bas? Les attributs? L'industrie a plus de 30 ans et nous ne pouvons toujours pas décider d'une approche unifiée pour la validation. Attributs ok. Vous mettez MinLength, et cela ne fonctionne pas car il n'y a pas une telle constante dans la base de données et c'est tout. Si vous souhaitez qu'il soit validé, vous enregistrez votre propre attribut et l'incorporez dans les tripes d'EF, ou vous validez dans les services. Dans les attributs du cul.

Comment fonctionnent-ils avec les services d'accès aux données? Non, ils n'ont pas de tels services. Ils utilisent le modèle de référentiel, mais cela ne me convient pas.

D'accord, l'IoC est objectivement une bonne chose. Mais expliquez pourquoi diable crachez-vous ces référentiels sans fin? En les incorporant les uns aux autres, envelopper les référentiels sur les référentiels, saupoudrez le tout avec des tonnes de DTO afin de simplement transférer votre maudit SELECT TOP 1 FROM ... WHERE Id = 10 dans la base de données. Que dites-vous là? En train d'être testé? Puis-je écrire un mok? Ce n'est pas que j'avais autant d'expérience, mais je n'ai jamais vu un système sur les services bien testé avec des mokas. Personne n'a rencontré ce nuage de vos référentiels sur des référentiels et y a passé deux semaines de travail - tout d'abord, le client et le gestionnaire, qui ont noyé deux réunions pour des tests unitaires et presque TDD, jusqu'à ce qu'il ait vu l'estimation. Mais votre «entreprise jeune et prospère» n'a pas d'argent pour l'architecte de test.

Pour tout détournement pour un éternuement, je dois faire un DTO externe en plus du reste des dix, qui sera spécifiquement utilisé uniquement dans le contrôleur. Et Dieu nous interdit d'utiliser l'héritage. Une fois que vous avez mélangé l'essence, vous cassez la jambe. Et si vous utilisez l'entité EF-e comme DTO, alors vous sortez. Le proxy et l'appel attach / detach dans les endroits les plus inattendus vous sont fournis.

D'accord, nous avons trouvé un mappeur de voiture. Mais ils n'ont pas appris à l'utiliser et à imaginer une configuration statique, qui alors, bien sûr, serait soudainement liée à l'instance DataContext, qui - voici une surprise - devra être mise dans HttpContext.Current. Et puis nous nous demandons pourquoi tous les seniors s'enfuient en hurlant quand on leur propose de participer à la traduction du projet en .NET Core.

Dieux, pourquoi je sais tout cela? Je ne suis pas un becker, je n'ai pas encore développé une peau épaisse qui me protège des doutes inutiles lorsque vous utilisez la solution sans valeur adoptée par tous les bekenders.

D'un autre côté, les gens engagent un signataire. Ils n'ont pas besoin d'une personne qui donne une fessée sans réfléchir comme tout le monde - eux, Phil, veulent que vous réfléchissiez un peu. Mais je ne peux pas le faire un peu. Je commence immédiatement à proposer un système complètement nouveau, une approche cohérente et puissante.

J'ai divisé l'application en trois assemblages - date, business et web. Les couches sont clairement séparées les unes des autres, tout ce qui doit être encapsulé - j'ai encapsulé. Personne sauf la couche de données ne peut instancier des modèles, tout est sous contrôle. Par conséquent, j'ai trois assemblages par berceau pour une entité. Je suis un idiot, refaire. Ils engagent un signataire, pas un sur-ingénieur.

Le cinquième ou sixième cercle de telles pensées est déjà passé. Dans le processus, j'écris du code qui semble de pire en pire. J'ai rapidement réalisé qu'avec cette approche, je ne terminerais jamais le test. Je devais me convaincre - coller votre opinion dans votre cul et faire comme tout le monde.



Ce n'est pas le premier test de ma vie. J'y suis habitué: vous chérissez, comme bon vous semble, dans quelques jours, vous refactorisez une fois et vous l'envoyez. Si je le fais pour toujours, cela ne fonctionnera pas mieux. Et si cela ne revient pas à l'employeur - eh bien, Dieu merci, nous ne travaillerons pas ensemble.

Maintenant, les règles ont changé. J'ai besoin de travailler comme l'air, je commence à écrire du code que je pense qu'ils veulent voir, au lieu de celui que je pense nécessaire. J'ai oublié depuis longtemps ce sentiment désagréable. C'est une chose de douter de vos décisions quand vous avez peur d'écrire du mauvais code. Et c'est une chose complètement différente lorsque vous écrivez un code spécifiquement pour que quelqu'un l'aime.

Lorsque quelque chose ne fonctionne pas pour vous en cours de développement, il vous semble immédiatement que tout le problème est en vous. Que vous ne savez rien, tout le monde, leur mère, sait travailler comme programmeurs, mais vous ne savez pas comment. C'est une horreur irrationnelle, inexplicable que tu t'es trompée toute ta vie, elle s'intensifie très vite.

Oui, je sais que vous ne pouvez pas construire de systèmes pendant des années et ne pas être un vrai développeur. Oui, je connais un tas d'autres arguments, mais la peur est beaucoup plus forte. Et maintenant, il est soutenu par un trou financier - je ne joue plus à un jeu vidéo, mais je risque sérieusement de rendre ma famille pauvre. Et la seule arme que je dois éviter est ma compétence, la foi en laquelle s'évapore sous nos yeux.

Maintenant, je me sens plus effrayé que jamais, parce que je ne comprenais pas seulement, mais le ressentais - le marché amical et en surpoids a toujours été une confirmation de mes compétences. Dès que je suis devenu une goutte de chaussure, le marché m'a instantanément récompensé avec de l'argent et de nouvelles opportunités. Et maintenant, quand le marché prend d'assaut, il s'avère que je ne peux plus rien devenir. Il n'y aura pas de marché, il n'y aura pas de raideur.

Toute ma confiance que j'ai le droit de prendre certaines décisions, que j'ai une certaine expérience et les raisons de cela, a brisé lorsque les conditions du marché du travail ont changé. Et maintenant, le développeur n'est pas une élite intellectuelle, mais un ingénieur d'un institut de recherche soviétique. Bon marché et stupide. Je ne peux pas être d’accord avec moi-même et faire un test élémentaire, car la peur me rendait inadapté.



Ma dernière version du beck made est une solution de référence. Tout sur les guides. Il a fallu tout sans trace de force morale. Je pourrais envoyer ce qui a déjà été fait, mais j'ai préféré jeter cette merde à la poubelle et ne rien faire d'autre.

Pour passer un test comme prévu de ma part - pour moi, c'est une affaire de conscience. Je prends du recul par rapport à mes principes et j'écris du code que je trouve mauvais. Et je ne peux pas écrire comme je veux, parce que j'ai peur. J'ai peur que si je torture ce test avec des écrits titanesques et que je traite avec moi-même et que j'obtienne la réponse "mec, tu as fait des conneries, tu ne nous convenais pas", ma foi en moi tombera tellement que je ne pourrai pas

me promener à nouveau submergé par le désespoir, mais au lieu de la colère, maintenant la peur.

Et après? Je vais raconter avec des yeux brûlants comment j'ai rêvé toute ma vie d'aller au bureau pour le round 10 et de riveter le même type de tâche?



Maintenant avec arttomJe fais le podcast "We Are Doomed". Tout y est comme dans les articles - le plus directement possible sur le développement, l'industrie, la pâte et la sécurité sociale. Premier numéro ici

All Articles