LINUX.ORG.RU

Из администратора в программисты — куда податься?

 , , , ,


3

5

Работаю инженером по x86-системам, СХД и виртуализации. Маленько мне это дело поднадоело, думаю в программисты податься. Посему вопрос:

Какую область программирования выбрать?

Изначальные данные такие: программировать в системном смысле не умею, когда-то в универе что-то изучал, чтобы сдать предмет, могу скрипт на bash-е или .bat поправить\внести изменения, несколько раз пытался осилить разные ЯП, но по причине ненадобности в работе и отсутствия энтузиазма дело быстро затухало. В общем, базовые понятия ЯП мне знакомы (переменные, циклы, функции, основы ООП), но как это связать в единое целое и написать ПО с нуля - непонятно.

Сейчас думаю куда податься.

Основные условия:

  • возможность войти в тему почти с нуля за 5-6 месяцев изучения
  • наличие вакансий в Москве
  • готовность работодателей брать неопытных, но знающих новичков
  • хорошая ЗП со старта (от 90 тр)
  • возможность в будущем работать удалённо
  • не PHP
  • не .NET

Сам ЯП мне не очень принципиален, хотя, конечно, лучше Python чем Perl.

Пока склоняюсь к Java\Scala или Python\Go. Скорее к первому варианту. Со вторым можно, в принципе, в DevOps податься, что тоже вариант.

Может я что-то упустил и есть более подходящие\интересные варианты?

P.S. Материалы для обучения, мотивация, и тд и тп - считаем, что этого в достатке. Стратегию обучения могу выбрать сам, мне бы с областью определиться.

Перемещено mono из development

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

Deathstalker ★★★★★ ()

готовность работодателей брать неопытных, но знающих новичков
хорошая ЗП со старта (от 90 тр)

\0

Хотя я не знаю, 90 тр - это в москве нормальная зарплата для джуниора?

Esper ()
Ответ на: комментарий от Esper

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

Vsevolod-linuxoid ★★★★★ ()

Если веб не очень хочется, то есть еще мобайл в котором и в офисах и на удаленке и во фрилансе(с почти топовыми рейтами) работы полно. Но с твоими прагматичными условиями лучше java, всех больше возможностей для джунов и толковый человек даже без опыта, но пол года активно подтягивающий скилы без работы не останется. Пистон же сейчас самый модный язык для начинающих кодеров(самый простой типо, значит нужно учить его) и в веб сейчас идет почти все кто лезет в it, в результате придется конкурировать с толпой вчерашней студентоты и прочими сомнительными личностями, оно тебе надо? Рекомендую ios в общем.

ertgblasd ★★ ()

Подавайся в Java. Но насчёт 90 000 хз, может у вас там в Москве вообще денег некуда девать, я бы больше чем на 20-30 тысяч первые пару лет не рассчитывал.

Legioner ★★★★★ ()

У тебя губа раскаталась на тему 90к. Тем более новичок.

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

С другой стороны, есть знакомые (далеко от мск) которые сходу идут на ЗП от 100к в офис филиала иностранной конторы, но они уже сами по себе чертовски опытны. Иностранная фирма может себе позволить нанять профи за относительно небольшие деньги, но зачем им нубы, которые не знают какой язык хотят знать? Будто за знание языка их засыпят золотом.

I-Love-Microsoft ★★★★★ ()

готовность работодателей брать неопытных, но знающих новичков

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

mashina ★★★★★ ()
Ответ на: комментарий от I-Love-Microsoft

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

В разработке (мск) это зарплаты от 150-300к и выше, 90к всего лишь не очень большая зп рядового инженера даже по докризисным расценкам.

mashina ★★★★★ ()
Ответ на: комментарий от ertgblasd

iOS тоже вариант, в принципе. Но учить ObjC\Swift думаю дольше надо, чем Java\Scala. И железо покупать недешёвое.

nimdamsk ()
Ответ на: комментарий от Legioner

Много денег мне лично не надо, в принципе. Но жизнь дорогая сейчас и почему я должен жить впроголодь - не очень понятно.

nimdamsk ()
Ответ на: комментарий от mashina

