рейтинг блогов

Каково это – быть разработчиком в России, когда тебе сорок

топ 100 блогов zsbooka29.07.2020 Не моё, но интересно и жизненно...

Привет всем, я – сорокалетний программист-самоучка, и это моя история.

Пару недель назад я наткнулся на график распределения людей, интересующихся технологиями, ИТ и программированием. И он заставил меня задуматься о моей карьере.

Каково это – быть разработчиком в России, когда тебе сорок

Через каких-то 20 лет мне стукнет 60. И вероятность того, что я ещё смогу заниматься тем, для чего был создан, составляет очень крошечную величину. Эти размышления привели меня туда, откуда всё начиналось.

Я дебютировал в роли разработчика программного обеспечения в 1990 году, через год после того, как мне на 14-тилетие родители подарили ПЭВМ «Микроша».

Мир в 1990 году

Тогда он был немного другим. Слова «Интернет» в СССР мы тогда ещё не знали. У родителей на производстве использовались ЕС ЭВМ, которые выглядели так:

Каково это – быть разработчиком в России, когда тебе сорок

Карманные компьютеры (КПК) Palm тогда ещё не существовали в природе, и их место занимали микрокалькуляторы «Электроника» всевозможных моделей. О программируемом калькуляторе можно было только мечтать, цены на них были заоблачными.

Каково это – быть разработчиком в России, когда тебе сорок

В прокате отечественного кинематографа крутили «Кин-Дза-Дза», Алиса Селезнёва регулярно боролась с космическими пиратами на каналах центрального телевидения. Холодная война завершалась, в космосе царил мир, а за посадкой в беспилотном режиме космического челнока «Буран» я годом ранее наблюдал по новостям в прямом эфире. Да, беспилотная посадка многотонного объекта с аэродинамикой утюга – это было реально круто!

Каково это – быть разработчиком в России, когда тебе сорок

Мой первый опыт в качестве разработчика

Как утверждает А.В.Столяров в своей книге «Программирование: введение в профессию», программистом человек становится тогда, когда его программа становится нужна другим людям и они готовы заплатить за неё деньги.

Благодаря прекрасной документации на компьютер «Микроша», написанной в конструкторском бюро «Лианозово» (которую я храню до сих пор как образец составления руководства пользователя), я за полгода освоил Бейсик, успел в нём разочароваться с точки зрения скорости выполнения программ, и начал писать свою первую игру на Ассемблере. И рядом со мной никого не было, кто разбирался бы в программировании и компьютерах.

В соседнем дворе жил школьный товарищ, которому родители подарили компьютер «Партнёр 01.01». Компьютер у него лежал в коробке, а товарищ не знал как подключить его к магнитофону, чтоб загружать программы. Я пришёл к нему, наладил, и мы стали поочередно ходить друг к другу в гости, чтобы поиграть. Игр было немного и к тому же между нашими ЭВМ была небольшая аппаратно-программная несовместимость вплоть до формата записи на магнитную ленту. Поэтому загрузить программы от одного компьютера в другой мы не могли.

Товарища в компьютерах интересовали только игры, и вот когда все игры были переиграны, я ему показал, как я пишу игру для себя. Это была вертикальная скроллер-гонка на Ассемблере. Он загорелся этой игрой и попросил сделать ему такую же. Я объяснил, что дело будет долгим: придётся вручную перенабирать на его компе длинный листинг Ассемблерной программы или вбивать килобайты HEX-кода, поправляя в них адреса процедур и портов, которые на наших компьютерах различались. В конце концов, я пришёл к нему вечером и написал за один присест аналог своей игры, но только на Бейсике. В игре была дорога, машинка из буквы «Ж» и бревна из символов решетки #####. Чем дольше шла игра, тем Уже становилась дорога, длиннее брёвна и выше скорость. В углу щелкал счётчик километров. Сейчас такую игру назвали бы аркадой со случайно генерируемым ландшафтом.

