Профессия: программист. не всё однозначно

Как стать программистом

Чтобы быстро развиваться, вам будет нужна эффективная практика и поддержка от опытных разработчиков.

Участвуйте в буткемпах

«Boot Сamp» — (дословно «Сапожный лагерь») формат обучения, который использовали для лагерей по интенсивной подготовке солдат: вместо трёх лет обучение длилось всего три месяца. Такой формат взяли за основу обучения многие западные бизнес-школы.

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

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

Интенсив «Чат-бот с искусственным интеллектом на Python»

22–24 марта, Онлайн, Беcплатно

tproger.ru

События и курсы на tproger.ru

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

Найдите наставника

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

Необходимость знания иностранных языков

  • Возможность удалённой работы в международных командах и зарубежных проектах. Кроме престижа и интересных задач, это ещё и заработная плата в долларах или евро (при нашем курсе неплохая история).
  • Возможность работы в международных заказных проектах.
  • Доступность всех материалов по разработке, записей лекций, конференций, курсов и т.д. Фактически у вас исчезают ограничения в самообразовании, все ключевые материалы мира программирования становятся доступны.
  • Возможность эмиграции при наличии такого желания.
  • Возможность стажировок в крупнейших ИТ-компаниях.
  • Дополнительный фактор карьерного роста.

Выбор языка программирования

Есть много разных языков программирования, и пока вы не погрузились в тему, сложно в них разбираться. Какой начать учить, чтобы потом не пожалеть?

Давайте так. Мы будем описывать разные ситуации. Читайте каждый пункт по очереди. Если поймете, что этот пункт не про вас, переходите к следующему. И так пока не получите свой ответ.

  1. Хочу что-то предельно простое, может даже не самое практичное. Ваш язык: Ruby.
  2. Я хочу начать кодить для себя, из любопытства или в рамках самосовершенствования. У меня нет на примете проекта, который мне бы хотелось реализовать. Посоветуйте мне лучший способ начать. Ваш язык: Python.
  3. Я хочу начать кодить для себя, из любопытства или в рамках самосовершенствования. У меня нет на примете проекта, но я хотел бы выучить такой язык, чтобы после него было легко переключиться на любой другой (даже если изначально изучение первого языка будет трудным). Ваш язык: С++.
  4. Я хочу кодить для себя, и у меня на примете есть проект. Он связан с сайтами. Хочу выучить самый простой язык из тех, что позволит мне создавать сайты в интернете. Ваш язык: JavaScript.
  5. Я хочу кодить для себя, и у меня на примете есть проект. Он связан с сайтами, но в будущем я хотел бы работать не только с ними. Ваш язык: Python.
  6. Хочу стать программистом для себя, и есть идея проекта, связанного с приложениями на Android. Ваш язык: Java
  7. Хочу стать программистом для себя, и есть идея проекта, связанного с приложениями на iOS Ваш язык: Objective-C
  8. Хочу стать программистом для себя, и есть идея проекта, связанного с компьютерными играми или сложными программами в 3D. Ваш язык: C++
  9. Я иду в программирование ради денег, и хочу получить хорошую работу. Компания не имеет особого значения. Ваш язык: Java или Python.
  10. Я хочу устроиться на работу в компанию и работать с веб-интерфейами. Ваш язык: JavaScript.
  11. Хочу устроиться в компанию и работать с сайтами. Готов потрудиться чуть больше, но охватить при этом более широкий спектр знаний. Ваш язык: PHP.
  12. В будущем я хочу устроиться в крупную корпорацию вроде Google или Facebook. Ваш язык: Python.
  13. В будущем я хочу устроиться работать в Apple. Ваш язык: Objective-C.
  14. В будущем я хочу устроиться работать в Microsoft. Ваш язык: C#.

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

Бесплатные курсы и материалы для самостоятельного обучения

На площадке Coursera можно найти бесплатные программы по разным направлениям в IT на русском и английском языках:

  • Crash Course on Python, разработанный в партнерстве с Google;
  • Java Programming and Software Engineering Fundamentals от Duke University (США);
  • HTML, CSS, and Javascript for Web Developers от Johns Hopkins University (США);
  • iOS-разработка: Swift, UI и многопоточность от Московского физико-технического института;
  • Введение в язык Kotlin, курс Санкт-Петербургского политеха.

