Изображение

12 сайтов с задачами для тренировки навыков программирования

Этот пост уместнее было бы писать практикующему программисту, но я всё таки взял на себя смелость представить вашему вниманию список из сайтов для тренировки своих навыков в программировании. Этой статьи не было бы, если бы не мой друг, самый молодой разработчик в команде ZeroToOneLabsНурдаулет Болатов. Он любезно предоставил мне список своих любимых сайтов, где часто проводит время, за решением интересных задач. Список начинаем с порядкового номера 0.

0. Topcoder

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

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

Среди компаний, которые с успехом использовали возможности платфомы TopCoder, можно выделить: Гарвардскую школу бизнеса, AMD, DAPRA, Alcatel, ESPN, AOL, ING, UBS, Яндекс, Google, Yahoo, Microsoft и др.

1. Codeforces

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

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

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


2. LeetCode

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

В настоящее время платформа поддерживает в общей сложности 11 языков: C, C ++, Java, Python, C #, JavaScript, Ruby, Swift, Go, Bash, MySQL.

3. USACO

Вычислительная олимпиада Соединенных Штатов Америки (USACO) — конкурс компьютерных программ для учащихся средних школ в Соединенных Штатах. В течение учебного года USACO предлагает шесть конкурсов для учащихся в четырех уровнях разной сложности: бронза, серебро, золото и платина. Участники USACO представляют программы на одном из пяти языков: C, C ++, Java, Pascal и Python.

Также проводится недельный летний тренировочный лагерь, в котором выбираются из 4 студента из группы из 24 финалистов, которые будут представлять США на Международной олимпиаде по информатике (IOI).

4. informatics.mccme.ru

Сайт, который по виду выглядит как из 2000-х годов. Основан Московским Центром Непрерывного Математического Образования для дистанционной подготовки к олимпиадам по информатике. На сайте доступны как учебные курсы, так и архивы всех олимпиад по информатике.

5. acmp.ru

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

6. HackerRank.com

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

7. Croatian Open Competition in Informatics

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

8. The Facebook Codelab

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

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

9. Olympiads.ru

Сайт с информацией и задачами по олимпиаде по информатике среди школьников 7-11 классов.

10. Northeastern European Regional Contest

Соревнования по международному университетскому программированию (ICPC) проводятся Ассоциацией компьютерных машин (ACM) и спонсируются IBM. Региональный конкурс стран Северо-Восточной Европы проводится Министерством образования и науки Российской Федерации, Санкт-Петербургским национальным исследовательским университетом информационных технологий, механики и оптики и Алтайским государственным техническим университетом. На этом сайте вы сможете зарегистрироваться для участия в олимпиаде.

11. Google Code Jam

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

P.S. Если вы дочитали пост до конца, значит вам будет интересна летняя школа программирования, которая пройдет в Астане — nFactorial Incubator. 12 недельная программа обучения вот уже третий год пройдет в Казахстане. В программе доступно 7 модулей, и она состоит из дневной интенсивной работы и вечерних гостевых лекций с приглашенными спикерами.

Подать заявку на участие в nFactorial Incubator.