mishafurman: (Default)
                                        "Меня милый не целует, не подходит близко: я, мол, чистый математик, а ты программистка"
                                         (из частушки, приведенной эпиграфом в книге А.С.Кронрода "Беседы о программировании")

Только что сообразил, что работаю я по своей специальности (программист или software engineer) почти ровно 50 лет. И почти ровно половину из них в СССР, а половину в США. Я уже писал (в ЖЖ) кое какие воспоминания о свей жизни и карьере, и сейчас мне захотелось продолжить эту серию. Это могут быть как некоторые отрывочные воспоминания, так и размышления; и то и другое в основном имеющие отношение к работе.

Начну с размышления. Не раз в своей профессиональной жизни я встречался (и продолжаю встречаться) с очень плохо сделанной работой, с очень неправильными решениями принятыми в процессе разработки программного обеспечения - того, что я обычно называю идиотизмом, хотя это скорей ругательство и не всегда справедливо: нередко люди старались и просто не смогли найти лучшее или правильное решение - может и по недостатку знаний, опыта или сообразительности, но уж точно не по буквальному идиотизму: совсем идиотов в нашей профессии я, кажется, не встречал. И немало размышлял о причинах подобных проблем и/или неудач. И постепенно пришел к некоторому списку наиболее заметных (для меня) причин, корней. Некоторые из них касаются программистов - инженеров, другие - начальников - менеджеров, а многие и тех и других. Попробую перечислить несколько, которые мне кажутся наиболее важными.

1. Стремление выглядеть более умным, опытным, знающим, чем ты есть на самом деле. Это совершенно естественное желание - как здесь говорят, умение продать себя. Особенно это распространено здесь, в США - в СССР это было распространено меньше. И порой без этого нельзя: скажем, ища работу в трудные времена, если ты не рекламируешь себя как можно сильнее, то можешь вообще остаться без работы: твое резюме просто и читать не станут.
Но, при поиске-то работы - ладно, но потом это приводит к массе проблем:
- непризнание до последнего своих ошибок: ведь ты же самый умный и не ошибаешься. Во многих случаях это удается и ошибка (в лучшем случае исправимый позже "баг", а то и неверно сконструированное и неправильно работающее что-то) так и попадает в конечный продукт.
- Возможно, еще хуже: такие люди обычно постепенно начинают верить в свой завышенный уровень сами (по крайней мере частично)что сильно мешает собственному прогрессу. Они перестают учиться, меньше прислушиваются чужим мнениям и.т.д. Понятно, что последствия подобного весьма нехороши.

Повторю, что в СССР я подобное на уровне рядовых работников (в круге которых я в основном вращался и там и здесь) я встречал не часто. И что интересно, самым ярким подобным примером был весьма способный и даже талантливый человек, с которым я проработал рядом много лет (не буду называть даже инициалов - хотя его уже нет на этом свете, я могу кого-то огорчить таким упоминанием). Мне кажется, что подобное настроение (обусловленное стремлением к карьерному росту) естественно приводит к вялости и безделию позже, когда "рост" уже произошел. Для меня этот случай был особенно болезненным, когда моей работе (с небольшой группой) регулярно мешал кто-то приходящий и садившийся за соседний стол и играющий на компьютере (это были старые времена и комнат и персональных компьютеров было очень мало). В особенности, когда я знал, что он имеет степень и должность выше моей и получает зарплату по крайней мере в полтора разы выше моей!

В США я подобное встречал чаще - и среди программистов и среди менеджеров (постараюсь потом подробнее рассказать о нескольких подобных эпизодах). Интересно, что традиция подобного поведения сильна и я дважды был критикуем начальниками (правда, в обоих случаях "русскими", хотя и совсем в разных работах) за то что часто спокойно говорил, что я в чем-то не очень разбираюсь или в чем-то не уверен!

2. Для начальника: неограниченное доверие определенному лицу. Говорят, бывает еще более суровая разновидность: доверие (в технических или организационных организационных вопросах) кому-то на основании личных отношений. Я такого не наблюдал, но слышал, как в дела некоторой компании вмешивалась жена его президента. Такое особенно характерно для "русских" компаний, то есть таких, которые основаны выходцами из СССР или России.