На площадке edX собраны бесплатные курсы Гарварда, Массачусетского университета, Беркли, Бостонского университета и других именитых учебных заведений. Например:

  • Python Basics for Data Science;
  • Programming for the Web with JavaScript;
  • Introduction to C++.

В подборках для новичков чаще всего встречается несколько книг, с которыми полезно познакомиться:

  • «Чистый код» Роберта Мартина;
  • «Совершенный код. Мастер-класс» Стива Макконнелла;
  • «Искусство программирования» Дональда Кнута;
  • «Паттерны проектирования» Эрика и Элизабет Фримен;
  • «Алгоритмы: построение и анализ» Томаса Кормена и Чарльза Лейзерсона.

Советы выпускницы SkillFactory:

В IT нужно постоянно учиться. Регулярно выходят новые версии рабочих инструментов или появляются более сложные. Если вы взяли курс, решайте все задачи сами, даже если они кажутся слишком трудными. На реальной работе никто не будет приносить все «на блюдечке»: нужно уметь искать информацию, разбираться в ней и применять на практике.Ищите компании с возможностями для роста. Менять работу не страшно, но внутри привычной компании это делать комфортнее. Теперь я работаю в компании, где могу пробовать новые специальности.Лариса Петрова, бывший инженер-программист второй категории, стала fullstack-разработчиком. Читайте ее историю

Законы Мерфи для программистов

  1. Ничто не работает так, как планировалось запрограммировать. 
  2. Ничто не программируется так, как должно работать.
  3. Хороший программист характеризуется умением доказать почему задачу невозможно выполнить, когда ему просто лень ее выполнять.
  4. На решение проблемы уходит в три раза меньше времени, чем на обсуждение всех «за» и «против» ее решения.
  5. Обещанный срок сдачи — это аккуратно рассчитанная дата окончания проекта плюс шесть месяцев.
  6. Программисту всегда известна последовательность действий, которыми пользователь может повесить его программу, но он никогда не чинит эту проблему, надеясь на то, что никому никогда не придет в голову эту последовательность исполнять.
  7. Настоящие программисты любят Windows — все ошибки, сделанные по собственной тупости, можно свалить на Microsoft.
  8. Следствие: 99 % проблем, сваливаемых на Microsoft, — это следствие тупости самих программистов.
  9. В приступе злости все почему-то молотят по невинному монитору, вместо системного блока.
  10. В случае голодовки настоящий программист еще месяц сможет питаться едой, выковырянной из-под кнопок клавиатуры.
  11. Настоящий программист уже как минимум поменял три залитых пивом клавиатуры.
  12. Все, кто испытывает проблемы с настройкой кодировки, автоматически считаются неандертальцами.
  13. Дилетантские разговоры о компьютерах вызывают резкую тошноту вплоть до приступов рвоты. Вопрос о том, как поменять обои в Windows, вызывает желание перерезать горло вопрошающему.
  14. У большинства людей, нуждающихся в твоей помощи, причина ошибки в работе программы чисто генетическая.
  15. HTML, HTTP, FTP, SMTP, TCP/IP, RTFM и т. д. — это слова, а не аббревиатуры.
  16. Словосочетание «мышка-норушка» не несет никакого смысла.
  17. Самые мистические проблемы, широко раздуваемые и афишируемые, в конце концов оказываются твоими глупейшими ошибками.
  18. Следствие: если твоя программа выполняет мистические действия, значит, ты сделал что-то невероятно тупое.
  19. Самое плохое ощущение для программиста — когда вокруг тебя стоят десять человек, и все пытаются найти причину проблемы в твоей программе, а ты уже понял, в чем проблема, но боишься сказать, потому что это что-то вопиюще глупое…
  20. Решение всех жизненных проблем находится в Интернете. Надо только уметь хорошо искать.
  21. Конфликт логических указаний в жизни вызывает фатальную ошибку в работе мозга программиста — возможно повышение температуры и сильное головокружение вплоть до рвоты или потери сознания.
  22. Тех, кто презирает программистов, программисты презирают сильнее, чем те, кто презирает программистов, презирают программистов, которые презирают тех, кто их презирает.
  23. Если ты понял предыдущее — ты программист.

На этом свете 10 типов людей: те, кто понимает двоичную систему, и те, кто не понимает ее.

Общение с наставниками

Отдельно хочется остановиться на особенностях работы с наставниками во время обучения, которые могут появиться абсолютно на разных этапах.

Их знания, опыт и советы очень ценны для начинающих программистов, поэтому при общении с ними стоит придерживаться простых правил:

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

