Хороший и плохой программист. Чем они отличаются и когда нужно выходить за рамки?

Как отличить хорошего программиста от новичка? Может быть, стоит посмотреть на его работы или заглянуть в резюме? Практика показывает, что некоторые айтишники не способны меняться даже с годами.

Как отличить хорошего программиста от новичка? Может быть, стоит посмотреть на его работы или заглянуть в резюме? Практика показывает, что некоторые айтишники не способны меняться даже с годами. Вот тут и возникает главная проблема – как отличить профессионала от обычного сисадмина.

Узнать о проблеме

Когда ты еще молодой и только начинаешь свой путь, все проблемы решаются очень просто. Вообще, отличить реального программиста от новичка достаточно просто. Для этого нужно посмотреть на алгоритм его работы.

Итак, как работает плохой программист:

· Выявляет проблему.

· Пытается ее локализовать.

· Если не получается – находит решение в интернете.

· Пытается пофиксить проблему.

Вы заметили, насколько простой и малоэффективный алгоритм работы? В определенных ситуациях его можно оправдать, если проблема локальная. Печально, когда так начинает работать специалист с опытом не менее пяти лет.

Настоящий профессионал не только постарается найти проблему и локализовать ее, но и попробует уточнить, что вызвало неисправность. Как сделать так, чтобы проблемы больше не было. Только после этого можно фиксить ошибку и выходить на конечный результат.

К чему все это написано?

На самом деле все очень просто. Хороший программист может писать медленнее новичка, но он всегда вникает в корень проблемы. Опытный айтишник имеет больше способностей к абстрактному мышлению. А вот это уже интересный показатель, который практически нельзя выработать с годами и опытом.

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

И самое главное – хороший программист в несколько раз производительнее нормального специалиста. Кроме надежности и опыта, он имеет еще один значимый показатель: высокий уровень коммуникации. Он тратит меньше времени и сил на поиск проблемы, но больше внимания уделяет ее решению.

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

Всегда решайте проблемы комплексно, стараясь выходить за рамки. Не уходите от проблемы в поисках быстрого решения, а ищите связанные и похожие ошибки. Вот тогда вы сможете стать настоящим гуру.