Если вы думаете, что за полгода я не смогу осилить тестовое задание и на Github не будет пара-тройка готовых проектов «на показать» - то ладно. В девопсы я не против пойти, но там стартовый порог выше и ЗП меньше, как я понял.

nimdamsk ()
Ответ на: комментарий от nimdamsk

Сами же предлагают.

И? Там нужен опыт разработки на Жабе 1-3 года. У тебя он есть?

Esper ()
Ответ на: комментарий от nimdamsk

Если ты за полгода с уровня «умею писать баш-скрипты» дорастёшь до «умею писать высоконагруженные приложения на scala», то ты, как минимум, гений.

mono ★★★★★ ()
Ответ на: комментарий от Esper

Допустим, что есть. С работодателем я как-нибудь договорюсь. Поясню: я не сомневаюсь в своей способности найти работу Java junior через полгода обучения.

Меня сейчас интересует другой вопрос.

nimdamsk ()
Ответ на: комментарий от mono

Ну, это вряд ли. На тему «умею писать высоконагруженные приложения на java» я бы ещё проставился, но Scala - уже нет, пожалуй. И если это требование для Junior - то я вам не верю.

nimdamsk ()
Ответ на: комментарий от nimdamsk

В девопсы я не против пойти, но там стартовый порог выше и ЗП меньше, как я понял.

И гемора больше, лучше сначала пытаться устроиться разработчиком.

mashina ★★★★★ ()

С такими требованиями и наивностью - только frontend.

Solace ★★ ()
Ответ на: комментарий от nimdamsk

Но учить ObjC\Swift думаю дольше надо, чем Scala

Без минимального знания Haskell и функционального программирования к Scala я тебя близко не подпущу к своему проекту.

Пока склоняюсь к Java

Интегратором XML править можешь устроится в какой нибудь проект с JEE.

Работаю инженером по x86-системам, СХД и виртуализации

