Яндекс Практикум. Программирование и анализ данных
12.8K subscribers
525 photos
2 videos
513 links
Полезное для начинающих разработчиков, тестировщиков и аналитиков данных. Отвечаем на вопросы и делимся новостями Практикума. Выбрать курс и попробовать свои силы бесплатно: https://ya.cc/t/3bO2f2245AmCeQ

Номер заявления в РКН 4970781590
Download Telegram
Дейли, или ежедневное совещание, вторник, 11:30

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

👀 Ещё одна активность, которая может быть ежедневной для всех разработчиков, — код-ревью. Это процесс проверки кода, который написан другими разработчиками в команде. Цель ревью — обеспечить соответствие стандартам оформления, принятым на проекте; выявить потенциальные ошибки.

iOS-разработчики делают код-ревью друг друга, но иногда, при наличии соответствующих компетенций, ревью может быть кроссплатформенным — iOS-разработчики делают ревью Android-разработчиков и наоборот.
Груминг, или оценка задач на следующий спринт, среда, 12:00

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

🌿 Тесное взаимодействие с дизайнерами — основная особенность работы iOS-разработчика. Разработчик должен точно воплотить дизайн-макеты в коде приложения, соблюдать дизайн-рекомендации и обсуждать с дизайнерами решения по улучшению пользовательского опыта. У Apple есть специальные гайдлайны для создания интерфейсов, которым рекомендовано следовать, — Human Interface Guidelines
Please open Telegram to view this post
VIEW IN TELEGRAM
Декомпозиция, или оценка задач в часах, четверг, 11:00

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

✏️ Немного про различия iOS- и Android-разработки:

— Языки программирования. Приложения под iOS пишут на языке Swift, а под Android — на Kotlin.
— Дизайн-гайдлайны. HIG для iOS и Material Design — для Android. Это влияет на внешний вид и взаимодействие приложений.
— Парк устройств. На iOS более ограниченное разнообразие устройств. Это упрощает задачу адаптации пользовательского интерфейса под разные размеры экранов и разрешения.
— Доступность в маркетах. У iOS-приложений более строгий и контролируемый процесс верификации через App Store. А Android-приложения более гибкие в распространении и могут быть доступны через разные магазины приложений.

Как я сделал выбор? Это было достаточно просто — я фанат компании Apple. И не только продуктов, но и её истории и философии. Поэтому, когда после магистратуры встал вопрос «В какую область идти разрабатывать?», выбор был очевиден 🙂
Демо, или демонстрация результатов спринта, пятница, 16:30

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

Вот и закончился спринт! Мы его прошли вместе с вами и побывали на основных встречах, в которых участвует iOS-разработчик 🙂 В завершение отвечу на два частых вопроса:

Что посмотреть или почитать новичкам в iOS-разработке?
Фундамент про Swift
Статьи с отличной структурой по iOS & Swift
Телеграм-каналы: iOS Good Reads и Код Воробья для iOS разработчиков
Комьюнити в Телеграме: Coffee&Code | Mobile Community
Смотреть WWDC от Apple каждый год, чтобы быть в курсе нового.
Бесплатная часть курса «iOS-разрабочик», чтобы начать свой путь.

Что порекомендовать новичкам? Постоянно обновляйте знания и следите за последними технологическими трендами, делайте акцент на качественном пользовательском интерфейсе и дизайне с учётом дизайн-гайдлайнов, придерживайтесь хороших практик разработки и вступайте в сообщества разработчиков. Эти шаги помогут вам создавать высококачественные iOS-приложения и развивать свои навыки в этой динамичной области.
«Быть дотошным, но не душным»: какие софтскилы нужны джуну-тестировщику

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

Делимся краткой подборкой ↓

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

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

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

Умение работать в команде. Работодателю важно не только, как вы справитесь с задачами, но и уживётесь ли в коллективе. Будьте готовы рассказать про свои увлечения и показать, что вы за человек, — а как устроитесь на работу, поддерживайте внутренний tone of voice. Например, не общайтесь формально, если в компании принято обращаться на ты.

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

