Найти тему
Легко в’IT

Причины ошибок

Часто мы говорим о достаточно сложных вещах, готовимся блеснуть на собеседовании, а потом приходим и нас спрашивают: а расскажи-ка мне причины, из-за которых могут появиться ошибки в программе. Ну для нас же это было супер очевидно, когда готовились! Почему сейчас ничего умнее "ну программист мог сделать ошибку в коде" не приходит на ум? Давай подумаем над этим вопросом, а за одно и будем иметь в виду, что прорабатывать надо даже самые простые вопросы. Ну вернее те, которые такими кажутся.
Итак, топ-5 причин, почему могут возникнуть ошибки:
1. Действительно, банальная ошибка, а то и опечатка в коде: программист хотел написать одну переменную, его отвлекли, он написал другую - ошибка. Человеки они такие, сложные существа
2. Тоже человеческая ошибка, но не опечатка, а связана она скорее с непониманием требований заказчика. Это помнишь как на известной картинке, когда заказчик хотел качель между двумя деревьями, а получил неведомую и неюзабельную фигню. Тоже очень частая причина ошибок: программист додумывает плохо описанные требования
3. Тоже про требования, но в этот раз они вдруг изменились и старые уже не актуальны, с точки зрения пользователя - тоже ошибка. И здесь не заказчик дурак, а рынок действительно мог поменяться. Например, регулятор мог ввести дополнтельные требования по маркировке продукции, стало быть маркировка, которая была идеальна в начале разработки уже может привести компанию к штрафам.
4. Банальное отсутствие времени. Я сам был программистом и вот бывает хочешь сделать классный код, который будет делать сложнейшие вычисления за долю секунды, а не получается: с утра проект сдавать, а у тебя конь не валялся. Вот и лепят, что побыстрее, лишь бы заказчик доволен сроками был.
5. Если у тебя огромная программа с сотней микросервисов, которые приносят пользу по принципу "работает - не трожь", то очень легко в них запутаться и в итоге сломать всю стройную конструкцию из костылей и подпорок

Есть еще менее очевидные пункты типа плохой приоритезации или низкого покрытия тестами, когда мы неверно оцениваем те сценарии, которые надо протестировать, но тогда уже получится не топ-5, а топ-6, а это не так красиво смотрится.

В заключении повторюсь: побольше внимания к мелочам, как в тестировании так и в собеседованиях, а я постараюсь сделать для тебя нужные акценты. Так что подписывайся и скидывай канал друзьям.