Для больших серьезных компаний есть еще немало других дефектов, но тут мой опыт невелик и обобщений я (по крайней мере пока) делать не буду.

[Надеюсь, что продолжение следует]
mishafurman: (Default)
У меня юбилей.
И не слабый - только вчера сообразил. Конечно, не с точностью до дня - день вспомнить сложно, но тем не менее.

50 лет программирования.

Весна 1965 года, 9-й класс московской школы №7. Первый "выход на машину" с зачетной программой: Андрей Леман
придумал мне задачу достаточно примитивную с названием ПУПЛОТ: ПереУпорядочение ПЛОщадей Треугольников.
Координаты вершин треугольников как-бы "даны", но реально я использовал псевдо-случайные числа.
Помню, как я разыскивал вход в ИТЭФ - кажется, вывеска там еще не висела. Нужно было доехать до круга 22
трамвая, пройти через двор института гельминтологии (который размещался в таком же бывшем Меньшиковском
особняке, как и большинство зданий ИТЭФА), перейти большую черемушкинскую и ждать в бюро пропусков
с паспортом...

Машина М20 занимала большую часть другого особняка на территории ИТЭФа - второй этаж - собственно ЭВМ,
а на первом - холодильные установки: машина была ламповая и охлаждение было нужно основательное.
Еще где-то рядом гудели/звенели 400-герцевые мотор-генераторы.
Ввод - с перфокарт; единственным выводом (кроме тоже перфокарт) было печатающее устройство, которое
умела печатать только цифры (плюс несколько знаков) на бумажной ленте формата практически
тождественного современной рулонной туалетной бумаге.

И с тех пор, вот уже 50 лет, программирование, а вернее создание программного обеспечения является
для меня профессией и основным занятием. Долго ли еще?
mishafurman: (Default)
Что-то я заработался последние недели.

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

Работать я люблю; видимо некоторая инженерская жилка существует во мне с рождения, вероятно наследственная: и мой дед по украинсой линии, и прадед с прапрадедом по шведской были крупными инженкрами.
С детства я больше всего любил два занятия:
- разламывать что-то, чтобы полсмотреть, что там внутри и как оно работает.
- "изобретать" что-то и пытаться реализовать свои изобретения.
Со вторым, особенно в части реализации было непросто - поэтому я сначала увлекся электроникой: паяльник и коробки с разными деталями (в основном от разобранного раньше) позволяли очень многое.
Поэтому, когда я услышал о компьтерах и, главное, понял что это такое, я понял, что это будет занятием моей жизни - и не ошибся.  Возможность строить что-то почти неограниченно сложное используя минимальные ресурсы - это меня опьянило тогда (мне было 14 или 15 лет) и продолжает опьянять всю жизнь.

Так вот, о закономерности. Почти на всех моих работах (а, может, на всех), что бы мне не поручали, я рано или поздно находил что-то, что было для меня интересно. И - нередко, было реально полезно или просто нравилось начальству (хотя однажды меня уволили за то, что я нечто не совсем тривиальное сделал слишком быстро :) ). Эти мои, интересные (по крайней мере, для меня) проекты, по моей оцеке, делились на две группы:
1.  Вещи сравнительно простые и очевидные (по крайней мере по идее).
2.  Вещи нетривиальные - "изобретения". Таких - естественно, меньше, и я не имею в виду, что это полноценные изобретения - часто это бывали повторения или улучшения чужих идей и.т.д.

Но не в этом дело: я не хочу и пытаться эту мою субъективную классификацию превращать в объективную.

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

Такой супер-смягченный вариант "За милиард лет..." Стругацких :)
mishafurman: (Default)
Интересно, что я стал больше замечать это только недавно: на работе люди не признаются, что
они что-то не знают. Видимо раньше (больше в СССР) я вращался в гораздо более академической
по духу среде... И, скажем, если я (или кто-то) чего-то не знаю (конечно, если это не целая большая область, скажем, наука), это для меня не так много значит: что за проблема выучить?
Скажем, какой-нибудь незнакомый язык программирования. Или алгоритм.
Но, оказывается, люди боятся. Или - стыдно, или начальство реагирует (я, конечно, не говорю,
скажем, о ситуации интервью, когда это очевидно, а о нормальном рабочем общении).

