какая практика у программистов в колледже

Как стать программистом в 2021 (мой опыт)

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

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

Кто подумывает «войти в айти», велкам.

1. Выберите сферу, в которой хотите программировать

Руководителей раздражают ребята, которые пришли устраиваться на начальную позицию программиста с позицией «Ну я учил html, css и js, потому что… так проще… ну не знаю…».

Сфер много: есть IoT (интернет вещей), есть встраиваемые системы, есть бэкэнд и фронтэнд, есть мобилка в конце концов. И если уж совсем плохо и вы не знаете, что вам интересно, тогда смотрите рейтинги языков и выбирайте самый востребованный. Хотя я считаю, что в целом это не способствует осмысленному выбору.

2. Изучайте технологии

Когда вы выбрали сферу, сформируйте список технологий, который нужно изучить. На написании кода свет клином не сошелся. Помимо него вам нужно как минимум: знать Git, уметь немного в Linux и желательно влезть в методологию Devops.

Важно понимать: программирование ради программирования никому не нужно. Программист должен уметь решать задачи.

3. Нарабатывайте практику

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

Таких людей сразу видно на собеседовании, они мыслят более самостоятельно.

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

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

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

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

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

5. Гуглите, как в последний раз

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

Так что учись гуглить и сразу на английском языке. Ведь при написании кода ты будешь делать это постоянно.

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

Спасибо за внимание!

Сколько этих статей о том как войти в АйТи. Но ни один не скажет главного. АйТи это не работа мечты, все красиво только на бумаге. Найти место работы где будет комфортно, крайне сложно. Кроме того далеко не каждый человек который даже научится писать код, сможет программировать. Программировать это не просто писать код. Это исследовательская, аналитическая работа и инжинеринг. И это только верхушка айсберга.

детский сад, какой-то.

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

Во-первых, нужно иметь к этому способности: как минимум, аналитическое, логическое, абстрактное мышление.

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

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

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

Источник

Стажировка в сфере IT с дальнейшим трудоустройством

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

Я обучалась в Санкт-Петербургском государственном университете промышленных технологий и дизайна, по программе: реклама в медиа-индустрии. Специальность была — digital-стратег.

Основная задача преподавателей данной специальности, заключалась в том, чтобы обучить нас комплексно взаимодействовать с клиентом. То есть, мы изучали что такое: интернет-маркетинг, SMM-продвижение и SEO-оптимизация.

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

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

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

Я могу начать подробно расписывать, где заканчивается зона ответственности «сеошников», веб-дизайнеров, прочих специалистов и начинается моя, но, для общего понимания вышеуказанной информации более, чем достаточно. Хотелось бы сказать — это очень неоднозначный вопрос, поскольку все проекты разные. Исходя из моего опыта, взаимодействие сотрудников в команде формируется на основе поставленных задач. Поэтому, четкие рамки между сотрудниками конечно есть, но иногда границы размываются.

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

Источник

Студенческие IT стажировки — как мы стараемся делать их наиболее эффективными

Привет! Меня зовут Денис Александров, и помимо работы в качестве Android-разработчика, я уже более семи лет готовлю стажеров в разных компаниях и занимаюсь студенческими практиками. Мне приходилось и работать с перспективными студентами персонально, и проводить групповые стажировки с отсевом. Я собрал самые важные и полезные тонкости проведения стажировок для студентов, благодаря которым мы делаем наши стажировки максимально полезными и эффективными для всех ее участников.

какая практика у программистов в колледже. Смотреть фото какая практика у программистов в колледже. Смотреть картинку какая практика у программистов в колледже. Картинка про какая практика у программистов в колледже. Фото какая практика у программистов в колледже

Когда (и кого) начинать стажировать

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

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

Работать со студентами, но дать им возможность успешно закончить учебу.

Брать студентов в штат без учета их образовательной деятельности.

Мы стараемся придерживаться второго подхода, и на это есть несколько причин.

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

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

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

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

какая практика у программистов в колледже. Смотреть фото какая практика у программистов в колледже. Смотреть картинку какая практика у программистов в колледже. Картинка про какая практика у программистов в колледже. Фото какая практика у программистов в колледже

Я более 11 лет работаю в преподавании, и сейчас ребята, которых я готовил еще к ЕГЭ, уже работают в крупных компаниях. Я периодически пересекаюсь со своими бывшими студентами на хакатонах и олимпиадах, и ставлю себе мысленные заметки «вот студент, который прошел ожидаемый путь развития; было бы неплохо посмотреть, как он может применить опыт на проекте, где я сейчас работаю». Конечно, это очень долгосрочная и туманная по результатам работа, но в плане результатов игра стоит свеч.

Нашу работу со студентами можно разделить на 3 основных этапа:

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

Студенческая практика. Это обязательная часть обучения в вузе, цель которой — закрепить полученные знания. Каждый учащийся должен «найти» себе место для практики и отчитаться о ней, так что со стороны студентов «спрос» всегда есть. Но бизнес заинтересован в том, что привлечь самых талантливых и мотивированных, и для этого мы так много работаем на 1 этапе.

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

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

