• ,

Восемь вещей, которые мне помогли найти работу

Привет, войтишник! Решил поделиться своей историей. Начав обучение в конце 2014 и несколько раз забрасывая все куда подальше, 2 месяца назад я получил работу.

В этой статье я не буду рассказывать о том, как и что я писал в резюме, о чем говорил с HR и как я учил английский (об этом будет отдельный пост). Я не буду углубляться в то что я и где учил. Я просто поделюсь своими наблюдениями и размышлениями, возникавшими у меня по ходу обучения по поводу и без. Я поделюсь тем, что считаю хорошим и плохим в околовойтишной сфере. А так же перечислю 8 вещей, которые помогли мне стать программистом. Поехали!

История успеха спустя 1.5 года от начала обучения.

Осторожно! Много Букв!



Для начала расскажу немного о себе.
Мне 25 лет. До того, как начать изучать Java учился на математическом факультете, на прикладной математике. Казалось бы, с программированием у меня должно быть если не отлично, то по крайней мере хорошо. Но это был не мой случай, т.к. все предметы, где мелькало программирование — я саботировал и сдавал как-то на удаче, сам ничего не писал. Так вот и получилось, что я от программирования был далек. Ясное дело, что с образованием математика в нашей стране много не заработаешь кроме как программистом. Поэтому и выбор пал именно на это. И так совпало, что решил учить Java. Это не было связано с каким-то анализом рынка или поиском по количеству рабочих мест, востребованности на рынке труда. Просто так совпало. И когда решил узнать как это делать — то наткнулся на JavaRush. Как-то не хотелось учиться только по книгам, но и на очные курсы я смотрел нехотя, т.к. денег стоят они много, а реально профита мало. Поэтому JavaRush для меня был лучшим решением. Пройдя первые 3 уровня, я понял что курс мне нравится и что можно покупать подписку. Тем более, что я попал на акцию и приобрел за пол цены. Было это в конце августа / начале сентября 2015 года.

План обучения.
Прочитав что нужно делать, я решил составить план того, как я должен учиться, чтоб добиться цели и закончить курсы, потому как времени на медленное изучение у меня уже не было. Задача стояла получить быстро знания, причем так чтоб не отвадить желание и чтоб мозгам было время отдохнуть. Потому что такая нагрузка, которую я хотел могла помешать мне.
Для этого решил:
  • Что нужно учиться пять дней в неделю(пн-пт).
  • В выходные дни я буду заниматься чем угодно, только не этим.
  • Каждое занятие будет идти в общей сложности 4 часа, причем между каждым часом будет перерыв в 15 минут, для того чтоб пройтись, отдохнуть и сделать чай.
Итого 20 часов в неделю. Неплохо, да? К тому же иногда приходилось заходить в университет, т.к. я еще учился в магистратуре.
К декабре я уже был на 20 уровне и думал, что знаю очень и очень многою Но были у меня и кризисы, когда ничего не получалось и казалось, что дальше не смогу (см. моя статья помогите, нужна мотивация).


Переход на новый уровень.
Через три месяца после начала обучения, я побеседовал со знакомым на тему того, что я еще должен знать, чтоб устроиться на работу…
И тут понеслось: какие-то не знакомые слова, базы данных (о ужас!) и многое другое дали мне понять, что нужно ускоряться и делать еще больше. Ясно, что с грамматикой джавы мне не получить работу, я начал ускоряться в разных направления:
  • Купил себе книгу Head First «Изучаем Java». Ее рекомендуют на 4-м уровне в курсе. Но я как-то не внимательно читал и пропустил этот факт. Там рассказываются теже вещи, но под другим углом, что помогает понять их лучше и основательне. Советую.
  • Начал искать все тематические тусовки в своем городе и ходить на них, пусть даже я многого не понимал, зато со вмеренем понял, что это было не зря и они мне очень помогли. например так
  • Есть еще один ресурс, который нужно прошерстить от начала и до конца — это dou — сайт для программистов. Там можно посмотреть какие бывают ивенты, какие нынче зп в украиском ИТ, можно прочитать много очень полезных статей, особенно рекомендую Материалы по теме «Пособие для будущего Java разработчика» и Java Enterprise: что и как учить. Эти статьи будут помошником для вас и не будут давать расслабляться.
  • Нашел короткие и информативные видеоуроки на youtube по MySQL, советую.
  • Видеоуроки Головача тоже не остались без внимания. Их много, много воды, но разъясняет многие вещи достаточно хорошо.
  • Так же нужно понимать что такое HTML и CSS. Без этого никак, тут мне помогла в этом HtmlAcademy. Там можно проходить задания бесплатно.
  • Зарегистрировался в соц.сети linkedIn, где начал выставлять свои навыки и что я ищу работу(а вдруг повезет и меня найдут). Добавлял всех подряд в друзья расширяя круг своих друзей. Чтоб вы понимали насколько, то сейчас у меня больше 10 000 друзей в линкедине. Для начала это нужно. И это помогло, команда андроид фрилансеров искала новичка себе и мне написали. Я понимаю, что случай из ряда вон выходящий, но это случилось.

