Меню
Кто может стать программистом
И причем здесь любовь
Мы поговорили с выпускником курсов JBORN
Александром Кондратьевым
Программирование — это постоянное стремлением к тому, чтобы все вещи объяснялись логично. Это переносится и в жизнь. Везде ищу логику и хочу, чтобы она всюду присутствовала.

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

Я думаю, что девочки тоже могут программировать. У меня одноклассница программирует на JavaScript. Я бы не сказал, что есть различие между девочками и мальчиками в программировании. Это все-таки больше зависит от склада ума, способности и любви к построению алгоритмов. Должна быть любовь к технических наукам: к математике, физике. Должна быть любовь и понимание логики.
Программирование - это всегда построение алгоритмов и логика.
Время до курсов

С 2011 я занимаюсь web-заработков на языке PHP. PHP- это язык для новичков, не для профессионалов. Да, на нем можно делать многое, но нет таких возможностей, как у Java и С++, например. Мне хотелось узнать, как работают на более высоком уровне, как работают специалисты, окунуться в профессиональную разработку. Я стал разбираться и выбрал для изучения язык Java, он показался мне близким, чем-то похожим по синтаксису с PHP и JavaScript.

До того как пойти на курсы, я начал изучать Java самостоятельно, мне очень понравился этот язык. После самостоятельного изучения основ, я увидел объявление о наборе в группу для обучения разработке на Java, сомнений никаких не было и я сразу же записался в группу.

Если заниматься каждый день в усиленном режиме, то нужно месяца 2−3, чтобы перейти на достаточно высокий уровень. На курсе, в более спокойном ритме, без отрыва от основной работы можно этого достичь за 4−5 месяцев.
О процессе обучения
В группе нас было три человека. Мы связывались несколько раз в неделю по скайпу. Например, преподаватель ставит перед нами задачу, которую мы должны выполнить за неделю. Мы должны разобрать какую-то тему: даются книги, мы изучаем задачу, решаем ее, в конце недели связываемся с учителем, который нас выслушивает, проверяет понимание материала и правильность выполненных задач.

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

Суть обучения в том, чтобы получить знания и научиться их применять на практике. После обучения мы практиковались на благотворительном проекте «Вверх», и основной опыт был получен на этом проекте.

Можно купить книжку и читать ее, но в книжке не будет практики, а опыт и мастерство нарабатываются только на практике.
Проходя курсы под присмотром преподавателя, ты впитываешь его опыт.
В этом как раз и смысл идти на курсы: быть под присмотром.
Жизнь после курсов
  • На проектах, где используют такие языки как Java, люди более серьезные, понимают, чего они хотят. Проекты более масштабные, работа выстроена более продумано и слажено.
  • Вакансии сейчас не смотрю, потому что есть работа. Но знаю, что предложений на рынке много. Спрос большой, а Java-программистов не так много.
  • Если честно, хорошо спланированная работа вызывает меньше стресса и переживаний. Когда я занимался веб-разработкой на PHP, я получал кучу задач в любое удобное для заказчика время, да еще и само задание меняется по ходу выполнения. В итоге, как хочешь так и успевай, особого планирования не было. Из-за этого больше нервничаешь и испытываешь больше стресса. А сейчас, когда ты понимаешь реальные сроки и зону своей ответственности, работаешь с умными людьми, понимающими чего они хотят, то и работа вызывает больше удовольствия
Что нужно знать и что нужно уметь, чтобы начать

Чтобы знать PHP и начать веб-разработку на этом языке, много ума не надо. А чтобы двигаться дальше и владеть Java или начать в разбираться в этом языке, надо многое уметь, знать и во многом разбираться.

Для того, чтобы занимать позицию Junior Java-программиста, нужно знать минимум основ Java, немного разбираться во фреймворке, на котором разрабатываются проекты (например, Spring), знать инструменты для работы в команде (такие как Git).
Как происходит работа
 Я фрилансер. Работаю из дома. Это сложно. Но мне кажется, надо просто взять себя в руки и четко спланировать свой рабочий день. Во-первых, предупредить всех домашних, что у тебя есть рабочее время, определить его, и чтобы тебя не отвлекали и не трогали. И благодаря планированию задач это обязательно получится.

Любую задачу можно оценить и примерно прикинуть, сколько уйдет на нее время.
Я работаю по 8 часов в день, а перерабатываю по необходимости.
Это большие проекты и поэтому необходима командная работа. Есть лидер команды, который получает задачи и распределяет их по ее членам. У каждой задачи есть срок, приоритет, и мы знаем свою зону ответственности.

Работодатель следит за выполнением задач. Любую задачу можно оценить и примерно прикинуть, сколько уйдет на нее время.
А что дальше
В Java всегда есть куда развиваться. Проекты становятся сложнее, требований все больше, появляются новые технологии и инструменты. На месте не устоишь, надо быть всегда в курсе. В интернете можно читать habr, например. Там всегда актуальная информация.

Когда-то я думал, что английский язык мне не понадобится, поэтому практически не учил его в школе и в университете.

А сейчас вся документация на английском и очень сложно что-то понять. Поэтому экстренно достаю учебники по английскому, все вспоминаю и изучаю.

Чем сложнее поект, тем интереснее. А проект - это идея, которую реализуют группа программистов. Поэтому обязательно должен быть тот, кто привнесет эту идею.
Как стать Java-программистом
Я бы посоветовал начать с курсов с наставником. Самостоятельно можно забрести куда не надо. Важно, что тебя кто-то ведет. Четко, по направлению. Тогда обучение идет быстро.

Ты учишь именно то, что потом тебе пригодится.
Главное правило: как можно больше практики.
Это не школа и здесь оценки не ставят. Ты пришел учится, значит тебе это интересно. Неважно, насколько сложная задача. Даже если ты не сможешь сам разобраться, тебе помогут усвоить материал. Для этого и нужен наставник. А когда ты нарешаешь кучу сложных задач во время обучения, тебе будет достаточно легко на реальных рабочих проектах.
Java программист

Работает удаленно в Beorg