Досьє
Якщо вам уже 35 років, це ще не привід не починати навчання! Звичайно, коли в тебе за спиною роки цінного досвіду в іншій галузі це не так просто, але не безнадійно. У нас є чудовий приклад — Ілля з Одеси вирішив перекваліфікуватися з промислового альпініста на промислового програміста саме у цьому віці. І йому це вдалося. Читайте одну з найцікавіших і найґрунтовніших історій успіху на JavaRush!
- Хто: Ілля Альтерович
- Ким працював: промисловий альпініст
- Вік на момент старту навчання: 35
- Місце проживання: Одеса, Україна
- Перша робота програмістом: через 1 рік та 8 місяців (лютий 2015 року) – у 37 років.
- Ким працює зараз: як і раніше програміст, змінив одну компанію =)
- Оригінал історії
Передісторія
Хочу поділитися своєю історією, бо відчуваю на собі моральні зобов'язання перед чудовими людьми, які створабо цей ресурс, і перед суспільством, яке він породив. Творців хочеться хоч якось віддячити, а «джаварашовців» , які ще не досягли своєї заповітної мети, — підбадьорити, і підкріпити гарною порцією мотивації! Суть: вже два тижні я працюю програмістом, і це багато в чому завдяки Java Rush .Мені 37 років, одружений, двоє дітей 6 та 3 років. Останні 15 років я працював промисловим альпіністом (висотником). Робота, як знаєте, пов'язана з програмуванням трохи менше, ніж ніяк.За великим рахунком – робота непогана, свіже повітря, змушує підтримувати себе у формі , вистачає вільного часу, сам собі господар. Та й по грошах непогано ( в сезон ). АЛЕ :
- Має яскраво виражену сезонність. Тобто 3-4 місяці на рік роботи практично немає .
- Перспектив НІ. Пропрацювавши 15 років на цій ниві, я зрозумів, що в наступні 5 - 10 років дуже навряд чи щось зміниться ( принаймні на краще ).
- Діти почали підростати, і грошей стало явно не вистачати.
- Просто стало набридати… 15 років — дуже великий термін, тут що завгодно набридне.
- робота є цілий рік;
- добрі перспективи зростання;
- значно вища зарплата ( як і не відразу, то в перспективі );
- цікава робота, до якої маю схильність.
Навчання
Першою моєю книжкою по Java стала " Програмування на Java для дітей, батьків, дідусів і бабусь " Якова Файна . Не впевнений, чи рекомендувати цю книгу початківцям, можливо, є і краще, але на той момент читати її було цікаво і досить зрозуміло. практичні приклади, наведені там, я ретельно пропрацював, що дало мені необхідний мінімум практичних навичок для подальшого просування. Книжку дочитав, вирішив пошукати курси. Очні курси були дорогими, та й не було впевненості, що вони того варті. І в цей момент я згадав, що під час роботи над книжкою десь (на habrahabr, здається) натикався на статті про JavaRush. І все закрутилося… Після прочитання та опрацювання книжки перші 10 – 12 рівнівя відібрав як насіння, було навіть занадто легко. Але все одно цікаво. Далі стало складніше та ще цікавіше.Проходив рівні я суворо послідовно, тобто. читав лекцію, і поки свіжо її розуміння вирішував завдання до неї, і до наступної лекції не переходив до тих пір, поки всі попередні завдання були вирішені, за дуже рідкісним винятком. Так я дістався до 20 рівня з 3-5 невирішеними завданнями.При виникненні проблем із вирішенням завдань, звичайно, дуже допомагає спілкування на форумі, і водночас, допомагаючи іншим форумчанам, ти сам прокачуєш свої навички! Десь через півроку я вирішив, що пора вже спробувати щастя і спробувати себе на співбесіді. Погуглив приклади резюме, кілька прикладів резюме надіслали мені знайомі, також написав Зеппу ( розділ Java Rush , прим. ред. ) і він мені дав кілька порад та шаблонів для резюме. Я його склав і переслав на перевірку Зеппу; він високо оцінив його. Далі я розмістив резюме на популярних сайтах пошуку роботи, склав список адреса HR-відділів найбільших IT-компаній Одеси , в яких були вакансії Java Developer ( не тільки»). Їх виявилося близько 20 . Половину я про всяк випадок одразу відклав на випадок, якщо скрізь облажаюсь, а на іншу половину розіслав резюме.
Перші співбесіди
Не скажу, що мене засипали запрошеннями, але зрештою за місяць-півтора я сходив на півдесятка співбесід. Якісь виявабося більш-менш вдалими, якісь не дуже. Було два або три тестові завдання, які я виконував зі змінним успіхом і одна співбесіда з розмовної англійської. Його я пройшов успішно, але до технічної співбесіди не дійшло: випередив інший претендент. Ще я ледь не потрапив на так званий «бенчмарк» у Luxsoft: пройшов тести, співбесіду, але в останній момент, коли прочитав контракт, схаменувся і відмовився. Якщо коротко, то три місяці вони тебе вчать, і платять стипендію 300 $ . Якщо ти їм сподобаєшся, вони пропонують роботу джуном ( 500 $). Через 9 місяців вони можуть підняти зарплату, але, як з'ясувалося з договору, якщо ти не відвідуватимеш курси або після курсів захочеш протягом чи року, чи двох, змінити місце роботи, ти зобов'язаний виплатити їм компенсацію за навчання у розмірі 2500 $ . Я вважав такі умови неприйнятними, і відмовився. Ще від однієї вакансії я теж сам відмовився: мені здалося, що там не матиме перспектив.Але головне: я набув дуже цінного досвіду проходження співбесід. Після кожної співбесіди я вже набагато краще уявляв, що мене чекає на наступному, які приблизно запитання мені будуть ставити, і яких чекатимуть на відповіді… Не те, щоб на всіх співбесідах ставлять ті самі питання, але багато питань ставлять майже завжди.Та й після кожної співбесіди я складав собі маленький списочок питань, у яких я «плавав», і потім знаходив на них чіткі відповіді. Загалом ходити на співбесіди — справді корисно, незалежно від результатів...
Стажування
Приблизно в цей же час ( осінь - зима 2013 ), мені написали в особу Java Rush з пропозицією взяти участь у « Реальному проекті ». Чесно кажучи, після того як мені перерахували технології, що використовуються в ньому ( Spring , Hibernate , GWT , MySQL , Maven , Git ), я злегка злякався, оскільки здебільшого я чув ці слова краєм вуха, а то й зовсім уперше . Я подумав, що гаяти мені нічого, час на участь є, і погодився.Спочатку було справді Важко, але через тиждень-другий, я, почитавши книжки та статті, вник у роботу вже наявного коду досить глибоко, щоб вже самому щось написати, і зробити свій перший коміт.Із хлопцями на проекті мені дуже пощастило. Нас було четверо Тимур (Timur), Женя (Groomsh), Серьога (SergeyKandalintsev) та я . Курували наш проект безпосередньо з JavaRush. Тимур займався здебільшого бекендом, Женя - фронтендом , Сергій - базою даних , я - трохи фронтендом , трохи - бекендом . Через пару місяців ми стали першою командою, яка успішно виконала справжній «Реальний проект» , яким зараз користуються всі джаварашівці – це проект «Рейтинги» ( у новій версії JavaRush цей проект вже не використовується). Сказати, що "Реальний проект" дав мені дуже багато - це нічого не сказати! Крім очевидного приросту цінних знань, до мене прийшло ще важливіше розуміння: Java — далеко не єдина необхідна навичка, хоч і основна. Java - це абетка програмування, але крім абетки потрібно знати правила правопису, граматику, синтаксис, правильно будувати речення, мати багатий словниковий запас ... А в програмуванні необхідно знати і вміти застосовувати безліч фреймворків, патернів та інструментів розробки, а ще знати, де шукати вирішення проблем і відповіді свої питання. Після реального проекту я став цікавитися більш сучасними технологіями, і поглиблювати своє розуміння вже відомих мені… Мої інтереси вийшли за межі «чистої» Java Core. А ще — в моєму резюме з'явився новий, солідний пункт у графі «Досвід роботи» з описом крутих і модних технологій, які були використані в проекті.
Подальші поневіряння
Стажування закінчилося, у мене розпочався новий трудовий сезон за висоткою… Вільного часу стало мало, питання зміни професії відійшло на другий план. Тим не менш, майже весь вільний час я приділяв програмуванню: писав різні «міні-проектики», іноді вирішував завдання на Java Rush , моніторив вакансії, а наприкінці осені записався на безкоштовні курси в IT-конторі DataArt . Cамі курси виявабося надто оглядовими: майже нічого корисного я там не впізнав. Натомість у рамках цих курсів студентам запропонували розбитися на команди та написати «Проект» . Проект полягав у написанні онлайн-системи тестування, з реєстрацією користувачів, частиною користувача ( проходження опитувальників ), і адмінкою (створення опитувальників та управління акаунтами ). Я опинився в одній із чотирьох команд, а згодом вийшло, що проект писав практично сам. Приблизно за місяць ( паралельно працюючи на висотці ) я сам написав цілком стерпний, як мені здається, веб-додаток, заснований на тих же технологіях і патернах, які ми використовували на стажуванні Java Rush ( плюс jsp, Spring Security, і ще дещо ). Якщо комусь цікаво, можу кинути посилання на відкритий репозиторій із вихідниками проекту…Висота взята!
У грудні мене запитабо на співбесіду до однієї контори. Мені сказали, що зателефонують, коли приймуть рішення… « Ну ось, як завжди, — подумав я тоді. – Якщо одразу не взяли, то надії мало ». Але через місяць, після Нового року, я написав HR-менеджеру цієї компанії, і поцікавився моєю долею. На мій подив вона відповіла, що вакансія ще відкрита і рішення ще не прийнято.Пройшов ще місяць, і ось, вже наприкінці січня, вона зателефонувала мені з питанням, чи актуальним для мене є пошук роботи, на що я «вимушено» відповів, що так, поки що шукаю. На що вона мені відповіла, що я вже її знайшов, бо я їм підходжу!Відчуття, звичайно, невимовне, коли тобі повідомляють таке телефоном, просто крила виростають! Щоб це зрозуміти, потрібно самому випробувати. Чого вам і бажаю у найближчому майбутньому! Моя перша робота – участь у розробці великого проекту ERP – додатки , довгобуду. У додатку виявилося дуже багато специфічних нюансів, тому київській компанії-розробнику знадобився програміст неподалік замовника — в Одесі , де я живу. Додаток написано на GWT + ExtGWT + Spring + Hibernate + MySQL, і ще купа допоміжних другорядних бібліотек. Так вийшло, що це саме той стек технологій, які я вивчав і маю якийсь досвід. З мінусів згадаю, що проект старий, і в ньому використано старі версії бібліотек та застарілі підходи проектування, причому застарілі настільки, що оновленню вже практично не підлягають. А ще виявилося, що допилювати результат 3-4 роківроботи інших програмістів я буду на самоті! Зрозуміло, я очікував, що до мене, як до будь-якого джуніора буде приставлений досвідченіший тимлід, він же наставник-порадник, який мене спрямовуватиме і проводитиме ревью мого коду. Але доля розпорядилася інакше, мені довірабо роботу, розраховану на досвідченого самостійного розробника. «Якщо така справа, — подумав я, — то непогано б відразу й прибавку до зарплати попросити». І підняв початкову цифру на 200 $ . Жодних обурень з їхнього боку це не викликало. конкретних цифр не називатиму, лише згадаю, що розмір зарплати відчутно перевершив мої очікування. До того ж у мене вийшов лише один ( а не три, як завжди ) місяць випробувального терміну. Оформабо мене, як завжди, через СПД (для програмістів це звичайна практика) .
Технології, які стануть вам у пригоді в роботі: особистий досвід
Дуже бажано, навіть мабуть НЕОБХІДНО знання баз даних, SQL ( MySQL ), jdbc , Hibernate , Jpa , мережевих технологій html , jsp , servlets , xml , Tomcat . Обов'язково знання основних JavaSE-патернів ( так звані GOF патерни ), так само ВЕЛИЧЕЗНИМ плюсом буде хоча б поверхове знання Spring , SpringMVC , збирача проектів Maven, логування log4j, юніт-тестування JUnit . Потрібно вміти працювати з системами контролю версій, наприклад Git . Іноді запитують або дають тестові завдання з веб-сервісів ( SOAP, REST ). Поряд з цим знання Java core має бути якщо не бездоганним, то, принаймні, дуже впевненим.Перші враження
Після перших двох тижнів я почав вникати в код, і тепер знаю, що все вийде.Хочу одразу помітити, що робота програмістом – це все-таки не курорт, це перш за все робота, на яку потрібно зранку вставати та ввечері повертатися. Але ця робота — набагато краща за багатьох інших. У ній є і інтерес, і гроші, і перспективи. А особливо приємно, коли ти зміг цього досягти сам, своїм розумом, працею та наполегливістю. Зміг змінити своє життя, що таки багато в чому ти сам господар своєї долі.Єдине чого я боюся, це того, що наді мною візьме гору лінь. Що досягнувши певного результату я зледа, і перестану рости в професійному сенсі. Але все-таки дуже сподіваюся, що цього не станеться. Ще раз хочу подякувати творцям цього чудового ресурсу! А тобі, джаварашовець, хочу побажати наполегливості та терпіння на обраному тобою шляху, як казав дідусь Ленін: «Пгавільною догогою йдете товагищі!» =) і ще не потурати своєї лінощів, і головне «NEVER GIVE UP». Дорогу здолає той, хто йде!
Післямова: через два роки…
…вирішив написати продовження моєї «Історії успіху». Причин тому три:- мене попросила адміністрація =);
- Я, як і раніше, вважаю, що саме цей ресурс відіграв ключову роль у моєму «увійти в айти»;
- Я, як і раніше, впевнений у тому, що мотивація — це так само один із ключових факторів у цій справі, а один із найкращих мотиваторів — це історії успіху реальних людей, які були в такій самій ситуації, як і ти, джаварашевець. Бо знаю, що часом просто руки опускаються... і в багатьох уже більше не піднімаються. Це справді непростий шлях, але він того вартий!
- Я ще не готовий, потрібно ще підучитися.
- Та, мене щось ніхто не кличе.
- Закінчив 20-30 рівнів JavaRush, плюс навчив трохи SQL, JDBC. якщо ще й основи Spring та Hibernate є, то ти взагалі у шоколаді.
- Накатал резюме за прикладами, зареєструвався на профільних сайтах, виклав його, потім засинав усі IT-контори спамом зі своїм резюме. Повір, без зворотного зв'язку ти не залишишся, багато хто просто відпишуться що матимуть тебе на увазі, а хтось обов'язково запитять на співбесіду.
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