Гибкость. Важно, чтобы специалист пытался решить проблему, даже если ситуация кажется безвыходной. Если на интервью вас спросят «что вы будете делать, если надо поправить баг, а разработчик говорит, что бага нет», не стоит отвечать, что это не ваша проблема — лучше постарайтесь предложить варианты её решения.
↓ Знакомимся! Это Дима, старший разработчик в Delivery Hero и один из авторов курса «Go‑разработчик c нуля». Он поделится, как познакомился с Go и кому благодарен за развитие рынка Go-разработчиков. Расскажет, какими преимуществами обладает Go, почему это перспективный язык и какой у него самый главный недостаток.

Если интересно узнать больше, задавайте Диме вопросы в комментариях!
💎 Всем привет! Меня зовут Дима, и я обучался Go задолго до бума онлайн-образования. Я учился в университете, и мне повезло пройти бесплатные курсы, которые создал Василий Романов с командой.

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

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

• Итак, я закончил курсы в 2018 году. Кайфанул, хотя на тот момент ещё не понимал до конца преимущества и недостатки какого-либо языка. В 2019-м я устроился разработчиком и начал замечать, насколько быстро растёт популярность Go. Внезапно он стал нужен всем.

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

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

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

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

🔵 Как мне кажется, Go в первую очередь нужно рассматривать как инструмент для построения производительного, надежного и поддерживаемого бэкенда.

Почему Go выбирают всё больше компаний и какая у него главная проблема — в следующем посте.
Please open Telegram to view this post
VIEW IN TELEGRAM
Go зарекомендовал себя как язык, который решает проблемы бизнеса. Это включает в себя относительную легкость поддержки кодовой базы, онбординга разработчиков, возможность поймать большинство ошибок на этапе компиляции, кросс-платформенность, высокую производительность.

Поэтому Go отдают предпочтение крупные международные компании: Uber, Twitch, Dropbox, Google. В России примерами могут стать Яндекс, VK, Avito, Ozon. При этом с каждым годом Go становится всё популярнее, и спрос на разработчиков растёт.

Возможно, прозвучит наигранно, но главная проблема Go — пока что спрос превышает предложение. Хотя я и говорил, что Go получил широкое распространение в России, специалистов всё равно не хватает.

💙 Помните мою историю из первого поста? Так сложилось, что теперь уже я занимаюсь курсом по Go. Очень надеюсь, что благодаря нему появится много крутых специалистов. А пока что я готов ответить на ваши вопросы, если они у вас есть :) Спрашивайте обо всём, что интересно!
Please open Telegram to view this post
VIEW IN TELEGRAM
«Java-разработчик»: работа за кадром

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

Команда курса «Java-разработчик» рассказала, чем занимаются все эти люди и как устроена работа над учебной программой, кто придумывает задачи и что происходит, когда курс уже запустился (спойлер: работа не заканчивается никогда).
This media is not supported in your browser
VIEW IN TELEGRAM
Вовсе не чёрная и не очень пятница

Рассказываем про технологии, которые помогут вам учиться и про скидки, которые помогут начать путь к новой профессии по ссылке 🧡
Please open Telegram to view this post
VIEW IN TELEGRAM
Подборка сайтов, где тестировщики могут проверить свои силы

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

UI Testing Playground
Можно потренироваться на ошибках, которые могут возникнуть в интерфейсе веб-приложений: динамический ID, данные AJAX, ввод текста, клик, полосы прокрутки, наведение курсора мыши и многое другое

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

Testers Playground
16 задач-челленджей для по Chrome DevTools, OWASP и доступности.

THE-INTERNET
Репозиторий со сценариями автоматизации тестирования ПО.
🍁 Дайджест октября

В подборке собрали статьи и записи вебинаров, которые пригодятся новичкам и тем, кто выбирает профессию в IT.

Читаем:

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

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

15 ресурсов по Git. Что почитать/посмотреть?

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

Зачем Git тестировщику?

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

Слушаем и смотрим:

Прямой эфир: как определиться с профессией в IT?

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

Воркшоп: пишем игру на 1С

Эксперты рассказали про язык программирования 1С: в чём его особенности и какие преимущества даёт разработчикам знание этого языка. И показали, как выглядит работа программиста 1С.

Вопрос-ответ про бэкенд-разрабку

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

Вопрос-ответ про фронтенд-разработку

Рассказали, как попасть в сферу фронтенд-разработки и отвечать за видимую часть сайтов. Обсудили частые барьеры в обучении и трудоустройстве.