Написав игру, я ушёл домой, сказав, что 100 км в ней проехать невозможно. Через 3-4 дня позвонил довольный товарищ и сказал, что смог проехать больше. Оказывается, он круглыми сутками рубался в эту нехитрую игру и в какой-то момент брёвна на дороге разместились так, что можно было проехать. Потом он позвал к себе ещё пацанов и они рубались в неё не прекращая. Родителям это не нравилось и они обмолвились, что надо брать деньги за игру на компьютере, как это делали кооперативщики в игровом Спектрум-клубе. Поток желающих резко снизился, но какие-то деньги он успел заработать. Половину денег он отдал мне, сказав, что если бы не моя игра, он бы вообще не заработал ничего. Так я стал разработчиком, удовлетворяя всем условиям критерия Столярова.

Высшая школа

В институт, с точки зрения программирования, я шёл неплохо подготовленным. Не у каждого за плечами было несколько лет программирования на языке высокого и низкого уровня плюс сгоревший компьютер, который не выдержал своего превращения в голосовой автоответчик в связке с магнитофоном «Ореанда 204-C». «Программистских» специальностей в нашем ВУЗе не было, но была кафедра микроэлектроники и полупроводниковых приборов. Кафедра создавалась для радиозавода, который был построен на окраине города. В год, когда я начал учиться, персоналу перестали выплачивать заработную плату и завод закрыли.

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

В институте нам преподавали язык Си. С этим императивным языком у меня не было проблем, за исключением указателей. Зная Ассемблер КР580ВМ80А и успев поковыряться с i8086, я недоумевал, как можно было так уродливо сделать такую простую вещь, и почему эту уродскую реализацию ещё и приняли в стандарт. Но я заставил себя воспринять это как должное.

В последний семестр курса по программированию нам номинально прочитали какой-то сумбур по Си++. Этот язык «преподавал» человек, который вообще в нём не разбирался. Лекции он читал по бумажке. Такое положение дел было нормой тогда и, насколько понимаю, остаётся нормой по сей день. «Концепция объектно-ориентированной парадигмы предельно проста. Каждый объект в системе представляет собой инкапсулированную абстракцию, наделённую свойствами наследования и полиморфизма» – вот что мы заучивали на лекциях. В итоге, на практическом экзамене по С++ я был единственным человеком, который писал решение на этом языке. Остальные писали на C. Я подготавливался дома, днями мучая плюсовую часть компилятора TurboC, чтобы заставить компилироваться одну-единственную программу в ООП-стиле на 300 строк. Это было дело принципа: если я учу Си++, то я должен понять, как написать и скомпилировать хотя бы одну программу. Это было трудно, неудобно, и вызывало недоумение: зачем придуман такой извращённый язык? Зачем защищать данные внутри программы от самой себя? В конце концов, я механически запомнил конструкции языка и их совокупность, образующие костяк программы, которые «хотя бы работали». А на экзамене просто это повторил. Преподаватель, как и я, был в трансе, когда увидел скомпилированную на экзамене Си++ программу (это были часы, в которых циферблат и стрелки были отдельными объектами). Я тогда дал себе слово, что никогда больше не притронусь к Си++. И рядом со мной никого не было, кто разбирался бы в ООП и в программировании на плюсах, и сказал бы: товарищ, ничего тут сложного нет.

Учась в институте, я стал подрабатывать, чтобы помогать родителям. Шли девяностые годы, и каждая копейка была на счету. Первый серьёзный заказ был от сокурсника, отец которого был директором собственного предприятия. Им требовалась программа для учёта горюче-смазочных материалов. Идея заработать на своих умениях программировать была заманчива и я согласился. Хотя, положа руку на сердце, какое мне дело до горюче-смазочных материалов? Мне хотелось разобраться как кодить 3D на голом процессоре и играться с вокселями. Но я понимал, что за это платят где-то далеко, но не у нас. Поэтому я краем глаза смотрел на базы данных, и к тому моменту уже полгода экспериментировал с FoxPro. Я пришёл в контору предприятия и стал выяснять, что же им, таки, нужно. Говоря языком разработчика, я собирал историю пользователя. Мне показали какую-то бухгалтерскую систему и рассказали свои проблемы. Проблема была в том, что они вели суммовой (денежный) учёт, а им нужен был количественный, с детализацией по потребителям и местам хранения. Это сейчас я так точно говорю, в чём была проблема, а тогда на меня вылили полную кучу взаимоисключающих параграфов и выразили надежду, что я смогу в этой каше разобраться. Я записал себе всё, что успел понять, взял месяц на разработку, и сделал эту небольшую учётную систему.

За день до передачи заказчику, у меня щёлкнула мысль: а что, если мне за этот вынос мозга не заплатят? Скажут, например, что программа не подошла, и откажутся платить. А потом будут использовать. Или не будут. Но я-то ночи не спал, измотался вконец. Я сидел, думал-думал, и наконец решил: вставлю защиту по времени. Если мне не заплатят в течение месяца – программа перестанет работать. Если её никто не будет использовать, то об этом никто не узнает. А если заплатят и станут использовать, то я после получения денег скажу, что в каталоге с программой надо просто удалить файлик с определённым именем. И я сделал защиту. На FoxPro сделать защиту – это та ещё проблема. На тот момент уже существовало два декомпилятора, которые практически один-в-один восстанавливали исходный код. Но я, рассудив, что вряд ли заказчик станет искать человека, который сломает защиту, немного обфусцировал код, скрыв от посторонних глаз вызов системной ошибки. На следующий день я отдал программу, показал как в ней работать, но обещанных денег не получил.

Сумма, кстати, была небольшая – уговор был о деньгах в размере месячной стипендии. Но мне сказали, что выплатят через неделю, когда на предприятии будут выдавать зарплату. Что произошло через неделю? Правильно, денег мне не выплатили, сославшись на то, что в этом месяце фирма мало заработала, и вот именно на меня не хватило. Я внутренне похвалил себя за свою предусмотрительность. Даже если я останусь без денег, то хотя бы буду удовлетворен тем, что в один прекрасный момент программа (без моего вмешательства!) откажется работать с нехорошими людьми. И я больше не стал о себе напоминать. Нет – значит нет. А дальше всё произошло как по нотам. Окунувшись в учёбу, я уже и забыл про свою программу. Я был дома, когда вдруг зазвонил телефон. Звонил мой сокурсник, отец которого заказал программу. Он сказал, что моя программа перестала работать, а в ней уже накопились данные и недельные отчёты за целый месяц. Я скромно напомнил, что мне за программу ничего не заплатили. И спокойно сообщил, что делать категорически ничего не буду, пока не увижу денег. Сокурсник очень обиделся, сказав, что не ожидал от меня такой подставы. Но через 2 часа привёз деньги, а я ему сообщил, какой файл надо удалить. Больше я с ним дел не имел.

Этот эпизод глубоко убедил меня в том, что лучшие друзья девушек — это алмазы лучшие друзья программиста – это его собственные программы. Они не подведут, и всегда будут работать так, как задумано. И единственное, на что я могу в жизни опереться (помимо родителей, конечно) – это мои собственные программы. Они меня – как люди – не подведут. А для того, чтобы они не подводили, программы надо писать хорошо.

Завершение учёбы

В конце учёбы, на пятом курсе, я одновременно подрабатывал на трёх работах. Вообще, с работой тогда было туго: даже взрослые люди сидели на мели. Родители мои были из тех, о ком упоминалось в смешном анекдоте: мама – врач, а папа – инженер. Устроить они меня могли только в своей сфере деятельности. У отца на заводе с ЗП было полностью глухо: завод стоял и разворовывался. Поэтому в трудоустройстве мне помогала мать.

