Круглое нести, квадратное катить: история джависта |
||
МЕНЮ Искусственный интеллект Поиск Регистрация на сайте Помощь проекту ТЕМЫ Новости ИИ Искусственный интеллект Разработка ИИГолосовой помощник Городские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Техническое зрение Чат-боты Авторизация |
2017-03-23 20:38 Считается, что в детстве формируется наша будущая специальность. Любители собирать головоломки должны попасть в ученые, программисты или шифровальщики, а тем, у кого есть способности к рисованию, прямой путь в дизайнеры или художники. Но мы почему-то делаем все возможное, чтобы «что-то пошло не так». Сейчас я работаю программистом в Яндекс.Деньгах и занимаюсь интеграцией с транспортными решениями. Можно подумать, что я — джавист в пятом поколении, с вытянутым свитером и бородой до пояса. Но все еще интереснее, ведь карьера моя началась с журналистики. Любишь программировать — иди в журналисты Создавать приложения мне нравилось с детства, поэтому любимым домашним хобби было изучение Бейсика и TurboPascal на популярном в те времена i486. Еще участвовал в школьных олимпиадах по программированию и уделял особое внимание домашним заданиям по информатике. В общем, явно будущий программер — что вообще может пойти не так? Помните, как поступали в первый ВУЗ и, главное, зачем? Я вот был не уверен в собственных силах, ведь требования серьезных университетов тогда казались невероятными. Впрочем, все эти страшилки про сложность поступления и завышенные ожидания вы и так наверняка слышали. В общем, я пошел по пути наименьшего сопротивления и поступил на факультет журналистики. Но и тут меня потянуло к инженерной деятельности: я стал заниматься техникой печати и оформлением периодических изданий. Со второго курса попал в лабораторию визуальных коммуникаций и информационных технологий при факультете, где стал потихоньку админить местный IT-парк. В то время как раз набирали популярность идеи удаленного обучения, и в нашем университете решили сделать электронное учебное пособие для подготовки радиожурналистов, с видео- и аудиоматериалами. Я как раз отвечал за реализацию «движка» на базе HTML и JS. Это был первый серьезный опыт разработки реального веб-приложения, которое в дальнейшем мы еще долго совершенствовали и дополняли. Точка невозврата После университета мое представление о мире, полном интересных лично мне задач, малость треснуло от удара о реальность. Но мне повезло: друзья предложили переехать в Петербург и заняться выпуском цветной ежедневной спортивной газеты уровня Marc? и Gazzetta dello Sport, а это уникальный проект для России. Такое предложение было большим успехом для вчерашнего выпускника, и я немедленно согласился. Но программист в душе, видимо, требовал выхода. Поэтому вечера проходили за программированием и фрилансом по разработке сайтов. Через некоторое время пришлось решать, чему отдавать больше времени — разработке сайтов или дизайну газеты, так как объем задач по разработке рос в геометрической прогрессии. Очень кстати наступил кризис в отрасли печатных СМИ, который наложился на личную потерю интереса к дизайну и подтолкнул к смене профиля деятельности, что я так долго и старательно откладывал. Главным было «ввязаться в драку» — опубликовать резюме и начать ходить по собеседованиям. После этого начался долгий марафон ежедневных собеседований, каждое из которых добавляло уверенности в своих силах и пополняло копилку каверзных вопросов от собеседующих. Вообще, было неожиданно увидеть такой интерес к резюме без впечатляющего программистского опыта. Видимо, помогли советы моего друга, опытного разработчика, который к тому моменту уже дорос до ИТ-директора. Сидишь вечером, никого не трогаешь, кодишь в PHP… Спустя месяц постоянной самоподготовки и хождений на собеседования меня пригласили в крупное интернет-агентство на проект по разработке системы управления интернет-рекламой и сбора статистики по рекламным кампаниям. На собеседовании речь шла о фронтенд-разработке, но так случилось, что я занимался в основном бэкендом — нагруженной системой, требующей вполне взрослого подхода. Бинго! Но настоящий звездный час настал спустя год работы: передо мной поставили задачу переписать высоконагруженную систему показа баннеров и сбора пользовательской статистики. Прежний вариант был плох тем, что толком не масштабировался из-за не слишком удачных архитектурных решений и был крайне неустойчив. К тому моменту я программировал на Java только факультативно, поэтому задача стала настоящим вызовом и проверкой веры в свои силы. И, как это часто бывает с подобными «динозаврами», в компании не осталось никого, кто хорошо разбирался бы в работе текущей системы. Ну что ж, заодно прокачал навыки бизнес-аналитики и составления ТЗ. Баннерный кризис Спустя полгода мои познания в Java, многопоточном программировании и распределенных системах значительно расширились, а новая баннерная система прошла все круги ада и была сдана в продакшн. Это произошло в 2014 году — как раз в то время, когда в экономике страны начался общий спад и рынок баннерной рекламы с оплатой за показ/переход стал стремительно сокращаться. Как и многие, наша компания решила на всем экономить и свернула дальнейшую перспективную разработку. Но не возвращаться же снова в PHP после такого большого и интересного Java-проекта! А раз идем по нарастающей сложности, то самое время окунуться в «кровавый энтерпрайз», со всеми этими масштабными системами и разработкой «по науке». Как раз в тот момент удача мне еще раз улыбнулась, и мои умения заинтересовали крупного госзаказчика с проектом на Oracle DB, J2EE и всем таким прочим. Если не вдаваться в детали, то проект состоял из огромного монолитного приложения и нескольких микросервисов для работы с ним — в разработке одного из них я и участвовал. Конечно, это был совсем иной уровень, как по масштабу систем, так и по компетенциям коллег. Первый важный вывод Знаете, чего не хватает в энтерпрайзе? Отдачи — реакции на твой продукт от конечного пользователя. Получается, что ты пишешь все эти тысячи строк кода, выпускаешь релиз и… все. Релиз проходит формальное одобрение и уходит в продакшен без каких-либо оценок со стороны пользователя. В корпоративных системах покупатель и пользователь — обычно разные лица. При этом решения принимает покупатель, которого мало интересуют пользователь и его удобства — в таких делах важнее завершить работу в срок и уложиться в бюджет. Это был довольно странный и неожиданный вывод, который «менял все». Так что нет никаких гуманитариев и инженеров — просто мы лучше всего делаем то, что нравится в конкретный момент жизни. Казалось, можно спокойно заниматься энтерпрайз–разработкой, но возникло желание вновь расширить профессиональные горизонты. К тому же сработал «голливудский принцип» — мой профиль на LinkedIn заинтересовал рекрутеров Яндекс.Денег, и позже пришло сообщение из разряда: «Некогда объяснять, приезжай на собеседование!» Тут опустим итерации с несколькими собеседованиями и разной глубины вопросами — суть в том, что я попал в команду бэкенда Яндекс.Денег. И попал именно в тот момент, когда команда занималась миграцией приложений на новую платформу, которая позволила бы ускорить разработку и снизить порог вхождения новых разработчиков в проект. Ощущения от релизов тут, конечно же, совсем иные — можно получить море пользовательских эмоций в комментариях к приложению: то ударит волной о берег за ошибку, то восторг и ура. Есть ощущение отдачи от своих усилий. Еще немного откровений Если вернуться лет на пять назад, то я дал бы себе тогдашнему несколько советов: Не бояться и начинать меняться как можно раньше. Работа в команде быстрее прокачивает навыки, так что фриланс надо оставлять сразу, как начинаешь задумываться о новых направлениях. Продуктовая разработка — это невероятный драйв, и чем ближе к пользователю, тем острее ощущения. Адреналин, как от спорта. На техническом собеседовании нельзя дать «плохих» ответов, зато легко показать неумение рассуждать и думать. Но к собеседованию всё равно надо готовиться: обидно будет провалиться, если забыл какую-то тривиальную вещь. Журналистика — это, конечно, весело и необычно, но все равно мы знаем, чем это закончится. Может, тогда без прелюдий? Комментарии: |
|