Как стать программистом 1С

1С — это программа, которая широко используется в странах СНГ, для упрощения ведения документации предприятия и бизнеса.

Среда разработки 1С подразумевает под собой наполовину визуальное программирование, то есть разработчики уже позаботились о некоторых базовых объектах (такие как справочники, документы, регистры и т. д.), которые можно создать в 2 клика и добавить туда необходимые атрибуты. После того, как вы создали базовые объекты (с помощью графического интерфейса), вы можете собрать frontend часть вашей конфигурации — то, как увидит систему пользователь. Остается только запрограммировать между собой взаимодействие всех элементов. Синтаксис крайне прост, и если уже есть базовые знание программирования, то разобраться не сложно.

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

Чем дальше развивается 1С программист, тем больше программирование выходит на задний план, так как все достаточно тривиально. На передний план выходит построение и понимание бизнес логики процесса. Огромным плюсом является то, что для 1С уже написано множество готовых решений для ведения бизнеса в разных отраслях, и всегда можно подсмотреть, как такую задачу уже решают.

Кто идёт, потому что это модно, без понимания сути дела

Сфера ИТ находится на пике популярности в Беларуси и туда стремятся попасть люди даже далёкие от понимания того, в чём заключается работа айтишника. Они имеют смутное представление, чем занимается определённый специалист, не предполагают, подойдёт ли им профессия программиста, тестировщика или другие. После первых же занятий на курсах, можно легко разочароваться в выбранном спонтанно направлении и бросить новое начинание. Если хочешь разобраться в этом вопросе, пройди тест «Станешь ли ты программистом?» или посмотри серию вводных занятий от Адукара по каждому направлению в ИТ. Так ты сможешь решить, что тебе подходит больше всего: разработка, тестирование, управление или другой вид деятельности.

Вузы программирования в России

В России есть вузы программирования, которые предоставляют возможность обучаться этой специальности. Однако будем откровенны качество образования, которое предлагают университеты программирования в России, немного отстает от того, что предлагают европейские и американские университеты. Кстати, многие из них предлагают даже бесплатное образование. Да, там обучение будет на английском, но тем и лучше, потому что программисту без английского придется очень нелегко. Плюс зарубежный университет повышает шансы остаться «там» жить — это актуально для тех, кто планирует переезд. Поэтому если есть возможность, особенно финансовая, то можно присмотреться к «тем» учебным заведениям.

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

Школа поможет в выборе

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

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

Сочинение «Моя будущая профессия — программист» покажет истинные размышления школьников, выявит сильные и слабые стороны знания о выбираемой специальности. Выбрать профессию недостаточно, это желание нужно взращивать, как молодое дерево. Только тогда оно принесет плоды.

Как стать успешным программистом

Одна из самых востребованных специальностей так же, как и компьютер, нуждается в постоянном «обслуживании» и обновлении. Программирование не стоит на месте, и для того, чтобы быть востребованным сотрудником, нужно постоянно учиться. Для начала стоит разобраться, в чем должен хорошо разбираться будущий программист:

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

Впечатляющие доходы

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

Программист может рассчитывать на действительно хороший заработок. Очень часто молодые сотрудники, которые не имеют специальное образование, но тяжелой работой и решимостью рано вышли на карьерный путь в ИТ, превосходят заработками подавляющее большинство своих сверстников. Заработная плата и ставки для программистов кажутся заманчивыми даже в случае вакансий «джуниоров», не говоря уже об условиях, которые предлагают крупные компании в столице.

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

Обучение в колледже

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

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

Как поступить в колледж на программирование?

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

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

Обычно, для поступления в колледж требуются следующие документы:

  1. Копия свидетельства о рождении или паспорта, а также иметь при себе оригиналы документов. Если заявление подается онлайн, подойдут сканы оригинальных документов. Данные документы нужны для подтверждения личности и гражданства будущего студента.
  2. Заполненное стандартизированное заявление о поступлении на имя директора.
  3. Документ о получении образования.
  4. Медицинская справка образца 086/у.
  5. Фотографии размером 3×4 для личного дела абитуриента.

В разных колледжах могут потребовать и дополнительные документы, например, полис медицинского страхования, приписное свидетельство, временная регистрация, СНИЛС.

Если абитуриент хочет учиться в вечернюю смену, может потребоваться справка с места работы.

Выбираем подходящее направление