Работа раз

Три раза в неделю я из города ездил в деревню, в центральную районную больницу, где работал на должности «тыжпрограммиста». Да, уже тогда существовал мем «тыжпрограммист». Поддержка бухгалтерии, расчёт зарплаты, подача отчётности в налоговую и пенсионнный фонд, медицинская статистика и социальное страхование. Что-то досталось по-наследству от предыдущего работника. Расчёт зарплаты приходилось дописывать в соответствии с меняющимся законодательством. Медстатистика была написана с нуля. FoxPro, Clarion, Си для мелких утилит. Локальных компьютерных сетей мы тогда ещё в глаза не видели и я делал распайку навесного LPT-порта, чтобы соединить компьютеры на двух этажах через LPT-линк в Norton Commander. Хотя, какое мне дело было до бухгалтерии, статистики и отчётности в налоговую? Я ночами разбирался с CORDIC-алгоритмами, адаптируя чудом найденный листинг мотороловского ассемблера на i8086. Я добрался до BUMP-маппинга в реальном времени на микропроцессоре i386. Я открыл для себя FIDO, а через него и и демосцену. Ассемблер, сплошной Ассемблер, и микроскопические размеры программ. Первые свои intro я делал для своих фидошных нод. А рядом со мной не было никого, кто бы разбирался в этом низкоуровневом программировании графики и звука.

Работа два

Ещё 2 раза в неделю я работал в мастерской «Медтехника». Выработка там считалась по починённым приборам. Мне отдавали всякую рухлядь, с которой никто не хотел возиться. Есть такие типы поломок, когда прибор то работает, то нет. Диагностировать проблему в таких условиях очень сложно. Лучше бы он просто сгорел и не работал, тогда было бы сразу ясно что чинить. Опыта у меня не было, и вообще я себя считаю рукожопом в электронике, посему мучился изрядно.

В какой-то момент владельцу мастерской пришла на ум бизнес-идея закупать оптом фотоплёнку для рентгенографии большого формата и нарезать из неё малые форматы. С малыми форматами почему-то везде была проблема, медучреждениям их негде было достать. А чтобы продавать плёнку, нужна была упаковка. Были куплены два километровых рулона светонепроницаемой бумаги для внутреннего и внешнего конверта. Сварили опоры для рулонов, поставили металлический стол. Получился импровизированный станок. В этом деле я не участвовал, только наблюдал со стороны. Я видел, как директор со своим замом сами резали бумагу, пытаясь придумать ручную технологию быстрого изготовления конверта. Они стояли с секундомером, и замеряли, сколько времени у них уходит на один конверт. Но как они делали этот конверт? Меня поразило, что они не стали разбивать технологические операции резки, сворачивания и склейки на этапы, а делали разную работу последовательно для каждого конверта. Резку они делали канцелярским ножом под металлическую линейку. При разметке листа они крутили линейку и так и эдак, и на это уходило много времени. Я не выдержал, подошел, и поинтересовался, почему они не нанесут разметку прямо на стол? Это предложение их поразило. Как просто! Они поинтересовались, что ещё можно сделать. Я рассказал им выжимку об организации технологических процессов и внёс несколько изменений в станок. И кого, в итоге, поставили резать бумагу? Нет, не таджика с улицы. Я резал бумагу месяц, постепенно понимая, что тупею от такой работы. Через месяц кончилась фотоплёнка и я снова начал чинить приборы. Один раз я ошибся, и включил трансформатор без сердечника. Трансформатор сгорел, и его пришлось перематывать. Стоимость потраченной медной проволоки вычли из моей и так мизерной зарплаты. Меня это доконало окончательно и с медтехникой я завязал.

Работа три