Первые неудачи
Конечно параллельно учебе, я начал искать интернатуру в компаниях так, чтоб со временем можно было работать. Меня пригласили на собеседование в интернатуру. Поговорив с HR-ром, ко мне позвали преподавателя по английскому, с которым я «пообщался». К этому моменту я вовсе был не готов и вышло, что я больше слушал, чем говорил. И на тему расскажи о себе, я что-то промямлил, но ничего особенного. А вот при общении с техлидом я отвечал на некоторые вопросы, на многие ответа не знал и на ответ, что обучаюсь в JavaRush, он сказал что передо мной был еще один студент оттуда. Я был на 27 уровне, а он уже на 34. Поговорив он сказал, что мне перешлют тестовое задание, по которому решат годен ли я. Я его как-то сделал, причем не весь функционал. Через некоторое время мне написали, что я им не подхожу… Обидно, но я решил извлечь опыт из этого и пошел дальше.

Первая работа.
Как я уже говорил, составив страницу в linkedin'е через 1.5-2 месяца мне написал некий андроид разработчик с предложением работать с ними. Ясное дело, что речь шла об минимальной зп. Мы пообщались при встрече и мне предложили работу. Понятно, что она была слабо оплачиваемая, но другого у меня не было и я радовался тому, что было. Начиная с конца января я начал работать на квартире одного из них на анроиде. Всё было новое, все другое. Но кое как и как-то я работал, что-то делал. Было страшно и всё не понятно, это были не задачки в JavaRush. Всё нужно было делать, читать, узнавать что и как. У меня был тестовый проект, который я делал и который мог стать чем-то большим со временем. И так прошло до мая. Потом как-то начал разваливаться наш коллектив, все это поняли и начали искать работу.

Поиск новой работы.
Не зная как это делать, я решил что буду рассылать всем компаниям, которые есть в моем городе. А как узнать какие есть компании? В этом мне помогл тот факт, что я прошерстил dou вдоль и поперек. Там есть раздел компании и можно выбрать город, которому идет поиск. В описании есть почта (почти всегда есть), на которую можно писать. Чтоб всё выглядело хорошо, я написал свое резюме на английском языке, только так и надо. Конечно было много воды, воды, воды, т.к. писать особо нечего было, писал всё подряд. Также к каждому письму писал сопроводительное письмо(рекрутеры любят это), где я указал кем именно я хочу быть, а то часто выходит, что присылают резюме и не ясно на какую позицию претендуют. Сопроводительное письмо было также на английском. Совсем забыл, английский нужен ОЧЕНЬ сильно. Реально, если ты не можешь прочитать ответ на стековерфлоу, то ты не жилец и делать тебе в программировании нечего. Составил себе на речь на собеседование английского на тему: Tell me about yourself. Очень полезная вещь, я вам скажу.

Спустя некотое время я получил 4 приглашения на собеседование. Практика рассылки всем компаниям была оправдана, причем тем, у кого не было таких позиций — они обычно не отвечали вовсе. На собеседованиях было сложно, было стыдно, было не уютно, но я прошел их, в некоторых просто говорили, в других нужно было сделать пару заданий, например нужно было написать интерпритатор на джаве на язык BrainFuck. Задача оказалась интересной и я рад, что ее выполнил, хоть меня в ту компанию и не взяли. Искал я работу либо на Java либо на Android. Хотя хотелось больше на джаву, мобильная разработка мне не особо интересна. Зарплатные ожидания были минимальны, нужно было найти работу, всё остальное было уже не важно. Спрашивали меня на понимание Баз данных, о там как создать таблицы в для определенных ситуаций. Это всё касается SQL баз данных, про NoSQL никто не спрашвивал.

