Як я пройшов шлях від абсолютно початківця до розробника програмного забезпечення - і як ти теж можеш

Два роки тому я був там, де ти сьогодні.

Я хотів стати професійним програмістом. Але я не уявляв, як це зробити.

Я не мав вищої школи, не мав попереднього досвіду кодування, і я затягував математику.

І виник сумний сумнів: чи може хтось такий, як я, стати розробником?

Ну, я це зробив. У мене є робота, про яку мрію. Я розробник програмного забезпечення.

Мене часто запитують, як я це зробив.

Ось три життєво важливі дії, які я зробив, які допомогли мені перейти від абсолютно новачка до розробника програмного забезпечення.

1. Складіть свою дорожню карту

Найбільша помилка, яку роблять початківці розробники, полягає в тому, що у них немає плану.

Немає дорожньої карти.

Коли у вас немає плану, ви відчуваєте себе загубленим. Ви берете підручники з кодування, можливо, будуєте проект чи два. Потім проходять місяці. Ви думаєте, чи стану я коли-небудь розробником? Це все так заплутано . Ви не уявляєте, яким шляхом піти.

Рішення? Складіть дорожню карту - прямо зараз. Створіть план, як саме ви станете розробником.

Ваш перший крок: Вирішіть, чи збираєтесь ви робити завантажувальний табір з кодування або проходити онлайн-курси.

Для мене я вирішив не відвідувати буткемп. Я створив свою навчальну програму і навчив себе ... усьому.

Оскільки я доросли до домашнього навчання, мені було зручно вчитися самостійно, тому я вирішив навчити себе кодувати, використовуючи різні онлайн-курси, починаючи від freeCodeCamp і закінчуючи Udacity.

Цей підхід коштує набагато дешевше, ніж завантажувальний табір, але він мав і мінус: у мене не було наставників кодування чи навчальної програми кодування. Навчання в Інтернет-ресурсах означає, що ви нічого не платите або дуже мало, але, як я виявив, у вас немає великої підтримки. І ти будеш боротися сам, як і я.

Людей приваблює навчання кодуванню з Інтернет-ресурсів, як і я, але це не завжди найкращий спосіб. Низька вартість - це велика вигода, але переконайтесь, що ви в змозі добре вчитися самостійно і можете притягувати себе до відповідальності - без великого наставництва чи підтримки.

Bootcamps дорогі, але вони часто мають набагато більшу підтримку та підзвітність.

Уважно вирішіть, який шлях для вас найкращий.

Якщо ви навчитеся кодувати без завантажувального табору, я пропоную вибрати доступну онлайн-програму, яка має хоча б певне наставництво та навчальну програму. Це забезпечить вам менше боротьби та отримаєте потрібний відгук. Наноградуси та технологічні програми Udacity пропонують деякі огляди наставництва та коду.

Якщо ви вирішите навчитися кодувати безкоштовно, програма FreeCodeCamp є фантастичною, і якщо ви залучитеся до їх спільноти, ви досягнете успіху.

Вибравши свій шлях, заповніть свою дорожню карту, відповівши на ці запитання:

  • Чи хочу я стати розробником повного стеку, інтерфейсу або серверного сервера? Вирішіть, на чому ви зосередитесь на навчанні. Знайте, яку мову та бібліотеки вам потрібно буде вивчити.
  • Скільки годин на тиждень я буду вчитися, і коли? Визначте час тижня, в якому ви будете займатися кодуванням, і ніколи не пропустіть час навчання.
  • З якої дати я почну претендувати на роботу ? Встановіть термін, коли ви подаватимете заявку.
  • Від чого я відмовлюсь ? Приємно уявити, як ти працюєш розробником, але дорога туди означає ранній ранок, вихідні та пізні ночі напруженої роботи.

Будьте реалістами: подивіться, на що ви витрачаєте час щотижня, і відмовтеся від одного. Для мене я не хотів відмовлятися від часу з родиною, але вирішив відмовитись від спілкування з друзями. У більшість субот, замість того, щоб проводити час із друзями, як зазвичай, я залишався вдома і програмував.

Створюючи свою дорожню карту, майте на увазі: на відміну від багатьох маркетингових ажіотажів, які ви бачили, не існує жодного курсу магічного кодування, жодної магічної програми, ані магічного завантажувального табору, який зробить вас розробником. Багато людей запитують мене, який онлайн-курс я навчився кодувати, ніби є один «золотий квиток», який перетворить вас на розробника.

Немає.

Тільки ви можете зробити себе розробником.