Вот что мы делаем для того, чтобы найти и привлечь лучших студентов:

Участие в университетских хакатонах, олимпиадах и дипломных работах в качестве экспертов.

Преподавание в вузе.

Открытые занятия и семинары на территории вуза.

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

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

В вузе студента стоит научить базовым вещам — языку C++, принципам ассемблирования и компиляции, способам организации памяти на «железном» уровне и др. Да, этого не будет в списке требований к Android-кандидату. Как, наверно, не будет и в 98% других вакансий. Вуз дает ту теоретическую базу, которая позволяет, например, видеть протекающие дыры в абстракциях (по выражению Джоэла Спольски, сформулировавшего Закон дырявых абстракций).

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

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

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

Многие студенческие проекты страдают не столько от низкой степени технической проработки (как будто в большом бизнесе такое не встречается!), сколько от непонимания в целом — зачем и для кого предназначен объект исследования. Студентам всегда тяжело даются фреймворки, процессы разработки и прочие «бытовые» вещи в IT-разработке. Без практики знания о таких вещах сложно усваиваются. Мы стараемся помочь студентам разобраться в этих процессах — подсказываем, где применение фреймворка поможет сэкономить драгоценное на хакатоне время, проводим игровые занятия с разбором ролей в команде разработки и в бизнес-процессах.

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

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

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

Студенческая практика

Я встречал множество способов организации студенческой практики — от «принеси диплом на подпись в последний день» до «вот тебе бизнес-фича в реальном проекте, у тебя как раз две недели, должен успеть».

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

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

какая практика у программистов в колледже. Смотреть фото какая практика у программистов в колледже. Смотреть картинку какая практика у программистов в колледже. Картинка про какая практика у программистов в колледже. Фото какая практика у программистов в колледже

Наш воркшоп QARATE. В нем приняли участие в том числе и мои стажеры.

Обязательное время в офисе и минимум часов мы не обозначаем. Посещать занятия тоже не обязательно — материалы можно изучить самостоятельно (хотя это и очень сложно).

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

Есть способ «обойти» практику. Если у студента уже есть неплохой проект, портфолио или опыт стажировки в другой компании, мы готовы рассмотреть вариант «перезачесть» практику.

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

какая практика у программистов в колледже. Смотреть фото какая практика у программистов в колледже. Смотреть картинку какая практика у программистов в колледже. Картинка про какая практика у программистов в колледже. Фото какая практика у программистов в колледже

Для меня главным критерием готовности человека к стажировке является умение быстро и в необходимой мере учиться. Так или иначе, стажировка — это процесс интеграции в реальные проекты и процессы компании. Здесь просто необходимо научиться учиться. Если студент проявляет все необходимые предпосылки, мы предлагаем ему стажировку.

Стажировка

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

Мы сформулировали несколько причин, почему стоит максимально отложить привлечение начинающих специалистов к боевым проектам:

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

Поэтапное внедрение в процессы. Тяжело с ходу разобраться во всех особенностях работы в IT. Стажировка — один из способов поэтапного внедрения в компанию.

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

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

Стажировка и стресс

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

Что мы делаем для поддержания студента:

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

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

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

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

Стажировка и оплата

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

Все позиции стажеров у нас оплачиваются. Кроме этого, у всех стажеров регламентируется рабочее время и количество часов в неделю (в соответствии с принятой ставкой). Все «по-взрослому» — даже если сотрудник не сразу приступает к «боевым» проектам, процесс работы все равно соблюдается — код ревью, работа в команде и с менеджером.

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

Что считается успешным завершением стажировки

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

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

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

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

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

И наконец, после того, как все критерии соблюдены, мы можем предложить стажеру позицию разработчика.

Что дальше?

какая практика у программистов в колледже. Смотреть фото какая практика у программистов в колледже. Смотреть картинку какая практика у программистов в колледже. Картинка про какая практика у программистов в колледже. Фото какая практика у программистов в колледже

А дальше — «боевой» проект. Здесь начинающий разработчик сталкивается с суровыми буднями программиста. Например, узнает, что код далеко не всегда пишется по канонам. Узнает, как появляются костыли. Разбирается, почему рефакторинг — вещь нужная, но редко выполнимая. В общем, продолжает учебу, потому что на мой взгляд самое лучшее в разработке — вечное обучение.

Кроме этого, студент принимает участие в экспертизе других разработчиков (попросту code review). Я считаю, что для этого крайне важно привлекать специалистов разных уровней. Так и дилетантские ошибки найти проще (а опытные разработчики часто их пропускают), и вырасти команде разработки проще. В конце концов, Junior-разработчику тоже нужно разбираться в чужом коде, и лучше начинать это делать уже на этапе code review.

Вместо выводов

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

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

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

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

Источник

Добавить комментарий

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