Алексей Махоткин

домашняя страница

Константин Новик «Формальные требования к пишущему программисту»

Newsgroups: fido7.mo.job.talk
X-Comment-To: seva semenov
From: noviktk@hotmail.com
Date: Sat, 29 Jan 00 07:32:47 +0300
Subject: Re: Vacantions in Internet-Centre IT Co.
Message-ID: <86tqei$c3m$1@ddt.demos.su>
References: <1980331669@p1.f434.n5020.z2.fidonet>

seva semenov <seva.semenov@p1.f434.n5020.z2.fidonet.org> wrote in message… > noviktk@hotmail.com writes:

[ skipped. -ed ]

Hа самом деле я тут хвастаюсь тем, что у меня якобы завелся некоторый опыт общения с программистами, которые этого не умеют. Причем этот опыт мне кажется очень интересным и практически важным, и я хочу его обсуждать. А я не хочу наездов на $200 программеров. То что кто-то не смог заработать больше показывает человека как неудачника в плане зарплаты, но никак плохого программиста.

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

Вот для второй категории зарплата в $200 кажется мне очень и очень подозрительной в смысле квалификации. $400 - да, знаю, есть нормальные программисты на такой зарплате. $300 - верю, есть. $200 - уже как-то странно.

Я, к сожалению, просто не знаю лично ни одного пишущего программера с такой зарплатой. Вы знаете? Скажите пожалуйста, а удовлетворяют ли они минимальному набору формальных требований? Скажем - вот такому:

  • 0) Способность читать и хорошо понимать текст на как минимум трех достаточно разных языках программирования - пусть даже два из них будут весьма простыми.
  • 1) Минимум 3000 часов работы в реально используемых другими людьми проектах в течении последних не более чем 3 лет.
  • 2) Минимум 500K байт собственноручно написаного отлаженного кода, в котором невооруженным глазом легко обнаруживаются процедуры, осмысленные комментарии и некая разбивка на модули, и за час тестирования всплывает меньше 3 грубых ошибок.
  • 3) Возможность прочитать за не более чем 30 минут по-английски описание в хелпе любой функции используемого языка и внятно изложить по-русски, что она делает и какие у нее параметры.
  • 4) Умение за 2 часа найти в чужом 3-х мегабайтном тексте заданную воспроизводимую ошибку (описание прилагается), исправить ее и протестировать результат. Hе посадив новых ошибок.
  • 5) Умение писать по-русски на четверку в восьмом классе.
  • 6) Умение инсталлировать используемую OS, серверы, тулсы и патчи, пользоваться почтой, браузером, Word-ом, zip-ом, grep-ом, diff-ом, дебайгером и профайлером - если они есть.
  • 7) Внутренняя готовность применять вышеперечисленные умения в произвольных комбинациях 8 часов в день без базара что “отлаживаться надоело”.
  • 8) IQ >= 105 (на глаз).

Вы знаете, почему-то вот это примитивный список отсекает очень существенную часть людей, называющих себя “программистами”. И конечно - да, можно писать программы, не умея инсталлировать NT. Или не читая по-английски. Или не написав за всю жизнь работающего кода в размере месячной нормы Тутубалина. Hо только я лично не хотел бы делить успехи и неудачи с таким “программистом” :-).

[ skipped. -ed ]

Я пишу, что вот надо же - бывают программисты, не умеющие ловить ошибки. Удивительно. А раньше я удивлялся, что есть в Москве программисты за $200. Так может это одни и те же? Hикакой смысловой связи между $200 и качеством кода нет.

Совсем-совсем никакой? По-моему, это откровенная глупость. По-моему, даже разница между $400 и $1200 достаточно четко отражается в коде, а уж $200 _обычно_ - это что-то совсем особое. Hе считая бессеребренников, альтруистов и миллионеров, у которых такое хобби.

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

Тоже полная глупость IMHO. Качество труда == качество результата. Оценить качество результата труда может любой человек, который умеет пользоваться этим результатом, знает, сколько было потрачено времени, и сколько было заплачено денег. Если еще есть пара-тройка аналогичных произведений для сравнения - то все совсем просто.

Если эникейщик Вася в фирме А пасет сеть на 20 тачек, и все всегда работает, а эникейщик Петя в фирме Б пасет такую же сеть, и все падает на 20 минут два раза в день - то сравнить качество их труда может до какой-то степени даже секретарша.

Hе говоря уже о том, что как раз $200-вым-то программерам обычно платят зарплату $1200-вые программеры. А тем, в свою очередь - $2500-вые софтверные бизнесмены. Которые были $1200-выми программерами 5 лет назад, и с тех пор, ничего особенно не забыв, еще и понаблюдали процесс со стороны.

Sincerely yours,
Konstantin Novik
== Salt Lake City, UT, USA ==

Comments