Первый оффер.
В одном месте мне написали и отказали, в другом тоже. Остались две компании, в одной на позицию андоид разработчика, в другой — на джава. Позвонили с компании по поводу андроид и сказали, что я им подхожу и мне делают оффер. Это была победа. Я был очень рад. Но мне так жне позвонили в компании за джава позицию и я метался и не знал что делать, поэтому попросил подождать день с моим ответом, чтоб я смог позвонить узнать за позицию джава разработчика. Позвонив в компанию за джава позицию, я сказал, что мне сделали предложение, но я хочу узнать от вас еще результат. Меня пригласили в офис к ним поговорить и сказали, что результат разговора мне понравится. И они оказались правы, переговорив с ними, мне сделали оффер во второй компании, собственно которую я и выбрал.

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

P.S. нужно стремиться, стремиться, стремиться и никогда не сдаваться!

P.S.S я весь курс не прошел до конца, остановился на 30-м уровне. А когда получил работу, то был на 27. И реально скажу, что начиная с 20-го уровня нужно искать работу и разиваться помимо Java. Освоить хотя бы издалека фреймворк для автоматизации проектов (Ant, Maven, Gradle). Вещь не сложная и очень нужная.

Всем, кому понравилась статья — ставьте "+", чтоб я знал :) Для меня это важно :)


См. также мои другие статьи:
Тестовое задание: «Написать Интерпретатор на язык BrainFuck»
Тестовое задание «Image Comparison»
Java — быстрее, сильнее и выше! Зарплаты украинских программистов.
История успеха спустя 1.5 года от начала обучения
Технические вопросы на собеседовании.
Как найти работу? Рассылка резюме
Профессиональное выгорание. Как устоять?
Английский для IT и для собеседования
Паттерн Command своими словами.
Паттерн Singleton своими словами.
Как создать исполняемый jar в Intellij IDEA / how to create jar in IDEA
Помогите, нужна мотивация!

Подписывайтесь на мой блог Паттерны Проектирования пишите в нем статьи!
  • ,

Моя история трудоустройства

Спустя почти 5 месяцев работы пришло время возвращать долги моему любимому Javarush…

Мне 32 года, и до мая 2014 года я не имел никакого опыта ни в программировании ни вообще в IT-сфере. Образование экономическое. Сейчас работаю Junior Java Developer в крупной международной компании в Киеве. Так что ДА — если напрячь булки и заниматься каждый день с утра до головной боли то можно найти работу даже в нынешнее прекрасное время когда на вакансию джава джуна слетается толпа в 500 человек.

Учился в основном на Javarush пока не попал в реальный проект, на тот момент решены были все задачи до 22 уровня и почти все большие(до 27 вроде). Кроме Javarush и книжек которые можно найти в любом списке для новичков очень помог курс на coursera по алгоритмам на джава (ведет Седжвик и еще кто-то) хотя в работе сейчас эти знания и не использую, но мне очень хорошо помогло вникнуть в процесс программирования вообще и подтянуть технические скилы.

Процес трудоустройства занял где-то 5 мес и под конец я уже настолько отчаялся найти работу что просто зарегался на Одеск(сейчас апворк) и начал брать заказы на core java. Их там мало и много на этом не заработаешь, но зато уже второй или третий довольный клиент предложил мне в перспективе постоянную удаленную работу.

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

До того как устроился на работу ломал себе голову чем же занимаются программисты на работе:-) Оказалось в основном ловлей багов конечно же. Моя компания занимается онлайн гемблингом, и я, в частности занимаюсь разработкой игр для мобильных телефонов. Игры пишутся на джаве и потом уже собственный фреймворк переводит их на html и др. платформы. Первую неделю нам давали задания допилить какую-нибудь кнопку в существующую игру(это никуда не коммитилось), а на вторую дали уже каждому по игре в разработку, но с нормальными сроками и было время во всем разобраться. На данный момент на мне висит 4 игры + бывает могут подкинуть чьи-то на время отпуска. Игра разрабатывается не с нуля, есть определенный common который я уже допиливаю под игру, дальше идет куча процедур по тестированию и всяким превью и все баги и доделки естественно идут на меня. Вот примерно такая сейчас жизнь у меня как разработчика.

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

P.S. JavaRush rulez…