Первый раз я удивился, когда на одной из первых моих американских работ, я стал объяснять
моему начальнику (Л.Г.), как работает DMA на PC-шной шине и он стал чуть не кричать на меня - за
кого я его принимаю. А я принимал за того, каким он был - из начала разговоря было видно,
что он не знал, что бывает DMA controller и не нужно делать всю логику обращения к памяти
в устройстве, которое мы разрабатывали и считал что использовать DMA слишком дорого.

Потом, помню, на других работах С.П. (тогда - президент) и Б.К. (директор) морщились и
потом (наедине) критиковали меня, когда я на совещаниях говорил, что я что-то не знаю или
в чем-то некомпетентен :)
Я еще подумал что это "русская" особенность (все перечисленные люди были "русские").
Но - на моей нынешней работе вижу, что это не так: при нормальном рабочем общении
люди сплошь да рядом стараются припрятать свое незнание! И - совершенно не "русские":
китайцы, индусы, "американцы"... И для работы, надо сказать, очень неудобно.

Век живи, век учись. Кто знает, как много я потерял на том, что не следовал этому
принципу скрывания :)
mishafurman: (Default)
Что-то так заработался (выходные, большой викенд - самое лучшее время :) ),
что неуспеваю даже читать полностью friend-ленту...
mishafurman: (Default)

Я понял что мне напоминает работа в большой компании: службу в армии. Хотя я по настоящему в армии не служил - так, два месяца лагерей, занятия на военной кафедре - но это, плюс чьи-то рассказы, книги представление дают. И главное здесь не в том, что особенно выпирает в советской/русской армии - издевательства, дедовщина. И даже не откровенный идиотизм
(как у Гашека) - по крайней мере здесь, в Америке, этого немного. А безликая, многоэтажная, часто бесформенная система управления.

Часто не знаешь, что будешь делать завтра. Иногда и принцип "солдат спит, служба идет" работает. Часто знаешь, что что-то
(иногда и почти все) неправильно, а сделать почти ничего нельзя - потому что слишком много людей, включая начальство, в 
это вовлечены.... В маленькой компании меня однажды выгнали за то, что я сделал нечно за пару месяцев вместо планирумых пары лет, да и несклько по другому. А здесь, такое, наверное почти никто и не заметит...

Но - и плюсы. При чем я не о очевидном развращающем плюсе - хорошей зарплате, премиям, отпускам и.т.д.
Там где я сейчас работаю - уровень людей довольно высокий. И - как обратная сторона медали, одну из которых я только что 
описал выше - люди часто свобОднее в общении. Например в маленьких стартапах, в которых я работал, если кто-то искал
другую работу, могло иногда рассматриваться как чуть ли не предательство. Здесь - ничего подобного...

Поэтому, поговорить с кем-то на рабочую или около-рабочую тему возможностей больше.

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

Например, попросили меня посмотреть недавно добавленный в одну программу код, который работал медленно, нельзя ли его улучшить, ускорить. Я переписал и ускорил критическую часть в 30 раз. Причем, алгоритм улучшить не удалось - только оптимизация кода и представления данных!

Ощущение у меня, что программированию учить практически перестали - что в США, что в Индии или Китае - большинство людей здесь учились в одной или нескольких из этих стран...
mishafurman: (Default)
                                                                                                                "... eще один ненужный день ..."

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

Разве что, в сравнительно раннем детстве - наиболее характерным случаем было когда с нетерпением чего-то очень желанного ждешь. Скажем дня рождения с подарками, нового года, переезда на дачу или обратно. Или просто ждешь маму с работы. Время в таких случаях какзалось идущим медленно-меедленно. И объяснить это можно было общеизвестным законом зловредности (который иногда называли еще законом бутерброда).

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

А ближе к старости непосредственныеt эмоции несколько затихают - и, так как для меня наибольшее время занимает работа - именно она является главным ускорителем или замедлителем времени. Если я делаю что-то разумное (с моей, конечно, точки зрения) и с определенным трудом получаются результаты - время идет медленно. А вот, когда работа не идет, или, в особенности работы или стимула к ней нет - ывремя идет быстро - быстро.