Третье рабочее место. Сутки-через-три сторожем в детской поликлинике. Прекрасная работа, чтобы почитать книжки. Если бы у меня была возможность притащить компьютер на эту работу, я там хотя бы писал свои программы. «Так взял бы ноутбук!» – скажет современный читатель. Но о ноутбуке я не мог и мечтать. У меня была ещё свежа в памяти поездка с отцом в командировку в Москву на ВДНХ, где я увидел в торговом павильоне цены на ноутбуки, которые были выше цены автомобиля. Я тогда ходил потрясенный и всё никак не мог понять: неужели находятся люди, которые готовы купить ноутбук за ТАКУЮ цену? И рядом со мной не было человека, который бы сказал: чувак, в нормальных конторах такие ноутбуки выдают для работы бесплатно!

Свободный полёт

В 1998 году я закончил институт. Диплом с отличием на руках. Ещё в активе у меня 2 смешные работы со смешными зарплатами. На Кавказе вторая чеченская война, а я призывник. В аспирантуру не взяли – туда только по великому блату, потому что бронь от армейки. Очень хорошая перспектива – 5 лет учиться, получить диплом с отличием, и со всем багажом знаний отправиться на реальную войну. Но благодаря дырявому законодательству я стал официальным единственным опекуном и получил отсрочку. Одна проблема была решена.

Однако была вторая проблема: отсутствие приличной работы. И была третья проблема: в стране случился дефолт. То есть, до дефолта я думал, что хуже быть не может. А при дефолте узнал, что может. На работу ходить не имело никакого смысла: заработанных денег хватало только на проезд до работы. Оставался только один вариант: понаехать в Нерезиновую, а там – как кривая выведет. Некоторые родственники новоиспечённых инженеров уже перебрались в Москву: работали на стройках, на рынках, в электричках. В тот момент устроиться по специальности в Москве не было никакой возможности: без прописки Москва-Подмосковье на работу не брали. По сути, человек был нелегалом в столице своей родины.

Кусочек лета и потом с осени до весны я бегал по московским электричкам, торгуя копеешным товаром: отрава для тараканов, стельки, некондиционные фломастеры, книги, чай из пыли с чайных фабрик, просроченное кофе, ножи для мясорубок, прочая неимоверная дребедень. По выходным торговал на рынке радиотелефонами. Параллельно пытался найти настоящую работу, но везде был отказ по причине отсутствия прописки. Один раз, казалось, нашёл компанию, которая могла бы меня взять на работу. Во всяком случае, в требованиях не было упоминаний о прописке, а при звонке менеджер ничего не знал о том, нужна прописка или нет. Контора занималась организацией бухгалтерского/складского учёта, внедряла 1С, и им нужны были расторопные люди. Приём на конкурсной основе. Я пришёл на собеседование, написал тест, и из толпы в сколько-то десятков человек осталось только двое. Далее было личное собеседование, на котором состоялся эпичный диалог:

– Вы нам подходите. И последний вопрос: вы где живёте?
– В Пушкино (я снимал там угол).
– Прописка Подмосковье?
– Нет. Юг России.
– Ну что ж вы так… Конкурс вы не прошли!

Конкурс, мать его, не прошёл. Кровь сдал, мочу сдал, кал сдал, на математике завалился.

Один мимолётный положительный момент пребывания в Первопрестольной всё же был: я смог попасть на фестиваль компьютерного искусства ByteFall-99. Он тоже по причине кризиса переносился, но в конце концов был проведён. Я выставил там свое интро, которое написал ещё в институте. Доступа к компьютерным сетям Интернет/Fido у меня не было, поэтому заветную дискетку пришлось вести организаторам ногами. Организатор работал админом в Христианской миссии – какие-то католики или протестанты, я в них не разбираюсь. Он фанател по Линуксу и тогда я на полчаса залип – впервые увидел линукс в реальной работе.

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

Легальная работа

