Я относительно новый разработчик, только что из колледжа. Во время учебы в колледже и во время последующего поиска работы я понял, что у меня не хватает многих «современных» методологий разработки программного обеспечения: модульное тестирование, ведение журнала, нормализация базы данных, гибкая разработка (в отличие от общих гибких концепций), стиль кодирования руководства, рефакторинг, обзоры кода, отсутствие стандартизированных методов документирования (или даже требований) и т. д.
В общем, я не видел, что это проблема. Я ожидал, что моя первая работа охватит все эти идеи и научит их мне на работе. Затем я получил свою первую работу (веб-разработка с полным стеком) в большой корпорации и понял, что мы не делаем ничего из этого. На самом деле, я, наименее опытный в команде, являюсь инициатором попыток привести мою команду в курс дела с помощью «современных» методов программирования - так как я боюсь, что не делать это - профессиональное самоубийство в будущем.
Сначала я начал с программного обеспечения для ведения журналов (log4J), но затем быстро перешел к написанию своего собственного руководства по стилю, а затем отказался от него для руководства по стилю Google - и затем я понял, что в нашей веб-разработке на Java используются рукописные фронт-контроллеры, поэтому я настаивал на наше принятие Spring - но потом я понял, что у нас также не было модульных тестов, но я уже изучал Spring ... и, как вы видите, он слишком быстро становится подавляющим, особенно в сочетании с обычной работой по разработке. Кроме того, мне трудно стать достаточно «опытным» в этих методологиях, чтобы научить кого-либо еще в них, не уделяя слишком много времени одному из них, не говоря уже о всех них.
Из всех этих методов, которые я считаю «ожидаемыми» в современном мире разработки программного обеспечения, как мне интегрировать их в команду как нового игрока, не перегружая себя и команду?
Как я могу повлиять на мою команду, чтобы стать более гибким? связано, но я не Agile-разработчик, как аскер здесь, и я смотрю на гораздо более широкий набор методологий, чем Agile.