А под старость это особенно обидно. Я хорошо помню, как в детстве я с нетерпением ждал когда мне будет 12 лет. Или 15 - или еще какая-нибудь цифра, которая почему-то казалась "круглой". С которой ожидались (а иногда и в самом деле приходили) какие-то новые, более взрослые события или возможности. А о старости и смерти - тоже думалось нередко, но как о чем-то нереальном, очень далеком. Как-бы о другом человека.

А сейчас все по другому: ведь этот другой человек это я...
mishafurman: (Default)
По случаю последних дней перед переходом на другую работу, нас развлекают.
Обычно я в подобных развлечениях не участвую, но тут - вчера принял приглашение
от начальства сходить в кино.

"Inception" - фильм на мой взгляд довольно неважный. В начале мне было совсем тошно, но где-то к самому концу я чуть оживился.
Смесь слегка сумасшедшего сюжета - события разыгрываются в трех уровнях стов (то есть наява, во сне, во сне, который видится во сне, и еще на уровень глубже. Все это сопровождается грандиозными эффектами - и на фоне трогательной любовной истории главного героя... И - (IMO) абсолютный перебор...

Но - вспомнил молодость, когда ходил иногда в кино на action-фильмы, чтобы отдохнуть - действительно, большую часть фильма забываешь обо всем на свете...
Но фильм мог бы быть и получше!
mishafurman: (Default)
Что-то около недели осталось от давно запланированного (почти без моего участия) моего увольнения из Yahoo и начала работы в Microsoft OSD (Online Services Division). Делать довольно откровенно почти нЕчего...
Минут на 15 дальше от дома - в Mountain View... Примерно между Google и Yahoo :)
mishafurman: (Default)
Завтра должны вручить офер. А пока дали, вот, майку:



PS: а вот и он:

mishafurman: (Default)
Перемена работы эквивалентна половине потери работы.

Эту формулу я "вывел" из пословицы, которую любил мой (когда-то) старший друг и учитель Александр Семенович Кронрод: "Два переезда эквивалентны одному пожару"!

И все же, объективно, ситуация, в которой я оказался сейчас, значительно лучше, чем потеря работы. Компания, в которой я работаю сейчас решила передать меня (не одного - в составе нескольких сотен человек) в другую компанию... И - уж так случилось, что меня работа в этой другой компании не очень-то привлекает...
Я могу и отказаться и мне (как и всем) почти обещано, что на старом месте работы хватит. По крайней мере на некоторое время; потом - неизвестно, Словом, если оставаться - надо искать работу. Или внутри или снаружи...

Кажется второй раз в своей рабочей жизни я нахожусь в ситуации, когда меня хотят "перевести"
на другую работу. Первый раз это было около 30 (скорее, 35)
лет назад - тогда планировался переход большого
коллектива из ИПУ во ВНИИСИ и это делалось под большим секретом: до последнего момента большинство ничего не знало (боялись мести со стороны руководства ИПУ,
из которого мы уходили). Тогда, впрочем, это было почти для всех желанным - исключение составляли только несколько человек, планирующие
эмигрировать: приглашавший нас директор ВНИИСИ Гвишиани недвусмысленно обещал оформить всем допуск (секретность) как раз
для того, чтобы отфильтровать потенциальных эмигрантов и обезопасить себя от будущих скандалов (это было советское время и каждая
подача на отъезд означала скандал, обвинения в предательстве, увольнение и, масса неприятностей в том числе и начальству).

Я тогда, хотя и думал о выезде, но вяло - масса обстоятельств меня от этого удерживали. Надо сказать, хотя и было несколько попыток потом оформить мне секретность, мне удалось от них отвертеться...

Интересно: статистика причин по которым я менял работу:
- внешние обстоятельства (окончание института, эмиграция) - 2
- "перевод" в составе группу людей (1 + 1, возможно, предстоит).
- по собственной инициативе 1 (в СССР), 2 (в США).
- по сокрашению 1.
- по существу, выгнали 1.
- компания закрылась оставшись мне немало должна - 1.

Profile

mishafurman: (Default)
misha furman

December 2016

S M T W T F S
    123
45678910
111213141516 17
1819202122 2324
25262728293031

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 22nd, 2017 06:39 pm
Powered by Dreamwidth Studios