1999 год, начало лета. Я сидел и с удивлением смотрел на свои руки. Пока я был в Москве, они стали деревянными. Пальцы забыли, где находятся буквы на клавиатуре. Куда девались мои неторопливые 250 симв/мин? Странная игра мозга: иногда вспоминаю раскладку JCUKEN своего первого компьютера, хотя за годы учёбы и работы с PC уже мог бы привыкнуть к QWERTY.

Чем может заняться инженер кафедры микроэлектроники в городе, где он никому не нужен? По сути, только сопровождением компьютерных учётных систем. И я пошёл работать в государственные налоговые органы. Мне сразу дали должность ведущего специалиста. Но зарплата… Она рассчитывалась по каким-то древним нормам, и была чисто символической. И честно говоря, какое мне дело было до тонкостей расчёта подоходного налога на физических лиц с поправками от ДД.ММ.ГГГГ? Я бредил искусственным интеллектом и экспертными системами. Чтобы совсем не закиснуть на работе, я ночами писал виртуального игрока на основе дихотомайзера для игры, теории которой я нигде не мог найти. Экспертная система на то и экспертная, что ей можно формализовать те закономерности, которые разработчик сам не знает, и для этого достаточно обучить её на образцах «правильной» игры. И когда мой электронный игрок обыграл меня, я был просто счастлив. Игра называлась «Акционер». Я и мой товарищ, писавший GUI, планировали продавать игру. Но из этого ничего не получилось. В конце концов мы выложили игру в свободный доступ. Спустя 15 лет со мной связался автор, который публиковал правила этой игры в журнале «Наука и жизнь». Он написал, что нашел нашу игру и несколько раз играл «вничью». Это было круто.

Прошёл год. Страна стала оправляться от дефолта. Стал восстанавливаться наш градообразующий машиностроительный завод. Ну, как восстанавливаться… Гости с туманного Альбиона, купившие по дешёвке советский завод атомного машиностроения, решили начать извлекать из него прибыль не только путём продажи оборудования на металлолом. Через знакомых я случайно узнал, что на заводе формируется инжиниринговый центр, куда набираются специалисты. Плевать, что не по моему профилю, но хотя бы зарплата будет взрослая. В конце концов, в приложении к диплому в графе инженерного конструирования стояло «отлично». Я схватил документы, прошёл собеседование, устроился в штат и через неделю уже ехал в командировку в Питер. Зарплата, командировочные – можно копить на жильё. Хотя какое мне дело было до теплообменного оборудования, трубных решёток, фланцев и компенсаторов? Нейронные сети, обучающие выборки, распознавание образов – вот интересная тема! А что, если нейросетку применить к кодированию видео? Чёрт, MPEG-4 именно это и делает…

Из инженера-конструктора я переквалифицировался в инженера-расчётчика с уклоном на расчёты потоков жидкостей и газов. Основные инструменты – MathCad для аналитических решений, UniGraphics для геометрии, AnSys и StarCd – для конечно-элементного анализа. В MathCad можно программировать – ура! В AnSys можно писать скрипты – прекрасно, будет параметрическая геометрия! Для StarCd нужен STEP-конвертор, спецификация есть – напишем! Ах да, ведь в мире ещё есть Интернет и кто-то пишет сайты. И всё это крутится на Linux! Надо его поизучать. А что такое PHP 4-й версии? О боже, это скриптовый мультипарадигменный язык с классами! Неужели ООП может быть таким простым?

