Je suis un développeur relativement nouveau, fraîchement sorti du collège. Pendant mes études et au cours de mes recherches d’emploi, j’ai réalisé qu’il me manquait beaucoup de méthodologies de développement de logiciels "modernes": tests unitaires, journalisation, normalisation de bases de données, développement agile (par opposition aux concepts génériques agiles), style de codage guides, refactoring, revues de code, pas de méthodes de documentation normalisées (ni même d’exigences), etc.
Dans l'ensemble, je n'ai pas vu que c'était un problème. Je m'attendais à ce que mon premier emploi embrasse toutes ces idées et me les enseigne au travail. Ensuite, j'ai eu mon premier emploi (développement web full stack) dans une grande entreprise et j'ai réalisé que nous ne faisons rien de tout cela. En fait, moi-même, le moins expérimenté de l'équipe, je suis celui qui mène de front pour essayer de familiariser mon équipe avec les techniques de programmation "modernes" - car je crains que ne le fassent pas, c'est un suicide professionnel.
J'ai d'abord commencé avec le logiciel de journalisation (log4J), puis je me suis rapidement mis à écrire mon propre guide de style, puis à l'abandonner pour le guide de style de Google. Puis, j'ai réalisé que notre développement Web Java utilisait des contrôleurs frontaux écrits à la main. notre adoption du printemps - mais ensuite, j'ai réalisé que nous n'avions pas non plus de tests unitaires, mais j'apprenais déjà le printemps ... et comme vous pouvez le constater, cela devient vite trop pénible, surtout quand il est associé à un travail de développement normal. En outre, il m'est difficile de devenir suffisamment "expert" dans ces méthodologies pour enseigner à quiconque en cela sans consacrer trop de temps à une seule d'entre elles, encore moins à toutes.
Parmi toutes ces techniques, que je considère comme "attendues" dans le monde actuel du développement logiciel, comment puis-je les intégrer dans une équipe en tant que nouveau joueur sans se décourager, ni à soi-même ni à l'équipe?
Comment puis-je influencer mon équipe pour qu'elle devienne plus agile? est liée, mais je ne suis pas un développeur Agile comme le demandeur ici, et je regarde un ensemble de méthodologies beaucoup plus large que Agile.