La vie est déterminée par la croissance. Si vous ne grandissez pas, vous mourez.

Après presque 7 mois dans l’équipe de bureau, j’ai eu l’opportunité d’intégrer l’équipe de développement principale, qui a développé les API SOAP & REST dans CSharp pour la plate-forme Alpha (Oui, il n’était plus une application mais une plate-forme d’applications différentes.)

Avec qui ai-je appris?

Travailler dans une nouvelle équipe de 3 développeurs, faire principalement de la programmation en binôme au début, qui étaient aussi expérimentés que moi et avoir un manager (le gars qui nous envoie des mails et organise des réunions tous les lundis 😫) a été une très bonne expérience.

Qu’ai-je appris?

La Technologie de développement de site Web Microsoft ASMX, était devenu mon meilleur ami.

Nous avons résumé la plupart du code dans des bibliothèques pour ne pas dépendre de l’architecture ASMX, de sorte que la migration future serait facilitée. (L’Abstarction est la clé du développement logiciel)

L’objectif principal de cette API (qui était encore dans une architecture monolithique) était de concevoir un framework ORM personnalisé, totalement dépourvu de dépendance, et gérant les droits d’accès aux ressources et aux données bancaires de base.

Pour que cela soit fait correctement, nous avons fait de notre mieux pour respecter les principes de conception SOLID et mis en œuvre des règles de code propre. Aucune excuse ici. Ce code devait être clair et compréhensible.

La période la plus excitante du développement de ce framework a été lors de l’injection de programmation parallèle dans les gestionnaires de requêtes d’expression linq, de modèles de programmation asynchrones et de l’implémentation de design patterns tels que object pool, abstract factory, decorator, etc.

Sur quel projet ai-je travaillé?

Migrer une API SOAP aussi énorme vers une API REST sans casser le code hérité était un travail énorme qui n’était pas nécessaire à ce moment-là. Nous avons donc décidé de continuer à travailler avec ASMX pour les fonctionnalités principales de l’API nécessaires au fonctionnement de l’application bancaire de base, et nous avons construit des API asp.net comme façade pour les autres applications de la plate-forme.

Un grand nombre de trucs utilitaires que j’ai utilisés pour développer des applications de bureau et cette API peut être trouvée sur mon github.