Ваша пильність і рішучість приведуть вас туди. Але я також використовував метод зміни гри, щоб навчитися кодувати, щоб стати розробником.

Що це було?

2. Тренуйте свою увагу.

Для кожного доступний мільйон безкоштовних курсів кодування.

Якщо так просто отримати доступ до безкоштовних курсів кодування, чому так складно навчитися кодувати? Чому так важко стати розробником?

Оскільки багато з нас не знають життєво важливих навичок, необхідних для вивчення та оволодіння мовами програмування. Цю навичку називають Глибокою роботою, яку популяризував інформатик Кел Ньюпорт.

TL; DR : Щоб навчитися важким речам, ви повинні тривалий час інтенсивно фокусуватися . Це глибока робота.

Але більшість з нас активно знищує здатність зосереджуватися, і мало хто робить глибоку роботу.

Подумайте про той останній раз, коли ви стояли в черзі. Скільки часу проходить, перш ніж ви відчуєте змушення взяти телефон і перевірити сповіщення? Або що стосується самої цієї статті - чи переходили ви на нову вкладку під час читання? Перевірили свій обліковий запис у Twitter? ?

На сьогоднішній день є нормою уваги золотої рибки. І тому нам так важко навчитися таким складним речам, як кодування. Як тільки я це зрозумів, я зрозумів, що якщо я зобов’язуюсь робити глибоку роботу, я можу навчитися важким речам, які мені потрібно було знати, щоб стати розробником.

Коли ви сідаєте кодувати, встановіть таймер на 90 хвилин. Протягом усього часу зосередьтеся на додатку, який ви створюєте, або проблемі кодування, яку ви намагаєтеся вирішити. Не перевіряйте свої сповіщення. Не відкривати нову вкладку. Коли ви виявите, що мрієте, швидко поверніть свою увагу на кодування.

Тренуйте свою увагу, як від цього залежить ваша майбутня кар’єра - адже це так.

Без практики глибокої роботи я сьогодні не був би розробником.

3. Гнати свою цікавість.

Коли більшість людей намагаються навчитися кодувати, вони починають навчальний план з речей, які вони “повинні” знати.

Тоді їм нудно. Так само, як і в школі, коли ти вчишся новим речам лише тому, що ти мав би їх навчитися, але ти не знаєш, навіщо тобі це вчитися чи чому тобі навіть байдуже. Втратити інтерес легко.

Щоб навчитися кодувати, знайдіть щось цікаве для вас щодо програмування. Знайдіть те, що викликає у вас допитливість, щоб дізнатись про це в суботу ввечері - адже це потрібно робити часом.

У мене є рядок із «Аліси в країні чудес», який застряг у мене:

Раніше вона ніколи не бачила кролика, у якому не було ні жилетки, ні годинника, щоб дістати з неї, і, палаючи цікавістю , побігла за ним .

Оскільки в своїй кар’єрі я працював із більш старшими розробниками, я зрозумів: найкращі програмісти не повинні змушувати себе завжди вчитися більше. Вони завжди вчаться, бо, як і Аліса, вони горять цікавістю .

Деякі намагаються кодувати однією мовою і ненавидять її, потім беруть іншу мову і люблять її. Не забудьте спробувати різні мови програмування та вивчити різні галузі програмування, щоб виявити, що викликає у вас цікавість.

Якщо ви спробували навчитися кодувати кілька разів з різних сторін і все одно відчуваєте, що змушуєте себе, то кодування може бути не для вас. На відміну від маркетингових матеріалів більшості завантажувальних таборів, навчитися кодувати за три місяці і отримати пропозицію про роботу на 100 тис. Доларів відразу після цього не є реальністю для більшості. Кодування - це не швидка схема збагачення. Не вчіться кодувати, якщо вам це нудно, бо ви пропустите пошук своєї справжньої цікавості в житті. Однак, якщо вас цікавлять технології, але не кодування, є багато інших неймовірних та затребуваних навичок, яким ви можете навчитися: проектування, аналіз даних тощо.

Якщо у вас є цікавість до програмування, переслідуйте це. Чим більше ти підеш за своєю цікавістю, тим більше ти її маєш. І поки ви переслідуєте свою цікавість, не хвилюйтеся, звідки ви родом. Не турбуйтеся про відсутність ступеня CS або про те, що за вами.

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

Навіть якщо ви абсолютно новачок.

Розпочати зараз.

Якщо вам сподобалась ця історія, будь ласка, натисніть і утримуйте? кнопка! Щоб підтримувати зв’язок зі мною, підпишіться на мій бюлетень, де я ділюсь порадами щодо вивчення кодування та безкоштовним курсом кодування.