В это время вернулся из армии мой товарищ, с которым я работал на электричках в Москве. Он хороший схемотехник и мы решили вместо пасеки, параллельно с основной работой, пощупать бизнес по изготовлению светодиодных табло типа «бегущая строка». Лучше б мы занялись пасекой. Мы наивно полагали, что если сможем сделать недорогое и простое (в нашем понимании) изделие, то сможем обеспечить своё существование. Для начала решили сделать тестовую модель. Бегущая строка состояла из самодельной светодиодной матрицы и самодельной платы с микросхемой КР580ВВ55А, которая по LPT-порту вставлялась в материнку i386. Расчёт был на то, что материнки с i386 к тому времени настолько устарели, что их можно было закупать килограммами за копейки. А нашему ПО большего и не требовалось. Я сделал несложный язык разметки для вывода сообщений, в котором были подгружаемые шрифты, анимированные спрайты, эффекты, мета-символы даты-времени, значения датчиков. И написал драйвер для вывода динамической картинки на наше устройство. Когда прототип был полностью собран и заработал, мы стали подсчитывать, сколько будет стоить конечное изделие. Оказалось, что самое дорогое – это изготовление матрицы с диодами и корпус. Те цены, которые озвучили местные предприятия за сверление ровных отверстий в пластике и изгиб металла, были какими-то неадекватными. Они в разы превышали цену готовой бегущей строки, которую можно было достать в Китае. Мы продали опытный образец по цене комплектующих, и на этом наше высокотехнологичное предпринимательство закончилось.

Три года я занимался расчётами. Не сказать, что это дело из лёгких: большая ответственность, и каждый день как экзамен по физике. Задачи всё время новые: то расчёт напряжений, то тепло-массо перенос, то профилирование аэродинамики, то трубные пучки. Везде своя методика, везде свои особенности. В какой-то момент я понял, что меня не хватает на всё. Добил меня заказ на масляный теплообменник для корабельного оборудования. Морская тематика – это вообще отдельная песня. У неё свои нормы и требования, сильно отличающиеся от классического, наземного машиностроения. Я «куснул» задачку, но существующая методика расчёта давала погрешность больше, чем степень оптимизации характеристик. Гуру расчётной группы пожали плечами: выкручивайся как хочешь, мы не знаем как считать. Вместо аналитического решения решил применить конечно-элементное. Но была загвоздка: масло сильно охлаждалось, и изменением вязкости нельзя было пренебрегать. Требовались расчёты с изменяемыми параметрами среды. В пиратском StarCd был требуемый функционал (да, тогда все ПО на производстве было пиратским), но в нём была ошибка: терялись коэффициенты расчётной формулы. И обойти это было никак нельзя. Я даже пытался вывести коэффициенты для эквивалентной формулы, где были бы скомпенсированы потерянные коэффициенты, но нет. По очень дальним связям, в каком-то московском институте я нашёл человека, который занимался расчётами в этой программе. И он сказал, что проблема существует, и никак не решается в той версии ПО, которое у меня. Зато в более новых версиях проблема решена, вопрос только в покупке. Я сообщил об этом главному инженеру, но он только покрутил пальцем у виска: где это видано, чтобы программы покупали для производственных нужд? А что касается расчёта – надо писать фиктивный и закрывать сумму за выполненную работу. Я отказался и после странного разговора «либо пишешь левый наукообразный расчёт и ставишь подпись, либо валишь», уволился по собственному желанию.

Куда идти теперь? Бывший институтский товарищ работал у самого крупного в городе владельца продовольственных магазинов. Тогда только появилась тема магазинов самообслуживания, забытая с советских времён: всю перестройку людей боялись пускать к товару и вся торговля в городе была прилавочной, и, соответственно, медленной. Владелец очень боялся, что в город придёт сеть «Магнит» и «Пятёрочка», поэтому было принято решение переводить магазины на формат торговых залов. Требовался человек для реализации этой идеи. За неимением лучшего предложения от работодателей, этим стал заниматься я. Хотя, какое мне дело было до электронных весов, сканеров штрих-кодов, проводок в 1С «Рарус» и кассовых модулей? Компьютерная графика и анимация! Что из самого доступного? Flash! VirtualDub и потоковый скриптинг на AVISynth! Что сделать, чтобы разобраться в технологии? Конечно, собственный клип! Днём – работа чтоб покушать. Ночью – творчество.

