Как правильно расставить приоритеты в развитии разработчика?
Окей, на тостере уже есть вопрос с точно таким же названием, но у меня немного другая ситуации. Мне 21 и я недавно устроился java junior'ом в одну компанию занимающуюся разработкой ПО для банков. Скажу прямо ето не то что я ожидал (и не то что спрашивали у меня на собеседовании, Spring/hibernate/REST и вся такое прочее). Они используют java 8 (что есть хорошо), но проект на который меня сейчас "повесили" использует оч древнюю технологию как по мне, последние статьи по ней в гугле датируются 2010 годом. (я не буду говорить какую, вдруг тут сидят мои коллеги которые меня узнают). И после того как я уволюсь от туда через 1.5 - 2 года, не думаю что я буду чертовским востребованным специалистом.
Поэтому решение пришло само собой. Саморазвиваться после работы. Я люблю свою профессию и особенно люблю писать код. Но я прихожу домой где то в 19:30 + пол часа на ужин. В итоге у меня 4 свободных часа до того как я лягу спать. Я не дрочу на Java и прекрасно понимаю что это всего лишь инструмент в руках разработчика, поэтому не хочу строить карьеру вокруг "технологии, разработанной компанией, сотрудником которой я не являюсь".
Мне нравится потенциал ML. Я начал заниматься им в свободное время, уча python и подтягивая матан. Мне нравятся алгоритмы и я начал читать Кормена параллельно реализовывая их на Java и python. Мне нравится решать задачки на leetcode, мне нравится функциональный подход в hasskell и я хочу выучить его заимплементив какой нибудь pet проект на нем, мне нравится методология DevOps, мне нравится гребанный английский, мне нравится ШАД от Яндекса и я хотел бы туда поступить. Однако если смотреть со стороны я просто сижу на нескольких бутылках сразу. Фак. Я не могу правильно расставить приоритеты и получается что я перескакиваю с одной темы на другую, не закончив основательно предыдущую.
Наверное у меня какое то психическое расстройство или что то вроде этого. В любом случае если вы знаете решение моей ситуации или хотя бы совет для нее, вы бы здорово мне помогли.
Когда выговорился, даже стало немного легче )
использует оч древнюю технологию как по мне, последние статьи по ней в гугле датируются 2010 годом
Повеселили! Есть немало компаний, до сих пор использующих Java 1.4 и EJB 2.0.
после того как я уволюсь от туда через 1.5 - 2 года, не думаю что я буду чертовским востребованным специалистом
Программисты на Коболе смотря на вас с непониманием. Почитайте.
В итоге у меня 4 свободных часа до того как я лягу спать.
Прорва времени!
Я не могу правильно расставить приоритеты и получается что я перескакиваю с одной темы на другую, не закончив основательно предыдущую.
Вам нужны не приоритеты, а самодисциплина. Интересоваться многим и постоянно менять сферу интересов - это не плохо, наоборот. Но бросать что-то на полпути не стоит.
В любом случае если вы знаете решение моей ситуации или хотя бы совет для нее, вы бы здорово мне помогли.
Отработайте года 3 на текущем месте, получите статус мидла, и взгляните на ситуацию ещё раз, глазами более опытного специалиста.
Если на текущей работе вами довольны, это уже хорошо.
Технологии это вещь важная, но джуниору важнее просто научиться работать и использовать инструменты.
То есть хорошее владение IDE, чтобы легко могли отдебажить, сходу писать юнит тесты.
Неважно ведь на какой версии джава или в каких фрейморках вы это делаете. Главное наработать практический опыт.
Также нужно владеть инструментами, которые используются в современном программировании - git, maven, jira или другой багтрекер, уметь ставить приоритеты и уметь оценить сроки поставленных задач хотя бы примерно.
В общем моя рекомендация - дойдите до мида - это можно сделать за 1-3 года в зависимости от проекта и ваших усилий, а там пробуйте найти что-то поинтереснее.
В первую очередь расслабиться :)
Во-вторых взять листок бумаги и написать все что хотелось бы изучить. Затем сгрупировать все по более-менее подобным признакам. Затем на первое место выдаинуть то, что пригодилось бы на теперешней работе. И начать по тихоньку все учить. 4 часа в день более чем достаточно :)
Небольшой пример из моего опыта. Сам по образованию програмист, после института попал на работу в банк системным администратором ( у нас в "деревне" это однео и то же :) ) После банка работал на хостинге тоже сисадмином. Получил сертификаты Red Hat. В даный момент работаю администратором приложения в межлународной компании. И практически ничего из того что знал до этого на моей теперешней работе мне просто не нужно. Пришлось учить много нового, что необходимо для работы + то, что мнравится лично мне ( в том числе Python, Django) Мне 36, у меня жена, собака и черепашка :), ко всему куча увлечений требующих времени. Еще планируем запуск стартапа со следующего года. И если найду час-полтора для обучения - просто праздник .
И еще. В толковых компаниях в первую очередь смотрят на вашу общую базу знаний + умение быстро сориетироваться и научиться чему-то новому. Так что как вам советовали выше - набирайтесь опыта.