Программист-фанатик. Чед Фаулер
Чтение книги онлайн.

Читать онлайн книгу Программист-фанатик - Чед Фаулер страница 16

СКАЧАТЬ тысячи специалистов по Java, и практически никто из них не мог объяснить, как работает загрузчик Java-классов, или рассказать, каким образом виртуальная машина Java обычно осуществляет управление памятью. Разумеется, все эти знания не нужны тем, кто собирается писать базовый код под чужим руководством. Но приходившие на собеседование люди позиционировали себя как специалисты.

      Многие из нас считают, что термин «специализация» означает неумение разбираться в других вещах. Согласно такой трактовке я могу заявить, что моя мать специализируется в Windows, ведь она никогда не работала ни с Linux, ни с OS X. А мои родственники из арканзасской глубинки окажутся специалистами по кантри, потому что они никогда не слушали другой музыки.

      Представь, что ты пожаловался семейному врачу на странную опухоль под кожей правой руки. И врач отправляет тебя к специалисту, который сделает биопсию. Как тебе понравится, если специалист окажется человеком, не посещавшим никаких лекций в мединституте и не имеющим опыта в областях, непосредственно не связанных с выполнением процедуры, которая вам требуется? Я не знаю, изучал ли он дополнительный материал, даже связанный с этой процедурой. Вполне может оказаться, что он получил азы необходимой информации, но больше ничего не знает. Ты спросишь: «А что, если вон тот прибор во время операции начнет пищать?» А он в ответ: «Раньше такого никогда не случалось. Не случится и на этот раз. Я не знаю, что делает этот прибор, но он никогда не пищит».

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

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

      Так что же представляет собой специалист в области программного обеспечения? Кого я повсюду искал во время вербовочной поездки? Мне требовались люди, отменно разбирающиеся в программировании на языке Java и среде развертывания. Я хотел ребят, в 80 % случаев говорящих «это мне уже знакомо», глубина знаний которых позволяла бы решить проблему и в оставшихся 20 %. Я жаждал найти того, кто, работая с высокоуровневыми абстракциями, разбирался бы в деталях, лежащих в основе их реализации. Мне был нужен человек, умеющий справляться с возникающими при развертывании проблемами или хотя бы знающий, к кому можно обратиться по конкретному вопросу.

      Именно такой специалист выживет в меняющейся компьютерной отрасли. Если ты специалист по. NET, это вовсе не оправдывает тот факт, что ты не разбираешься ни в чем, кроме.NET. Это лишь означает, что ты являешься экспертом во всем, СКАЧАТЬ