Уважаемый, за 15 лет в профессии я повидал очень многое. И уже много раз видел большую часть ошибок, которые не заметит миддл.
И это не голословное утверждение. Я спроектировал и реализовал довольно много проектов, в которых ошибок не нашлось и на стадии разработки, ни на стадии предрелизного тестирования, ни на стадии использования.
Уважаемый. Очень здорово, что Вы такой молодец. Конечно, сомнительно, что у Вас в голове весь проект сразу выстраивается и точное взаимодействие ВСЕХ составляющих проекта, но все же, гипотетически, это возможно, потому ничего не утверждаю.
И, собственно, по существу.
ты (абстрактный)
было написано не просто так. это относилось к ситуации, описанной в комментариях, а не конкретно в Вашу сторону. В общем, если до Вас еще не дошло все же поясню:
1) А чтобы не сломалось я сделаю вот так...
следствие
Поэтому сломается в другом месте.. "вот я дебил!"человек просчитывает все на шаг вперед и не учитывает, что его решение приведет к другому сайд-эффекту. соответственно, тут надо было просчитывать все на ДВА шага вперед.
Вы, видимо, вообще никогда не программировали. Во всяком случае правильно. Любоа алгоритм можно декомпозировать до выполнения примитивных действий, каждое из которых будет гарантированно работать без ошибки. Вопрос в количестве итераций. Но и их будет не так уж и много.
Не буду утверждать, что весь проект у меня выстраивается целиком, но общую концепцию я представляю себе почти сразу. И стараюсь закрепить её еще на ранней стадии проектирования (до написания кода).
А ещё через час после деплоя изменится формат вывода, да так, что изменения тащить придётся через всю систему. А заложить ещё один уровень абстракции под каждый камень нельзя т.к., где-то всё равно должен быть фундамент.
А послезавтра окажется, что и язык вы выбрали не тот, да и запускать надо будет не на кофеварке, а на суперкомпе. Так что давайте-ка за полчасика перепишите это под CUDA+MPI
Если первая часть про ТЗ завтра, а деплой вчера, это действительно плохой заказчик, то остальное - нет. Это уже не о заказчиках, а о бизнесе, когда ситуация меняется каждые полдня, невозможно быть хорошим заказчиком и стоит вспомнить о способности адаптироваться к ситуации.
ну тут два варианта в голову лезут:
1. четко поставленное ТЗ и задача, требующая решения на основе небольшого количества модулей с также небольшим числом связей между ними - отличная база для тестирования, завидую просто
2. малое количество пользователей или короткое время жизни проектов под высокой загрузкой
поделитесь инфой, чем именно занимались?
В основном высоконагруженные интернет-проекты.
И, как правило, первый вариант. Но бывало так, что проект состоял из микросервисов и тестировать их было одно удовольствие.
хорошо, что вам удалось объехать все баги используемых фреймворков
мне, как программисту под iOS, очень сложно конкурировать с Aplle по нелепости багов, порой просто в ступор вгоняет непонятное и необъяснимое поведение компонентов SDK
ну там все довольно логично и понятно в итоге становится со временем :)
главное, найти правильную точку зрения, примерно как при изучении функционального программирования :)
Т.е. вы всерьез полагаете, что у вас были проекты без единой ошибки? Кстати, 15 лет в айти индустрии ни о чем не говорят. Я знаю дядек с опытом под 30 лет и не могу сказать, что они умнее или шарят лучше. При этом у меня была пара учеников, которые в в свои 19-20 могли дать очень многим фору, собсно золото на иои получили оба.
Я там видел выше упоминание «высоконагруженные интернет-проекты» и «микросервисов» — может ссылочку дадите, на проекты то, которые состоят из одних микросервисов, а то может вам пора в долину на митапах поделиться опытом.
Это «International Olympiad in Informatics». И золото там — это круто. Один из учеников сейчас в МИТе. И только не надо мне рассказывать, что мол вон он тут сайтик написать просто не смог бы. Писал, и не простые. Более того, он успел до отъезда в МИТ написать кору для стартапа со своими железками. Но он чванливо про свои «15 лет и ни единой ошикби» никогда не напишет.
Ну на счет делиться опытом - не уверен.
А из высоконагруженных проектов - портал rt.com версия от 2013 года. Не скажу, что ошибок там не было вообще, но ПРОЯВИВШИХСЯ ошибок не было. даже на этапе 1,5 миллиона уников в сутки.