Преимущества самообразования в программировании

0
2394
views

Перевод статьи Алекса Смита «The Advantages Of Being Self-Taught».

Самостоятельное изучение программирования

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

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

Коммуникативные навыки

Agile-команда редко состоит из одних разработчиков. Вы должны не только уметь писать код, но и объяснять сложные технические проблемы менеджерам, людям из отдела продаж и маркетинга, а иногда даже клиентам и потребителям.

Вращаясь в мире разработки, легко провести 99% времени, общаясь с другими разработчиками, которые прекрасно вас понимают. А вот возможностей получить опыт адаптации своего языка для не-разработчиков – не так много.

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

Более быстрая обучаемость

Автор Малкольм Гладвел популяризировал теорию о том, что нужно 10 тысяч часов практики, чтобы стать экспертом в чем угодно. С этим можно поспорить, но мантра «практика помогает добиться совершенства» применима ко многим предметам.

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

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

Как только вы получите свою первую работу в мире технологий, вы столкнетесь лицом к лицу с вещами, к которым не готовы. Но поскольку вы научились учиться, вы сможете быстро адаптироваться и почти моментально встать на ноги.

Профессиональные навыки

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

Самообучение оставляет вас без приятной глазу квалификационной степени, которую можно указать в своем CV. Альтернативой в данном случае выступает создание портфолио из готовых работ – хоть выпущенных приложений, хоть опубликованного на GitHub кода (в идеале нужно и то, и другое).

Если у вас есть собственные готовые приложения, значит, вы изучили весь процесс, от «Файл» –> «Создать новый» до развертывания. А чтобы поддерживать портфолио на GitHub нужны по крайней мере базовые знания контроля версий. Вы уже столкнулись со многими задачами, с которыми встречаются компании, пытаясь вывести продукт на рынок. Так что когда вы найдете работу, вы сможете со всем этим справиться.

Удовлетворение от работы

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

Если вы достигли точки, когда хотите превратить свое хобби в карьеру, получение первой работы будет просто подарком небес. Вы потратили столько своего свободного времени, чтобы стать программистом, и вот – вы получаете деньги за выполнение того, что любите делать. Это невероятное чувство, вдохновляющее на прекрасную работу. А это делает вас очень ценным работником в глазах работодателя.



ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here