это ненужные знания(

DevOps податься

более реальная перспектива

robotron5 ()

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

Может я что-то упустил и есть более подходящие\интересные варианты?

Разработку под мобильные девайсы уже советовали выше. Это один из наиболее хлебных вариантов.

Sunderland93 ★★★★★ ()
Ответ на: комментарий от Sunderland93

Какая разница откуда кофеин поступит в организм? Тем более, что в растворимом его больше?

nimdamsk ()
Ответ на: комментарий от nimdamsk

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

В сущности, нет особой разницы между «писать высоконагруженные приложения на java» и «писать высоконагруженные приложения на scala», переключиться с одного языка на другой в рамках одной и той же сферы – дело техники. При этом, перепрыгнуть с «писать высоконагруженные приложения на java» и «писать android-приложения на java» очень сложно, несмотря на то что язык там один.

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

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

mono ★★★★★ ()
Ответ на: комментарий от Solace

Что не так с требованиями? Где увидели наивность?

Про Frontend - шутка, надеюсь? Изучать тысячи каждый день появляющихся Javascript-фреймворков, постоянно меняющийся HTML\CSS, ещё, наверно, и верстать заставят. При этом тысячи студентов. При этом ЗП ниже, чем в Java. Спасибо, не надо.

nimdamsk ()
Ответ на: комментарий от robotron5

Но учить ObjC\Swift думаю дольше надо, чем Scala

Без минимального знания Haskell и функционального программирования к Scala я тебя близко не подпущу к своему проекту.

Боже мой, а Haskell тут причём? И куда Java пропало из цитируемого предложения?

Пока склоняюсь к Java

Интегратором XML править можешь устроится в какой нибудь проект с JEE.

JEE умер, здравствуйте.

Работаю инженером по x86-системам, СХД и виртуализации

это ненужные знания(

Очень даже нужные.

DevOps податься

более реальная перспектива

Может и так, хотя вряд ли.

nimdamsk ()

Еще модная тема Elixir/Phoenix и может чистый Erlang. Пару недель назад через знакомых проскакивала вакансия по этому винегрету, готовы были взять просто толкового чела готового с этим всем разобраться и писать код за 80-100к. Просто у меня к этим рельсоподобным вещам душа уж совсем не лежит, а Erlang сам по себе либо все, либо ничего.

Go тоже достаточно моден, потому что сейчас кучи IT-директоров обчитались всяких историй узбеков и без особого понимания начинают переписывать тонны легаси кода (например, с перла). Но им всем хорошее портфолио подавай и общее знакомство с языком и хелловодрды на Go им не интересно, а нужен опыт разработки чего-то такого масштабного вроде Docker. Пытался вразумить, что с таким резюме я бы хантился в европу на 5000 евро, а не в дефолтсити на ваши 100-120к, но без успеха, либо они сразу вилку в два раза занижают (может быть в этом и смысл).

Ты сначала четко определись какая область тебе больше всего нравится. Потом нужно попытаься найти в области какой-то сегмент, который еще не так сильно перенасыщен и вперед.

BigAlex ★★★ ()
Последнее исправление: BigAlex (всего исправлений: 1)
Ответ на: комментарий от Sunderland93

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

Как будто я этого не понимаю.

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

Полагаю, изучив hh.ru, что вы ошибаетесь.

Разработку под мобильные девайсы уже советовали выше. Это один из наиболее хлебных вариантов.

Рассматриваю Java в том числе и поэтому.

nimdamsk ()
Ответ на: комментарий от BigAlex

Еще модная тема Elixir/Phoenix и может чистый Erlang. Пару недель назад через знакомых проскакивала вакансия по этому винегрету...

Это же пустая трата времени. Какой-то хипстер нагогнокодил проект на маргинальщине и теперь не могут найти людей для поддержки и допиливания. Точно такая же проблема встанет перед инженером при попытке сменить работу. Erlang и прочая маргинальщина хороша если идёт дополнением к c/c++/java и т.д.

mashina ★★★★★ ()
Ответ на: комментарий от nimdamsk

Боже мой, а Haskell тут причём?

удачи в Scala

JEE умер, здравствуйте

от «программиста» на баше слышу

Очень даже нужные.

в каком месте?

robotron5 ()

Маленько мне это дело поднадоело

А что именно поднадоело?

early_britney_fun ★★★★ ()
Ответ на: комментарий от mashina

хипстер нагогнокодил

Ну, так вам шашечки или ехать. Таких говнокодящих на маргинальщине хипстеров вполне себе количество. Так к ним влететь и проще, достаточно продемонстрировать лояльность к этому ихнему «стеку» и некий багаж знаний, который у ТС присутствует. А так я согласен, что там они херней страдают, просто как вежливый человек не хочу их расстраивать в слух.

BigAlex ★★★ ()

Типичная ситуация. Ничего не знаю, но хочу много денег. ^^

iLoveoOz ★★★★ ()
Ответ на: комментарий от nimdamsk

JEE умер, здравствуйте.

Не хочу тебя расстраивать, но 90% работы, связаной с Java это как раз JEE (или его аналоги вроде Spring/Hibernate). Интернет-форумы не очень отражают реальность, тут можно подумать, что все давно пишут на реакте с микросервисами. Придёшь на работу, а там код на JSF из 90-х и прорывная технология AJAX на странице логина.

Legioner ★★★★★ ()
Ответ на: комментарий от mono

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

Я не делаю эту ошибку. На мой взгляд выбор стека между Java\Scala b Python\Go совершенно чётко очерчивают сферу применения - серверный backend, bigdata, distributed programming, вот это всё. Ну, Java ещё на mobile можно натянуть, да.

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

Это понятно. Только вы упускаете момент с тем, что мне и Java, и Scala надо учить с нуля. Потом, когда оба выучишь хорошо, то да - можно переключаться. Но их надо оба выучить, и мне надо выбрать, и это будет не Scala, что, думаю, очевидно. Есть, конечно большой плюс - общая JVM-инфраструктура, что радует.

При этом, перепрыгнуть с «писать высоконагруженные приложения на java» и «писать android-приложения на java» очень сложно, несмотря на то что язык там один.

Это я тоже понимаю. ЯП - это, наверно, 20% нужных знаний. Остальное - обвязка и инфраструктура.

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

Я на это и не рассчитываю. 90тр сейчас - это 50-60тр 2-3 года назад. Если кто-то готов работать за хлеб и воду - его право.

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

Вообще-то за первые полгода z планировал только в Java войти. Вы считаете, что можно войти в Scala без Java?

nimdamsk ()

А что, в России разве что-то ещё разрабатывают, кроме 1С? Везде же только купи-продай требуются.

lagavulin16 ()
Ответ на: комментарий от BigAlex

Еще модная тема Elixir/Phoenix и может чистый Erlang.

Тема может и новая, но, полагаю, вакансий сильно-сильно меньше. Да и то, мне непонятно, что такого может Elixir/Erlang, чего не может Go или Java\Scala\Akka, например. В общем - вряд ли это станет моим выбором.

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

Обычно с Python переписывают. Dropbox вроде скоро переведёт всё на Go. И тут да - надо будет скорее больше учиться, чем в случае с Java.

Ты сначала четко определись какая область тебе больше всего нравится. Потом нужно попытаься найти в области какой-то сегмент, который еще не так сильно перенасыщен и вперед.

Условия я обрисовал. А область пока рано выбирать - опыта нет.

nimdamsk ()

Тут в чем проблема. Порог вхождения у Java выше чем у Python например. Более того не имея практики ты не сможешь вырости. Даже если ты сделаешь сто туториалов, то сев за реальный проект ты буквально сразу упрешься в стену которую не замечал. Поэтому хочешь ты или нет тебе придется сначала сделать пару тройку велосипедов. Возможно поучаствовать в OSS проектах. И только тогда уже искать работу. Python программисты в Москве достаточно востребованы и даже ищут без опыта (но не за 90).

dmxrand ()
Ответ на: комментарий от robotron5

удачи в Scala

1 - Scala это потом, после Java. 2 - неужели функциональное программирование в Scala нельзя выучить не выучив Haskell, это даже удивительно.

от «программиста» на баше слышу

Какая разница от кого вы это слышите? JEE станет более живым?

в каком месте?

Детали не нужны, конечно, но общее понимание как устроена инфраструктура, на которой будет крутиться твой код - не помешает.

nimdamsk ()
Ответ на: комментарий от early_britney_fun

Надоело чужое г..но настраивать. Хочу своё писать. И хочу иметь возможность в будущем за сотни нефти продаваться за бугор через интернеты. И не быть привязанным к месту работы.

nimdamsk ()
Ответ на: комментарий от nimdamsk

Только вы упускаете момент с тем, что мне и Java, и Scala надо учить с нуля.

Причем если ты выбрал Scala, то выучить Java тебе придется...

dmxrand ()
Ответ на: комментарий от lagavulin16

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

dmxrand ()
Ответ на: комментарий от iLoveoOz

Типичная ситуация. Ничего не знаю, но хочу много денег. ^^

Чем типичная? С чего вы взяли, что я приду на собеседование с «ничего не знаю, но хочу много денег»? С чего вы взяли, что 90тр в Москве - это много?

nimdamsk ()
Ответ на: комментарий от nimdamsk

Обычно с Python переписывают. Dropbox вроде скоро переведёт всё на Go. И тут да - надо будет скорее больше учиться, чем в случае с Java.

Мне кажется Go переоценен. Там конечно будет видно, но web разработка на Go явно не самый удачный вариант..

dmxrand ()
Ответ на: комментарий от dmxrand

Причем если ты выбрал Scala, то выучить Java тебе придется...

Это очевидно. Хотя, в принципе, можно и нет, но это плохая идея.

nimdamsk ()
Ответ на: комментарий от dmxrand

Мне кажется Go переоценен. Там конечно будет видно, но web разработка на Go явно не самый удачный вариант..

Мне кажется, что Go - это the next big language, при всём при том. Вне зависимости, нравится нам это, или нет.

nimdamsk ()
Ответ на: комментарий от nimdamsk

Go - это the next big language

До этого тред можно было пытаться воспринять всерьёз, но теперь совсем очевидно, что это троллинг.

utf8nowhere ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.