За год, – страшно вспомнить, – я запустил четыре магазина самообслуживания. Они были первые в городе. На остальных отставали строительные работы. Наступило относительное спокойствие: приход «Пятёрочки» с «Магнитом» откладывался. Что бы ещё навешать на ИТ-специалиста, который сопровождает 3 маркета и четвёртый с приставкой «супер»? Конечно, ревизию! Тыжпрограммист, считать умеешь, и пока работы немного (магазины ведь волшебные и работают сами по себе), надо ночами считать товар. А если недостача? Ну, давай посмотрим: магазины вверены тебе, учёт ведётся на компьютерах, значит кто отвечает за недостачи? Понятно?

Проведя несколько ревизий и видя, какие дела творятся в торговой сети, я твёрдо решил съезжать с этой темы. Но надо понимать, что лихие девяностые в глубинке продолжались и в двухтысячных. Владельцы крупных городских бизнесов – люди непростые, и многие вещи решаются «по понятиям». Поэтому просто так с темы не съедешь. И именно в этот момент произошло невероятное: одному моему товарищу мама подарила квартиру в Москве, а сама вышла замуж и уехала в Италию. Он перебрался в Москву и каким-то образом устроился на работу бета-тестером в контору, которая писала игры под Linux. Он рассказал про меня, и меня пригласили на собеседование. Я собрал все свои свободные деньги и поехал в Москву. Устроился на работу, нашёл квартиру и сразу заплатил тройную сумму месячного проживания: агентству, залог владельцу, оплату первого месяца. До первой зарплаты жил на бутербродах...

Продолжение следует

Читать ещё материалы по теме:
Когда утечка «мозгов» автоматически укрепляет «скрепы»
Почему у нас так всё трудно? Будни малого и среднего бизнеса в России
Правовая реальность, опричники и нэпман
Олимпик-парк
Россия и «правовое государство»
Бизнес по-русски
Почему малый бизнес не растёт?
Малый бизнес: задача – выжить
Когда всё плохо, но по природе ты – оптимист
Конец малого бизнеса?
2 истории про «эффективных» менеджеров. Или как угробить здоровый бизнес быстро

Каково это – быть разработчиком в России, когда тебе сорок Каково это – быть разработчиком в России, когда тебе сорок


#программист #историижизни

Оставить комментарий



Архив записей в блогах:
По вопросам размещения рекламы в блоге и паблике ВК обращайтесь: [email protected] Сижу на диете Малышевой. Утром кушал мюсли с орехами, семечками и цукатами с молоком, пил молоко. Играл в херос, сидел в интернете, смотрел рутв. На обед кушал мясные тефтельки под красным соусом с гречкой. ...
Самолет било в бок тугими порывами ветра, он сильно качал крыльями, едва не задевая верхушки деревьев, младенец-вундеркинд пронзительно орал "Хватит! Не надо!", лицо полного армянина, сидевшего рядом, стало блекло-голубым, в иллюминатор ...
6 сентября во Флоренции стартовал ежегодный праздник фонариков, который стал любимым мероприятием горожан и туристов. Хотелось бы рассказать о самых масштабных событиях в мире, связанных с запуском фонариков. Флоренция, Италия Ежегодный старинный праздник фонариков проходит во ...
Вьетнам vs Индонезия. Где случилось - не сообщается. Предыстория тоже неизвестна, с какого такого рожна судно вьетнамского рыбконтроля наехало вдруг на корвет KRI TJIPTADI 381 ВМС Индонезии. Но эпическая битва доставляет, особенно пинок в порыве бессильной злобы. ...
Лето. Лес. Берег озера. Лужайка. На травке сидят два мужика лет под сорок, их жёны и детишки. На покрывале – нехитрая снедь. Ни капли спиртного. Две семейные пары отдыхают на природе. Вдруг к озеру подъезжает внедорожник. Из открытых окон грохочет блатняк. Из автомобиля вылезают три парн ...