Є кілька варіантів розвитку подій, в результаті яких людина стає програмістом. Перший - батьки-програмісти, які всьому навчили своїх дітей. Таким дітям навіть не потрібно йти в університет. Другий варіант - модна професія програміста. Після школи потрібно було вибрати, куди піти вчитися, і вибрали модний напрямок IT, начебто сподобалося. І останній варіант - хобі, яке переросло в роботу.
Якщо з вами нічого з перерахованого вище не сталося, значить, у вас є вибір з чотирьох варіантів:
Цей варіант можна використовувати як самостійно, так і в парі з іншими методами. В інтернеті повно сайтів, книг і програм, які допомагають вивчати різні мови програмування і технології. Але це найважчий шлях для початківців.
Якщо ви закінчуєте школу і хочете бути програмістом, тоді йдіть в університет. Якщо не за знаннями, тоді за скоринкою. Вона може послужити бонусом при влаштуванні на роботу. Хоча і якісь знання ви теж отримаєте. Але не забувайте займатися і самонавчанням. До вибору вузу варто підійти дуже відповідально. Уважно вивчіть програми навчання і вибирайте найкращі технічні вузи.
Буде дуже непогано, якщо ви знайдете людину, яка погодиться допомогти вам і направить вас в правильному напрямку. Він підкаже відповідні книги і ресурси, перевірить ваш код, дасть корисні поради. До речі, ми вже писали про корисному ресурсі, де ви зможете знайти ментора. Наставника можна шукати серед знайомих програмістів, на IT-тусовках і конференціях, на онлайн-форумах і так далі.
Спробуйте пошукати в своєму місті курси, де вас навчать якомусь мові програмування або технології. Я був приємно здивований кількістю таких курсів в Києві, в тому числі безкоштовних і з подальшим працевлаштуванням.
По-перше, не варто чекати, поки ви прочитаєте всі книги по обраному мові програмування. Починайте писати свої перші рядки коду вже після другого розділу книги. Виконуйте всі завдання з книг, передруковуються приклади, розбирайтеся в них. Ускладнюйте приклади і завдання з книг своїми ідеями. Створюйте свої завдання до пройденого матеріалу. Вирішуйте ці завдання.
По-друге, вам потрібно знайти свої перші проекти. Це, напевно, найскладніший варіант, але робочий. Вам доведеться самому шукати замовлення, виконувати їх, морочитися з оплатою. Для новачка це архіскладно, але зате потім всі інші варіанти здадуться плёвим справою. Виконані проекти можна буде записати в досвід і показати вашому майбутньому роботодавцю. Реальні проекти є великим плюсом в вашому резюме.
Якщо ви знаєте англійську мову, реєструйтеся краще на англомовних біржах. Ринок там більше. Якщо не знаєте англійської, вчіть його. А поки що вам доступні російськомовні біржі фрілансу. Шукайте невеликі проекти, які відповідають вашому рівню знань або трохи вище нього. Подайте заявку на пару десятків таких завдань. І приготуйтеся отримати море відмов. Але якщо одна-дві заявки вистрілять, у вас буде шанс отримати реальний досвід.
Ще одним непоганим варіантом для отримання реального досвіду є open source. Таким проектам завжди потрібні нові люди, нехай навіть і новачки. Ви можете пошукати в проекті баги або подивитися в баг-трекері і запропонувати методи їх вирішення. Знайти такі проекти легко на GitHub абоінших сервісах для хостингу коду. Не соромтеся задавати питання, які там.
Четвертий варіант отримання досвіду - допомога знайомим програмістам. Попросіть їх передати вам маленькі і нескладні завдання. Якщо щось не буде виходити, у вас завжди буде до кого звернутися. І при цьому ви будете брати участь в реальному проекті.
Останній спосіб - власні проекти, різні хакатони або робота в коворкінг. Свої проекти складно починати самому, краще пошукати знайомих або друзів.