Яков Файн, Co-founder в Farata Systems - trainings/consultment и SuranceBay - автоматизация покупки/продажи страховых полисов. Яков - автор ряда книг по Java, таких как «Программирование на Java для детей, родителей, дедушек и бабушек», «The Java Tutorial for the Real World» и «Angular Development with Typescript». Уже более 10 лет, ведет подкаст americhka.us про жизнь в Америке. С недавнего времени делает ежедневный влог с прогулок по Манхеттену (и не только).

Twitter
Личный сайт
Подкаст
Видео блог

Каким был ваш первый коммерческий проект?
После института, по распределению в 80-х годах я попал в Канев (Черкасская область) на радиозавод. И там работал в АСУ (автоматизация систем управления). Точно не помню все, чем мы там занимались, но были задачи по типу расчета зарплат работникам завода и другие расчеты на мейнфрейме. Мы использовали язык программирования - PL/1.

Как складывалась карьера дальше?
В Каневе я проработал три года, потом поехал в Киев и получил работу в проектном институте. Проекты были связаны с разработкой подъемных кранов, которые после производства экспортировались в Бразилию за валюту. Эта деятельность позволила уже тогда нашему институту покупать персональные компьютеры. Я достаточно хорошо знал английский язык, который любил и учил еще со школы. Тогда не знал, конечно же, кем буду, но английский язык любил всегда, сдавал на этом языке дипломную работу.

«Если у меня сейчас спросите, какой язык программирования изучать, отвечу, что английский»

Какую роль сегодня английский язык играет для программистов?
Огромную. Если у меня сейчас спросите, какой язык программирования изучать, отвечу, что английский. Не могу представить, как сегодня молодые люди, работающие в этой сфере, могут объяснить незнание языка. Считаю, что это непростительно и должно отображаться во всем: от вида задач до уровня вознаграждения.

Расскажите про историю переезда в США
К моменту переезда уже был женат, и у нас был сын. Проживали мы в Киеве. Переезд был не простым, поехал сначала один по гостевой визе в январе 1992 года, но с намерением найти работу по специальности. Очень благодарен другу, который мне предоставил возможность пожить у него, осмотреться. Конечно же, первое время подрабатывал, используя физический труд, но в течение трех месяцев удалось найти работу по программированию. Мало было найти просто работу, мне нужно было найти компанию, которая сможет обеспечить меня рабочей визой. К лету этого же года моя семья смогла приехать ко мне.

«Чтобы получить расширенные знания мне на то время пришлось заплатить 2400 долларов США за недельный тренинг»

Что происходило в вашей карьере во времена зарождения таких языков, как Java, JavaScript?
Я тогда работал с другими языками, которые полностью выполняли свои функции и устраивали. Как только получил GreenCard, решил работать независимым консультантом и где-то к 1997 году осознал, что пора обновлять знания и изучать абсолютно новые технологии. На тот момент были очень популярны язык Java и пакет SAP. Так как SAP предполагал командировки вглубь страны, принял решение изучать Java. Чтобы получить расширенные знания мне на то время пришлось заплатить 2400 долларов США за недельный тренинг. Синтаксис языка я выучил быстро, но как работают сервера на Java, мне нужно было быстро понять. Поэтому и купил тренинг, благодаря которому мне удалось перейти на Java без финансовых потерь.

«Суть программирования осталась одна — надо быстро обработать данные и удобно их отобразить для пользователя»

Как вы считаете, что кардинально нового появилось в программировании за последние годы?
На мой взгляд, расцвет программирования пришелся на 70-80-е годы. В принципе, задачи особо не изменились. Появились новые инструменты, интернет, появился красивый UI, другого типа базы данных, но суть осталась одна — надо быстро обработать данные и удобно их отобразить для пользователя. Задачи, в общем-то все решены, алгоритмы многие написаны. Но, безусловно, появляются новые тренды.

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

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

Вы отвечаете на много вопросов по Angular на StackOverflow, что является мотивацией?

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

Пишите ли вы код?
Пишу, но мало, в основном это TypeScript, Angular. Большая часть того, что пишу, предназначена для программы тренингов.

«Подкаст - своего рода мой онлайн дневник, который веду более десяти лет»

Какую роль в вашей жизни играет подкаст americhka.us?
Это тоже часть моего хобби, так я отдыхаю. Также это своего рода мой онлайн дневник, который веду более десяти лет. Мне нравится фидбек, который получаю, возникают интересные дискуссии на те или иные темы из моих выпусков. А вот недавно я стал записывать видео блог во время моих ежедневных прогулок по Манхэттену и другим интересным местам.

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

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

Как вы боретесь с выгоранием?
Сталкивался с этим состоянием только во времена, когда был наемным сотрудником. Иногда ты попадаешь на проект, где очень сжатые сроки. Это может быть связано с тем, что команда отдела продаж, чтобы получить контракт, обещает клиенту «золотые горы». И если вдобавок была сделана неправильная оценка трудозатрат, то команда, которая приступает к реализации этой задачи, быстро может выгореть.

«Советую относиться к себе спокойно и трезво, все время повышать свой технический уровень, несмотря на то, что рынок Украины перегрет, и спрос на программистов очень высокий»

Какой совет вы бы дали тем, кто уже достиг некоторого успеха в программировании?
Прежде всего, как я уже говорил, довести свой уровень знания английского языка до беглого уровня. Чтобы ты мог свободно говорить, писать и читать. Акцент не важен. Вторым советом будет относиться к себе спокойно и трезво, все время повышать свой технический уровень, несмотря на то, что рынок Украины перегрет, и спрос на программистов очень высокий. Третьим — задавать себе периодически вопрос: сколько мне понадобится времени для поиска работы, если потеряю текущую. Если долго — изучать свои слабые стороны и анализировать, почему. И четвертым — советую регулярно ходить на собеседования, чтобы понимать свой уровень знаний и стоимость на рынке труда. Этот совет не для всех, так как для многих, интервью, скорее стресс. Для тех же, кто не боится — хороший бесплатный урок.