Что делают разработчики в Кинопоиске

Заглянули в рабочие будни крупной IT-компании. Разработчики на примерах показали, чем в онлайн-кинотеатре занимаются бэкендер, фронтендер, мобильный разработчик и тестировщик.
Что есть на Youtube для Python-разработчиков

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

👽 Плейлист: практика программирования на Python 3
Цикл лекций для студентов ЛФИ МФТИ от преподавателя кафедры информатики Тимофея Хирьянова.

👽 Плейлист: школа бэкенд-разработки Академии Яндекса
Разбирают основные темы: ООП, базы данных, асинхроность, алгоритмы. Видео позволят научиться промышленной разработке на Python.

👽 Плейлист: Python Tutorials
Начинающим лучше смотреть уроки по порядку, чтобы получить систематическое представление о языке и его возможностях. Более опытным курс поможет глубже разобраться в отдельных темах.

👽 Плейлист: асинхроность в Python
Автор канала подробно рассказывает об основах асинхронности в Python, событийных циклах, генераторах, async/await.

👽 Укороченный видеокурс по Django
Отличный старт для погружения в веб-разработку. Выжимка самого необходимого и никакой воды.

👽 Плейлист: фреймворк FastAPI
Автор сделал акцент на разработку приложения с нуля и разбил уроки на логические блоки.
Please open Telegram to view this post
VIEW IN TELEGRAM
Быть разработчиком очень тяжело: нужно всё время учиться, чтобы не отставать. Но проблема даже в не в том, что учёба требует серьёзных вложений сил и времени, а в том, что не всегда понятно, куда расти, за какие из новых технологий браться.
Вот несколько способов, как найти свой путь развития без лишнего стресса.

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

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

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

Участие в опенсорсе/пет-проекты. Это помогает прокачать насмотренность, подтянуть опыт, научиться новому, познакомиться с актуальными практиками.

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

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

Начать учиться можно бесплатно! Пройдите первую учебную тему до 20 ноября и получите скидку 20% на выбранный курс.
🧠Разомнём мозги: алгоритмическая задача

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

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

Варианты ответа:
Это невозможно
101
52
13
7
1

Ждём ваших ответов в комментариях к посту👇
Please open Telegram to view this post
VIEW IN TELEGRAM
Решение задачи из предыдущего поста

Вау, как много правильных ответов! На самом деле всё очень просто: каждый раз вы называете число, которое делит диапазон возможных чисел пополам. В задаче выше этим числом будет 50, а затем 25 или 75, в зависимости от ответа друга. Вы продолжаете делить диапазон пополам до тех пор, пока не останется одно число. В худшем случае вам потребуется 7 попыток.

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

А теперь вопрос к знатокам: хотите задачу посложнее?
Что посмотреть на ютубе, если вы во фронтенде

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

🎞Вебинар Какие навыки нужны фронтендеру, чтобы начать верстать подойдёт тем, кто только интересуется профессией и хочет узнать, как фронтенд-разработчик взаимодействует с дизайнером и бэкенд-разработчиком и какими инструментами он должен владеть.

🎞Канал S0ER c полезным контентом для новичков. Автор подробно разъясняет и самые простые, и очень сложные темы, делится своим мнением и аргументирует его.

🎞Канал Yandex for Frontend для тех, кому нужно углубиться в Javascript. В нём собраны лекции, записи мастер-классов и докладов Академии Яндекса. Мягкое погружение в продвинутый Джаваскрипт можно начать с одноименного видео.

🎞Канал Matt Pocock от гуру TypeScript. Здесь много примеров использования TypeScript для буста продуктивности. Если вы изучаете TypeScript, очень рекомендуем вам подписаться!

🎞Канал АйТи Синяк про то, как работает React под капотом. Контент будет полезен разработчикам, которые хотят действительно понимать, что происходит в библиотеках, которые они используют.

🎞Канал Джека Харрингтона будет полезен для углубленного изучения React и TypeScript, но не только. На канале много полезных видео о HTML, CSS, JavaScript.

Фронтендеры, добавьте в комментарии к посту youtube-каналы и видео, которые вдохновляют вас двигаться дальше в профессии. Обмен опытом — это одна из ключевых ценностей, которые мы поддерживаем в Практикуме.
Please open Telegram to view this post
VIEW IN TELEGRAM