В зависимости от колледжа, количество направлений по программированию варьирует. Вот некоторые примеры направлений в колледжах: «Компьютерные сети», «Сетевое и системное администрирование», «Программирование и информационные системы».

Компьютерные сети

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

Сетевое и системное администрирование

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

Программирование и информационные системы

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

Формы и срок обучения

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

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

* * *

Как видите, диплом «программиста компьютерных игр» у нас в стране получить не получится (не будем врать сами себе, годовые курсы при ВМиК МГУ не в счет). С одной стороны, ничего хорошего в этом нет: на непрофильных факультетах придется изучать много «ненужных» предметов, а компьютерные игры разрабатывать чуть ли не подпольно (никто не обещает, что в вузе к вашим увлечениям отнесутся лояльно). А с другой стороны, согласитесь, «диплом специалиста в области IT» звучит как-то серьезнее, чем «диплом программиста по отладке игрового AI».

Не стоит забывать и про экспансию Google и Microsoft, которые уже шестой год инвестируют деньги в российские образовательные проекты. Недаром треть наших программистов уезжают работать на Запад.

В общем, ситуация с игровым образованием в стране улучшается

Помимо перечисленных вузов, обратите внимание на Южный федеральный университет, Владимирский ГУ и Кемеровский ГУ (он так вообще сотрудничает с ЮНЕСКО). Что-то нам подсказывает, что лет так через пять мы будем начинать статью примерно так: «В любом нашем вузе обучают программированию компьютерных игр, причем так лихо, что и не знаешь, куда поступить

Программа обучения необъятная, специализаций множество: тут пять лет учат только консервные банки штамповать, а здесь — космические корабли проектировать. Как выяснилось, хороших учебных заведений у нас масса».

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

Где учиться на программиста

Программист – популярная специальность, поэтому на рынке образовательных услуг есть немало предложений по обучению профессии. Что предпочесть, образовательные учреждения или курсы? И в том, и в другом варианте есть свои положительные стороны.

Вузы и колледжи

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

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

Некоторые вузы предлагают обучение программированию в качестве второго высшего или коротких курсов. Если образование первое, то перед поступлением абитуриенту потребуется сдать ЕГЭ:

  • математику;
  • русский язык;
  • информатику или физику (в зависимости от выбранного факультета).

Обучение происходит по разным направлениям и специальностям. Учебные заведения готовят:

  • техников-программистов;
  • разработчиков ПО;
  • разработчиков web- и мультимедийных приложений;
  • специалистов по информатике и вычислительной технике;
  • специалистов по информационной безопасности;
  • техников по компьютерным сетям и других специалистов.

Поступать или нет? Решать вам:

Преимущества Недостатки
Возможность в процессе обучения попробовать разные направления и осознанно выбрать специализацию Долгий период обучения. Получение среднего специального образования займет 3 года, диплома бакалавра – 4 года
Фундаментальное образование и получение знаний в смежных областях, что дает возможность легко сменить квалификацию Учебные программы меняются медленно и отстают от последних тенденций
Крупные компании часто присматриваются к специалистам еще на этапе обучения Обучение проводится по не самым актуальным специальностям
Возможность поступить на бюджет и не оплачивать свое обучение

Онлайн курсы

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

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

Ресурсы, предлагающие бесплатные онлайн курсы по изучению Си++, Python; JavaScript и других языков:

  • Stepik.org;
  • Loftblog.ru;
  • Alison.com;
  • Edx.org.

Последние две площадки подойдут для англоговорящих пользователей.

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

Где их найти:

  • GeekBrains (gb.ru);
  • Skillbox.ru;
  • Practicum.yandex.ru;
  • Codecademy.com;
  • Udacity.com;
  • Teamtreehouse.com.

На трех последних площадках курсы ведутся на английском языке.

Рекомендации полезных ресурсов

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

  1. Англоязычный hackr.io предлагает удобный поиск с фильтрами по существующим курсам, обучающим сайтам, пособиям и книгам на компьютерную тематику.
  2. Электронные книги, туториалы и видео уроки выложены на tutorialspoint.com .
  3. w3schools.com будет интересен новичкам. Сайт предлагает посмотреть уроки по разным языкам программирования и проверить свои знания с помощью онлайн упражнений.
  4. Много англоязычных каналов по теме программирования можно найти на YouTube: LearnCode.academy, ProgrammingKnowledge, thenewboston, Derek Banas.
  5. Среди русскоговорящих видео блогеров известны Гоша Дударь и S0ER.
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector