Работа меня затягивает все глубже и глубже. Я собой
доволен. За несколько первых недель я вполне вошел в курс дела
и выполнил основную часть плановых работ. Не все идет гладко,
но движение вперед чувствуется. Я способен видеть проблемы, я
способен их решать.
Потихоньку я вхожу в курс дел на этой компании.
Оказывается, я работаю в некой "экспериментальной" группе,
которая пытается сделать законченный продукт, с которым бы эта
компания могла бы выйти на рынок самостоятельно. Напомню, что
эта компания принадлежит японцам и делает только разработки.
Что-то типа Конструкторского бюро. Мой начальник Том долго и
путанно рассказывал мне о том, как компания намерена выйти на
рынок с этим продуктом, правда, вид у него при этом был
кисловатый. Проект задержан уже больше, чем на полгода. Том
заверяет, что это вполне нормально. Марк, программист, который
писал программу над которой я теперь работаю, ушел в другую
группу. Почему, пока не совсем ясно. Эта программа
используется в другом продукте. Есть еще один программист -
молодой парнишка Эндрю, который занимается только тем, что
немного модифицирует код для другого продукта. Мне поначалу
было непонятно зачем компании было надо нанимать еще
программиста, если уже есть один, который занимается именно
этой программой. Как я понял, второй программист не имеет
достаточно опыта. Он еще только начинающий программист.
Видимо, недавно после колледжа или университета. В группе у
нас всего три человека - Том, электронщик Дэвид и я. Тестер
Эрик не принадлежит к нашей группе, но тесно с нами
сотрудничает. Больше я почти ни с кем не общаюсь.
Том с виду мне напоминает араба с Иордании, который учился
у нас в институте. Ему не более сорока. Кто он по
происхождению я так и не знаю. Я спросил его о его корнях. Он
ответил, что отец у него из германии (???). Имя для дочери он
выбрал еврейское - Рэчел (могу ошибиться). Кстати, у наших
друзей собака имеет именно такую кличку. Я не стал ему об этом
говорить. Дэвид - стопроцентный белый американец. По возрасту
он самый старший в нашей группе. Ему за сорок. Эрик тоже
американец моего (до сорока) возраста. Он очень большой
и добрый.
Марк продолжал какое-то время участвовать в наших
совещаниях. Том однажды даже попросил его просмотреть мой код.
В общем-то, это в порядке вещей. Это здесь практикуется.
Взаимный просмотр кода гарантирует его качество. Думаю, что
Том мне пока не очень доверяет, а Марк в его глазах имеет
авторитет. Марк просмотрел все, что я добавил и выдал
рекомендацию, с которой я категорически не согласился.
Отступление для программистов: Он предложил мне в
процедурах, которые работают в реальном времени, "выровнять"
время выполнения для всех ветвей кода. Т.е. если где-то стоит
оператор if, то обе его ветви дролжны иметь абсолютно равное
время выполнения. Балансировку надо выполнять вставляя
ассемблерные вставки с командой nop. Таким методом якобы можно
избежать случая, что при определенных условиях программа не
закончит выполнение в определенный отрезок времени.
То, что он предложил, очень трудоемкий процесс, в
результате которого можно создать больше проблем, чем решить.
Он долго изобретал аргументы в защиту своей позиции. Я
постарался как можно обстоятельнее объяснить ему как можно
решить ту же задачу, но намного эффективнее. Марк стоял на
своем. Последним его аргументом было то, что он работает в
этой области восемь лет. Аргумент сильный, но не по делу.
Оставляю в программе все как есть. Более того, выкидываю все,
что он до этого пытался с этой целью сделать.
Меня включили во второй проект - разработка ременного
сервопривода. Моя задача - его математическое моделирование и
потом предстоит разработка программного обеспечения. Я засел
за теорию. Это дело по мне! О чем еще можно было мечтать! В
этом проекте участвует местный университет. На наших встречах
иногда присутствует профессор с несколькими аспирантами.
Впечатление он на меня произвел ужасное. Важный как индюк. Я,
кажется, тоже у него не в фаворитах. На самом первом совещании
я спросил его о том, моделируют ли они на компьютере систему,
над которой работают, но не получил даже поворота головы в
свою сторону. Решив, что он меня не расслышал, я задал
какой-то другой вопрос погромче. На этот раз я получил в ответ
жест, примерно такой, как в сторону надоедливой мухи. Стало
ясно, что проблема у профессора не в ушах, а глубже.
Мы были у них с визитом в университетской лаборатории. Мы -
это президент нашей компании, электронщик Дэвид и я. Меня
больше всего поразила схожесть обстановки там с подобными
российскими заведениями. Забудь, что ты в Америке и не обращай
внимания на то, что все кругом говорят на английском и нет
шансов определить в какой части земного шара ты находишься.
Академия есть академия. Потом пошли осматривать их
лабораторную установку, на которой они получают передовые в
мире результаты. Первое впечатление вызвало, прямо скажем,
недоумение. Установка работала как несмазанная телега с диким
скрежетом и вибрацией. Я предпочел молчать, опыт задавать
вопросы профессору уже есть, а мои коллеги скромно заметили,
что с этой установкой чагой-то не того. Ведь, каждый раз на
совещениях аспиранты профессора бойко докладываются о
достигнутых успехов, демонстрируют графики, излагают новые
идеи. Альфа-ту-си-би-мю туда бета-гав-ту-мяю сюда и т.д.
Понятно, что глядя на то, с помощью чего эти результаты
получены, люди испытывали "смешанные чувства". Один из моих
коллег спросил какая точность позиционирования у этой
установки, на что получил бойкий пионерский ответ от одного из
аспирантов, что "точность у этой установки в принципе
бесконечна, потому, что там в цепи обратной связи стоит
интегратор". Теоретизирование достигло абсурда. Вопросов
больше не последовало. Обратно ехали молча. Дэвид только тихо
высказал свое недоумение. Ведь, этот профессор ездит с
лекциями по всему миру.
Меня эти проблемы не касаются. Я занимаюсь своим делом.
Буквально за несколько дней накидал эскиз математической
модели. Мои коллеги, включая президента компании, проявили к
ней интерес. Это приятно. Мой оптимизм растет. Правда, по всем
признакам, этому проекту пока не уделяется компанией большого
внимания. Бюджет у этого проекта, по всей видимости, тощий.
Тем не менее, сам факт работы в этом направлении меня
вдохновляет. Дела по основному проекту потихоньку двигаются
вперед. На всеобщем собрании наш начальник Том бодро отчитался
о проделанной работе, однако, дело не все так гладко. Мы
выявили несколько серьезных недоработок, теперь срочно правим.
Том должен лететь с первыми образцами продукции в командировку
в Калифорнию. За день до его отлета демонстрационная установка
была даже не собрана. Я в шоке. Ведь программа, над которой я
работаю, еще ни разу не работала в реальных условиях на
реальной электронике. Мы прокатывали ее только на тестовых
платформах, а тут сразу в бой. Я настроен скептически, но
работа есть работа. Делаем все, что возможно. Последний день.
Завтра с утра Том улетает. Вечер. Мы наблюдаем какую-то
неполадку (назовем ее "проблема альфа"), но определить причину
не можем. Возникает мысль, что крышка конструкции придавливает
электронику и нарушает контакт. Надо сточить один выступ. Идем
с электронщиком Дэвидом в мастерскую, где, очевидно, уже
никого нет. Дэвид на станках работать не умеет. Я засучиваю
рукава и смело включаю фрезерный станок. Чему нас только не
научили в России? Ок, выступ сточен, станок цел, но проблема
осталась. После полуночи Том решает не лететь. Видно, что он
крайне расстроен. Мне неприятно тоже. На мой взгляд, проблема
в электронике, а не программе, но доказать это не просто и я
не уверен в этом на сто процентов. Дэвид, похоже, абсолютно
уверен в обратном. Дэвид работает здесь уже чуть ли не десять
лет. Я новенький. В этом контексте мне есть о чем подумать.
Если проблема "моя", то мне это будет стоить дороже, чем
Дэвиду.
Проблема альфа не была решена за весь последующий месяц,
однако, у меня возросла уверенность, что проблема не в
программе. Том ходит мрачный. Правда, мне пока не ясно, что
этому является настоящей причиной. У него родилась дочь и он
часто приходит невыспавшийся. В добавок, он еще задел
автомобиль какой-то дамы. "Совсем чуть-чуть", по его словам,
но та на него подала в суд. Проблем у парня хватает.
Периодически он пристает ко мне, что, может быть, мне надо
выполнить рекомендацию Марка. Может, в этом и есть корень
проблемы альфа? Том не специалист. Он всего лишь менеджер. Он
пытается предложить ну хоть что нибудь. Он нервничает. Я его
понимаю, поэтому, уже раз в пятый терпеливо объясняю, что это
не может быть проблемой альфа.
Параллельно, работая вместе с тестером Эриком, я нашел и
исправил еще несколько принципиальных недоработок в программе,
которые достались мне по наследству. Это не камень в огород
моего предшественника Марка. Марк сделал свою работу неплохо.
Рабочая программа не рождается вся и сразу. Нам приходится на
ходу дорабатывать математическую модель. Дело идет! Я даже
нашел серьезную проблему в электронике. Источник сигнала,
уровень которого мы измеряем с точностью до сотых процента,
был запитан напряжением, которое скачет вверх и вниз на
несколько процентов. Соответственно скакал и уровень сигнала.
Я случайно это увидел на осциллографе и сказал Дэвиду.
Вообще-то, эта ошибка его. Причем ошибка грубейшая. Дэвид
после этого несколько недель меня избегал. Мне показалось, что
ему неприятно, что я нашел эту плюху. Возможно, это мне только
показалось. Сразу после этого он затих, резко переключился на
другую работу, а потом на совещании это уже всплыло как-то
между прочим. Странно. Плюха была более, чем серьезная. В
результате ему пришлось перепроектировать все цепи питания,
что еще на несколько месяцев задержало проект. Обычно такие
вещи отмечаются и принято как минимум благодарить за работу.
Меня не поблагодарили и даже не отметили. Я не стал вылезать
сам. В конце-концов, это не моя епархия. Программа в целом уже
вполне функциональна и мы с Эриком добивает разные "тонкости".
Проблема альфа как-то отошла на второй план, правда, она
напомнила о себе второй раз, когда Том уезжал в другую
командировку. На этот раз в Японию. Том мне звонил оттуда,
спрашивал как ее избежать, но система все равно дала сбой во
время демонстрации. Том говорит, что он быстро среагировал,
что никто даже ничего не понял. Нам от этого, очевидно, не
проще. Мы продолжаем сидеть на длинных и нудных совещаниях,
которые любит проводить Том. Строим разные сценарии
тестирования., обсуждаем варианты действий. Результат- ноль.
Тестовая установка работает отлично. Рабочая электроника может
работать нормально несколько дней, а потом опять сбой. За это
время можно было бы спроектировать новую систему. Я на
ситуацию повлиять никак не могу. Тестовая установка, на
которой я отлаживаю свою программу, работает как часы. Том
становится все угрюмее и угрюмее. Я продолжаю "чистить"
программу. На моей установки нет возможности проверить
качество работы программы. На ней я могу только
констатировать, что программа функционирует, но не более.
Установка на которой работает Эрик позволяет оценить именно
качество. Мы должны измерять позицию инструмента с точностью
до микрона.
Однажды Том остановил меня в коридоре и спросил как дела.
Вид у него был не самый лучший. Я кратко обрисовал ситуацию.
На вопрос о проблеме альфа я мог только развести руками. Тогда
Том сорвался. Он явно высказал неудовольствией моей работой.
Он, оказывается, был абсолютно уверен, что проблема альфа это
моя ошибка в программе. Я, мол, только бегаю взад и вперед,
наплодил десяток новых версий программы (builds), а дело
реально не движется. ...!!!??? Для меня это было что-то вроде
холодного душа. Я позволил себе увлечься и в результате
потерял контроль за тем, что твориться вокруг. Я вникал в
теорию, грыз свою программу и был доволен тем, что я делаю.
Это и было моей ошибкой. Здесь нельзя расслабляться и витать
на крыльях своих идей. Ок! Будем играть по здешним правилам.
Для начала даю полный доклад относительного того сколько
версий программы я наплодил. Для чего и почему. Том далек от
программирования и объяснять ему все это очень трудно. Далее
пишу специальную тестовую версию программы. Эта версия с
убийственной убедительностью показывает, что программа не
может быть причиной проблемы альфа. Я уже делал подобный тест
у себя на установке и показывал результаты. Видимо, этого в
данном случае недостаточно. Это означает, что проблема в
электронике. Дэвид опять меня обходит, а Том, кажется, уже не
имеет претензий ко мне, но счастливие от этого не выглядит. Я
продолжаю работать как и работал, но уже оглядываюсь и не
позволяю никакой самодеятельности. Вроде все идет нормально.
Меня посылают в Чикаго на конференцию. Это здорово! Во-первых,
это интересно с профессиональной точки зрения (там будет сам
Бярни Страуструп - разработчик языка программирования С++),
во-вторых, мне просто интересно побывать в Чикаго, в третьих,
я там увижу коллегу, с которой работали вместе в банк еще в
России.
Я мало с кем контачу на работе. Так получилось, что наша
группа работает изолированно. Причем, наши рабочие места
располагаются отдельно от всех остальных. Это не хорошо и не
плохо, но я из-за этого не имею представления о том, что
делается в компании. Том продолжает хмуреть. На него просто
жалко смотреть. Проект трещит и выходит за рамки бюджета. Я
все чаще слышу разговоры о деньгах и бюджете, но оценить
ситуацию не могу. В Японии кризис, но скажется ли это на нас?
Меня это все волнует лишь с точки зрения насколько стабильно
мое рабочее место. Во всяком случае, я не вижу проблем для
беспокойства. Я участвую в двух проектах. Фактически, я у них
единственный программист, который знает встроенные системы.
Президент компании относится ко мне неплохо. Основатель
компании - (это другая личность) относится тоже ко мне хорошо.
Он швед. Ему сейчас за 60 лет. Он работает полдня, как я
понимаю, просто ради удовольствия. Мне иногда приходится
обращаться к нему. Он, кажется, единственный в компании, кто
понимает до конца как работает наша система. Умнейший человек.
У него есть чему поучиться.
Мы с Эриком опять копаемся в лаборатории. Мы, кажется,
нашли путь как немного улучшить систему. Неожиданно звонит Том
и просит меня прийти к нему. Придется прервать работу. Он меня
ведет не к себе в кабинет, а в комнату для совещаний. Вид у
него нервозный и серьезный. Идем по коридору. Обычно
приветливая секретарша как-то отводит глаза в сторону. Дамы из
бухгалтерии тоже как-то поникли. Странно. Заходим в комнату.
Том закрывает дверь и предлагает мне сесть. Думаю, что я уже
знаю зачем он меня позвал. Он начинает говорить о том, что у
компании сейчас проблемы с финансами, в Японии кризис и т.д.
Меня, очевидно, это волнует мало. Заканчивает он тем, что
сообщает мне о том, что компания решила нашу группу
распустить, а меня уволить.
Досадно. Мне нравилось работать в этой компании. Теперь
опять придется начинать сначало поиск работы. Проблем в этом
нет, но ситуация неопределенности, понятно, не радует. Опять
эти резюме, интервью и т.д. Меня увольняют, как выяснилось, не
сразу. Мою командировку в Чикаго не отменяют (!?). Потом я еще
два месяца работаю по контракту (!), причем, мне дают
оплаченных 24 часа для того, чтобы ходить на интервью (!!), а
потом мне еще выплачивается определенное вознаграждение за
"неудобства" (!!!). Условия, прямо скажем, неслыханно хорошие.
Обижаться не приходится. Том из менеджера превращается в
коммивояжера. Не лучший момент в его карьере. Дэвид идет в
другую группу. Меня за борт. Последний пришел - первым должен
уйти. Такое здесь правило. На следующий день президент лично
подошол ко мне и выразил свое сожаление. Приятно, но мне от
этого не легче. Мой новый начальник - китаец Дэвид (я смотрю
здесь все китайцы - Дэвиды). Он неплохой парень. Он не
проводит длинных совещаний и все вопросы решаются быстро.
Общаться с ним легко. Мне стало понятно почему ушел Марк.
С этого момента я уже не занимался работой по настоящему.
Неделю до командировки я просто почти ничего не делал - не
было никакого настроения. В Чикаго я немного проветрился. Я
там сидел на одном заседании совсем рядом с Бярни
Страуструпом. Побывал там в картинной галерее и поднялся на
самый высокий в мире небоскреб. По приезду начал обновлять
резюме. Все как обычно. Поначалу шквал звонков от рекрутов, а
потом тишина. За первый месяц я не получил ни одного
приглашения на реальное интервью с работодателями. Клюют пока
только одни рекруты. Это что-то необычно. Тот факт, что меня
уволили, видимо, дает себя знать. Возможно, я бы мог его и не
сообщать, но мне нужны отзывы обо мне с последнего места
работы. Туда всегда могут позвонить. Если выяснится, что я не
говорю правду, то у меня могут быть проблемы. Наконец, ко мне
проявила интерес одна консалтинговая контора. Она хочет меня
"продать" мелкомягким. Еду на интервью. Предлагают работу
тестера в подразделении, которое занимается разработкой
операционной системы для чиповых карт (смарт-карт). Мне это не
интересно. Это попытка создать VB-card в противовес Java-card.
Проект малоперспективный и менеджер - немец, который недавно
приехал из Германии - мне не понравился. Вместо того, чтобы
рассказывать о перспективах проекта, он стал мне рассказывать
о его проблемах. На безрыбье и рак - рыба, но перспектив на
этой работе я для себя не вижу никаких. Пока не отказываюсь,
но продолжаю поиск. Еще одна консалтинговая фирма стала пихать
меня мелкомягким в другую группу. Мне назначили интервью, а
потом получилась накладка. Рекрут позвонила мне домой и
оставила сообщение на автоответчике, что интервью отменяется.
Я же был в это время на работе, сообщения этого не получил и в
назначенное время прбыл на интервью. Делегация мелкомягких
меня принимать не планировала, т.к. я совершенно им не
подходил. Это был прокол рекрута. Тем не менее, раз уж я
приперся, меня попросили подождать, а потом пригласили на
интервью. Из-за меня они перенесли обед. Хорошенькое начало
для интервью! Три голодных мэна ерзают на стульях и не чают от
меня отделаться. Сразу после интервью мне безапелляционно
заявили, что я им не подхожу, потому что моя квалификация
выше, чем им надо. Однако, они сказали, что передадут мое
резюме в другую группу. Стандартная песня. Рекрут мне
позвонила на следующий день. Голос у нее был очень довольный.
Она мне сообщила, что интервью было потрясающе успешным и мне
назначено другое интервью в другой группе. На этот раз мне
светило место тестера-разработчика. Это уже интересней, т.к. я
буду писать на С++, причем, предпологается использовать самые
новые технологии, которые я, кстати, не знаю. Интервью прошло
нормально и через несколько дней мне сообщили, что мне будут
делать предложение. Зарплату мне предложили немного больше,
чем я имел, но работа не постоянная, а контрактная. В моем
положении выбирать не приходится, но это не так уж и плохо.
Другая консалтинговая компания тоже не захотела со мной
расставаться и тоже сделала мне предложение. Таким
образом, к концу мой рабочей эпопеи я имел на руках два
предложения.
Настроение у меня улучшилось и последние дни я дорабатывал
без проблем. На компании быстро распространилась информация о
том, куда я иду. Мне показалось, что некоторые мне завидуют. В
последний день мне организовали прощальный обед. Я этого не
ожидал. Из нашей группы там не было никого. Не могу сказать,
что меня это огорчило. Кстати, я нашел-таки корень пролемы
альфа. Это была ошибка в проектировании электроники. Цепи
питания микропроцессора были спроектированы неправильно. Я
попросил Дэвида поставить один эксперимент, который бы это
позволял обнаружить. Он его поставил. Да. Это был сбой
микропроцессора из-за того, что в одном из режимов напряжение
питания поднималось выше нормы. Поймать это было трудно, но я
нашел способ, как это сделать. Дэвиду крыть нечем. Он опять
затаился и никому об этом не стал говорить. Он откровенно ждал
пока я уйду. На совещаниях он с явным беспокойством
оглядывался на меня. Ему не хотелось поднимать этот вопрос. Во
всяком случае, пока я еще работаю. Сам я не стал вылазить.
Зачем наживать себе врагов?
В последний день уже после обеда перед самым моим уходом
мой новый начальник вдуг захотел поговорить со мной. Это был
неформальный разговор. Мы с ним были в хороших отношениях. Я
ему рассказал о том, в каком состоянии дела и что следует
сделать в ближайшем будущем. Не забыл я проинформировать его и
о том, что проблема альфа решена. Это было, прямо скажем,
приятно. Я уходил красиво. Он мне сказал, что теперь у
компании нет программиста по встроенным системам и будущее
двух проектов в неизвестности. Мы расстались с ним очень
хорошо. Я зашел к основоположнику компании. Он тоже всегда
относился ко мне неплохо. Зашел я и к президенту, но он был
явно не в себе. Обычно всегда аккуратный и подтянутый - он
выглядел очень растерянно и растрепано. Очевидно, у него были
свои проблемы. На выходе я еще полчаса обменивался репликами с
разными людми. Мне сказали, что я их всех еще буду нанимать на
Майкрософт. Похоже, дела в компании идут не лучшим
образом.
Отъезжая я оглянулся, но не испытал абсолютно никаких
чувств по поводу этой компании. Это был лишь короткий и не
очень удачный этап в моей биографии. Сегодня пятница 30 апреля
99 г. В понедельник у меня начало нового этапа.