Программа идеально подойдет:
Архитекторам ПО
Познакомитесь с лучшими практиками построения архитектуры ПО и узнаете лайфхаки от эксперта. Поработаете в команде, изучите опыт коллег, повысите свою эффективность и поймёте, как развиваться в профессии.
Системным аналитикам уровня Senior
Изучите основы проектирования архитектуры, начнёте работать с Kubernetes и другими инструментами. Сможете сменить профессию и претендовать на должность архитектора ПО в крупной компании.
Middle и senior разработчикам
Разберётесь в стилях и паттернах, научитесь планировать архитектуру будущей системы. Выйдете на новый уровень в разработке ПО, сможете получить повышение и больше зарабатывать.
Чему вы научитесь:
Планировать архитектуру ПО
Познакомитесь с монолитным и распределённым стилями архитектуры. Сможете грамотно выбрать стиль в зависимости от задачи.
Строить интеграцию между системами
Узнаете об основных подходах к интеграции систем, разберётесь с интеграционными шаблонами и научитесь их применять.
Учитывать вопросы безопасности
Познакомитесь с основными векторами атак на вебприложения. Научитесь работать с аутентификацией, авторизацией и изучите протокол TLS.
Проектировать API
Подробно разберёте работу HTTP, познакомитесь с принципами REST и сможете сконструировать API.
Выявлять нефункциональные требования
Научитесь выявлять важные характеристики системы и разделять её на компоненты исходя из нефункциональных требований к ПО.
1. Основы архитектуры
● Профессия и роль архитектора.
● Что ожидают от архитектора.
● Другие аспекты архитектуры.
● Архитектурное мышление.
2. Архитектурные стили
● Трансформация монолита в распределённую архитектуру.
● Фундаментальные шаблоны.
● Монолит.
● Распределённая архитектура.
● Монолит vs распределённая архитектура.
3. Нефункциональные требования
● Углубление в трансформацию.
● Определение нефункциональных требований.
● Список нефункциональных требований.
● Выявление нефункциональных требований.
● Принцип разделения системы на компоненты.
● Измерение нефункциональных требований.
4. Распределённая архитектура In-Depth
● Трансформация: встреча с заказчиком.
● Особенности распределённой архитектуры.
● Service-Based Architecture.
● Space-Based Architecture.
● EDA.
● Микросервисы.
5. Интеграция
● Трансформация: встреча с заказчиком.
● Overview: проблемы и типы интеграции.
● Ещё больше классификации интеграций.
● Messaging and Data Streams.
● ESB.
● API Gateway.
6. HTTP и REST
● Трансформация: встреча с заказчиком.
● История API.
● Протокол HTTP: матчасть.
● Архитектурный стиль REST.
● Альтернативные API.
● Open API.
7. Инфраструктура и среда исполнения
● Трансформация: встреча с заказчиком.
● Обзор инфраструктурных решений.
● Bare Metal vs Virtualization.
● Контейнеры.
● Оркестраторы.
8. Security
● Трансформация: встреча с заказчиком.
● OWASP.
● Идентификация, аутентификация и авторизация. Типы аутентификации.
● SSL и TLS.
9. Cloud Native Application
● Трансформация: встреча с заказчиком.
● The Twelve-Factor App.
● Docker in-depth.
● Kubernetes in-depth.
10-11. Шаблоны проектирования в Kubernetes
● Трансформация: встреча с заказчиком.
● Основные шаблоны проектирования.
● Шаблоны развёртывания.
● Структурные шаблоны.
● Шаблоны конфигурирования.
● Балансировка нагрузки.
● Service Discovery.
● Istio.
Запрет складчины
Категории
-
Доступно [Skillbox] Архитектор ПО (Павел Елисеев)
-
Доступно [GeekBrains] Python для решения бизнес-задач (Иван Пятернев)
Зачем вам Python, если вы не программист:
Знание основ программирования и Python помогают оптимизировать выполнение бизнес-задач.
Если сейчас вам приходится обрабатывать файлы, проверять правильность заполнения форм и собирать информацию о клиентах, то Python упростит вашу работу.
Благодаря ему вы сможете один раз написать простую программу и потом просто запускать ее, когда потребуется.
Вы научитесь:
- - Автоматизировать процессы с помощью Python;
- - Создавать Telegram-ботов;
- - Обрабатывать и визуализировать данные.
- Продакт-менеджерам. Научитесь собирать данные из нескольких источников, быстро их считывать и визуализировать, а также внедрять и использовать чат-ботов.
- Маркетологам. Узнаете, как быстро обрабатывать данные из систем аналитики, парсить сайты и визуализировать отчетность.
- Владельцам бизнеса. Вы научитесь использовать библиотеки Python для отправки email-рассылок, обрабатывать запросы на командировки и отпуска сотрудников с помощью чат-бота.
- Всем, кто ценит свое время. Сможете автоматизировать рутинные процессы
- Парсер для сайта. Он собирает информацию, которую вы потом сможете анализировать и использовать в работе
- Инструмент для управления файлами
- Инструмент для автоматизации email-рассылок. Сможете без внешних конструкторов создавать персонализированные письма для пользователей
- Telegram-бот. С его помощью можно
автоматизировать бизнес-процессы, например заказ командировки.
Модуль 1. Python: начало
Короткие видеолекции по 15–20 минут и простые задачи для закрепления материала. В конце модуля — итоговый вебинар, на котором можно задать вопросы.
Урок 1
Поставите все необходимое ПО (anaconda, pycharm ce, jupyter), узнаете, как работать с командной строкой, и напишете первую программу "Hello, world"
Урок 2
Узнаете, что такое неизменяемые типы данных, какие они бывают и как их использовать
Урок 3
Научитесь использовать условные конструкции if/else и elif и решите с их помощью несколько задач
Урок 4
Узнаете, что такое списки и циклы, и научитесь использовать циклы for и while
Урок 5
Познакомитесь с динамическим типом данных на примере словарей (dict) и множеств
Урок 6
Поймете, что такое функции, для чего нужны и как они реализуются в Python
Урок 7
Вебинар, на котором преподаватель ответит на вопросы и разберет вместе с вами типичные ошибки
Модуль 2. Работа с данными
Видеолекции по 30 минут. Преподаватель объясняет тему и демонстрирует экран, чтобы вам было проще разобраться в материале. После каждого урока — домашнее задание, где нужно самостоятельно применить изученные инструменты.
Урок 1
Научитесь импортировать разные типы данных для дальнейшей обработки. Узнаете, как читать текстовые данные и json
Урок 2
Познакомитесь с библиотекой pandas и научитесь с ее помощью обрабатывать табличные данные
Урок 3
Научитесь строить графики в python и оформлять их
Урок 4
Вебинар, на котором преподаватель ответит на вопросы и проанализирует вместе с вами сложные кейсы
Модуль 3. Python для автоматизации процессов
Каждый урок — это практический вебинар. Преподаватель объясняет тему, а вы решаете задачу по его инструкции. Если что-то непонятно, можете сразу задать вопрос.
Урок 1
Научитесь собирать с сайтов информацию с помощью библиотек requests и beautifulsoup. Создадите свой парсер
Урок 2
Поймете, как пользоваться библиотекой selenium. Научитесь автоматизировать процессы, которые требуют симуляции поведения человека
Урок 3
Познакомитесь с библиотекой os и поймете, как и когда ее использовать
Урок 4
Научитесь конструировать и отправлять рассылки с помощью библиотек email и smtplib
Модуль 4. Telegram-бот
Видеолекции и практический вебинар
Урок 1
Разберетесь, как работают чат-боты и какой функционал предлагает Telegram
Урок 2
Научитесь использовать библиотеку python-telegram-bot
Урок 3
Создадите своего Telegram-бота для заказа командировки
-
Доступно [GeekBrains] Блокчейн-разработка 2020
Кому подойдет курс
Junior-разработчикам
Если вы занимаетесь разработкой и рассматриваете блокчейн как перспективное направление.
Технический стек: знание языка для бэкенд-разработки (Java/Python/Go или любой другой), TCP/IP, Git, работа с командной оболочкой.
Опытным разработчикам
У вас есть навыки системного администрирования или бэкенд-разработки, вы хотите узнать больше о блокчейне
Станьте блокчейн-разработчиком
Вы получите максимум пользы от курса, если владеете хотя бы одним языком для бэкенд-разработки, знакомы с Git, имеете представление о работе сети. Также желателен минимальный навык работы с командной оболочкой.
Актуальная программа
Мы обновляем программу ежегодно: проводим исследования и учитываем требования работодателей.
Практикующие преподаватели
Они работают в реальных рыночных условиях. На их опыте построена учебная программа.
Экспертиза Mail.ru Group
Мы анализируем развитие наших продуктов и делимся с вами накопленными знаниями.
Портфолио:
- Создание смарт-контрактов
- Проект на платформе Hyperledger Fabric
Введение в блокчейн — систему распределённого реестра
Расскажем об истории блокчейна, его развитии и основных продуктах. На практическом занятии вы получите опыт работы с блокчейном и попробуете воспользоваться криптографическими утилитами.
История блокчейна, развитие технологии, основные продукты. Основы блокчейна: свойства, состояния, транзакции, блоки. Доверие к участникам сети.
Практическое занятие Работа с GPG: создание пары ключей, подпись, шифрование. Подключение к тестнету BTC, создание кошелька, работа с эксплорером. Работа с тестнетом Ethereum
Основы криптографии
Расскажем об основах криптографии: без неё невозможно создавать серьёзные проекты на блокчейне.
Понятие и история шифра, принцип Кирхгофа. Симметричное шифрование, шифр Вернама, поточные и блочные шифр.
Хэш-функции: требования, принципы построения, примеры. Случайный оракул, подпись Лэмпорта, MAC, аутентифицированное шифрование. Защита хэш-функции и атаки на них.
Шифрование с открытым ключом. Понятия группы, кольца, поля. Протокол шифрования RSA, протокол Диффи-Хеллмана, система Эль-Гамаля.
Цифровые подписи, назначение и требования. Подпись ECDSA и Шнорра, протокол подписи RSA, подписи на основании хэш-функций. Представление о PKI — инфраструктуре открытых ключей.
Архитектура узла сети блокчейн
Рассмотрим верхнеуровневую архитектуру узла сети блокчейн, расскажем о принципах построения и взаимодействия подсистем.
Организация транзакций в блоке, структура заголовка блока, лёгкие ноды.
Адреса в Bitcoin и Ethereum.
Merkle Tree.
SegWit.
Сетевой уровень взаимодействия
Расскажем об организации P2P-взаимодействия. Часто блокчейн — это сеть без выделенного центра, поэтому принципы организации отличаются от архитектуры «клиент-сервер».
P2P-сети: история, примеры, отличия от client-server. Проблемы адресации, bootstrapping P2P-клиента, announce vs request. Распространение информации в сети bitcoin, разница в распространении транзакций и блоков, дополнительные relay-сети, протоколы исключения некорректно работающих узлов.
Практическое занятие: написание простейшей P2P-сети.
Протоколы консенсуса
В открытых блокчейн-системах могут попадаться недобросовестные участники.
В открытых блокчейн-системах все узлы равноправны, но среди участников могут быть и недобросовестные. Поэтому как добросовестные участники сети могут прийти к общему выводу о состоянии системы - сложная задача. В модуле рассматриваются основные подходы к её решению
Протокол BFT — задача о византийских генералах. Обзор протоколов Paxos и Raft, масштабирование протоколов.
Протоколы Proof-of-Work, майнинг, атака 51%. Препятствия децентрализации в PoW-системах: ASIC, пулы. Меры противодействия централизации. Масштабирование и пересчёт сложности майнинга, coin hopping.
Стратегии майнинга: форки, эгоистичный майнинг, выборочное включение транзакций, объединённый майнинг.
Проблемы PoW. Протоколы Proof-of-Stake. Атаки: nothing-at-stake, grinding attack. Пулы в PoS-системах.
Другие варианты консенсуса: Delegated PoS, Proof-of-Space, Proof-of-Authority, Hashgraph.
Смарт-контракты
Транзакции в блокчейне не ограничиваются криптовалютами. Расскажем о смарт-контрактах и как их создавать.
Блокчейн как абстрактный автомат. Стековая машина bitcoin, скрипты bitcoin и их ограничения
Смарт-контракты Ethereum, их примеры и уязвимости. Газ в сети Ethereum: проблема останова, EVM. Solidity. Смарт-контракты сети EOS
Практическое занятие. Написание смарт-контрактов Ethereum
Практическое занятие. Написание смарт-контрактов EOS
Протоколы анонимизации
Расскажем, как скрыть общеизвестные детали транзакций, но при этом предоставить доказательства их корректности.
Кольцевые подписи, stealth-адреса, mix-in. Концепция «обязательств Педерсена», доказательства принадлежности интервалу. Анонимизация в Monero
Криптовалюты Mimblewimble и Grin. Анонимизация в ZCash и представление о zk-SNARK
Закрытые блокчейны и системы с разрешениями
Расскажем, чем закрытые блокчейны отличаются от открытых, в каких случаях они полезны. Практика: работа с Hyperledger Fabric.
Масштабирование сетей блокчейн
Рассмотрим проблемы масштабирования на большое число клиентов.
Оффчейн-протоколы. Lightning. Сайдчейны.
Шардинг. Предполагаемые решения Ethereum 2.0, альтернативные решения.
Пользовательские аспекты работы с блокчейном
Разберём примеры организации клиентского программного обеспечения, а также правовые основы работы с криптоактивами.
Кошельки и хранение ключей. Получение ключей из сид-фразы и иерархические детерминистские кошельки. Функционирование криптобирж. Устройство и проблемы смарт-контрактов, DAO, ICO, DeFi
Правовые аспекты работы с блокчейном
Заключение
Рассмотрим направления развития блокчейна, подведём итог по пройденному курсу.
-
Доступно [Otus] Разработчик C#
Разработчик C# [OTUS]
Что даст вам этот курс
За 5 месяцев мы последовательно рассмотрим особенности языка C# на уровне начинающего Senior / крепкого Midlle. Подробно изучим внутренние механизмы и устройство языка, CLR (LINQ, многопоточность, асинхронность, рефлексия, сериализация). Научимся разворачивать различные конструкции и представлять их в промежуточном языке (IL). Поработаем с SQL и NoSQL базами данных, кэшированием, Unit-тестами, CI/CD и другими сложными и полезными инструментами профессиональных разработчиков C#.
Must have практики
В процессе обучения рассмотрим паттерны проектирования Банды Четырёх, шаблоны корпоративных приложений Фаулера, принципы SOLID, DRY, YAGNI и другие. А в последнем модуле затронем темы для повышения вашей ценности как специалиста: методологии (Waterfall, Kanban и пр.), подходы (TDD, DDD и пр.) и профессиональный инструментарий программиста (LinqPad, Fiddler и пр.).
Программа разработана специально для C# Developers, которые хотят:
прокачать технические навыки и получить целостное понимание .NET Framework и языка C#;
с лёгкостью отвечать на вопросы на собеседованиях;
научиться работать в Scrum-команде и на практике понять эффективность Agile-подходов.
Программа курса
1 C#
Знакомство,рассказ о формате Scrum, краткий обзор курса
Обзор типов и структур данных
Операции и операторы
Методы, их перегрузка, расширения
Классы как воплощение принципов ООП
Интерфейсы и их особенности
Коллекция коллекций
50 оттенков LINQ
Работа со строками и регулярные выражения
2 С# Advanced
Reflection and Attributes
Как устроена Сериализация?
Исключения и нюансы работы с ними
Что есть в C# для работы с SQL и NoSQL базами данных?
Работа с методами как с переменными (delegates, events)
Дженерики, их реализация и ограничения
Сборщик мусора, деструкторы и финализаторы, Disposable Pattern
Дополнительны евозможности языка: от директив препроцессора до указателей
Что полезного в новых версиях C#?
3 Многопоточность и паттерны проектирования
В чём отличие процесса, потока и домена?
Примитивные и гибридные конструкции синхронизации потоков
Внутрипроцессное взаимодействие
Межпроцессное взаимодействие
Магические слова async / await
Порождающие паттерны проектирования
Структурные паттерны проектирования
Поведенческие паттерны проектирования
4 Клиент-серверная архитектура и микросервисы
Архитектура проекта
Авторизация и аутентификация
WCF, ASMX, Web Api, REST
Волшебство кэширования
Паттерны корпоративных приложений
Насколько твёрдые SOLID принципы?
В поисках лучшего брокера сообщений
CI/CD, Windows-сервисы и консольные приложения
5 Процессы и подходы
Waterfall, Scrum, Kanban, DDD, TDD
Unit, Sandbox, Blackbox, Whitebox, Integration tests
Типы проектов,которые можно реализовать на C#
Рефакторинг, Реинжиниринг, Ренейминг
Логирование, ведение документации и иные BestPractices
Инструментарий программиста
6 Проектная работа
Выбор проекта
Консультация по выбранному проекту
Защита проектных работ
Содержание складчины (файлы и папки)
01 Знакомство, рассказ о формате Scrum, краткий обзор курса
01 Домашнее задание.txt [756]
01.mp4 [491m 573k 247]
02 Операторы и методы, их перегрузка и расширения
02 1.mp4 [299m 343k 216]
02 2.mp4 [224m 787k 587]
02 All Operators by precendence-19350-d4181d.pptx [768k 778]
02 Домашнее задание.txt [1k 525]
02 Ссылки.txt [254]
03 Классы как воплощение принципов ООП
03 Классы как воплощение принципов ООП.pptx [9m 796k 993]
03.mp4 [381m 795k 42]
04 Интерфейсы и их особенности
04 Interfaces.pptx [267k 505]
04 Домашнее задание.txt [694]
04 Ссылки.txt [903]
04.mp4 [336m 863k 986]
05 Особенности встроенных коллекций
05 2019.11.18 Стандартные коллекции.pdf [2m 684k 68]
05.mp4 [292m 713k 281]
06 50 оттенков LINQ
06 LINQ.pptx [236k 540]
06 Домашнее задание.txt [2k 311]
06 Ссылки.txt [103]
06.mp4 [202m 631k 90]
07 Строки и регулярные выражения
07 1.mp4 [233m 109k 816]
07 2.mp4 [17m 533k 478]
07 3.mp4 [146m 274k 70]
07 Домашнее задание.txt [936]
07 Ссылки.txt [392]
07 Строки и регулярные выражения.pptx [129k 672]
08 Отражение (Reflection)
08 Рефлексия.docx [9k 386]
08.mp4 [375m 768k 345]
08.pptx [7m 93k 820]
09 Атрибуты
09 Домашнее задание.pdf [57k 587]
09.mp4 [375m 855k 737]
09.pdf [2m 493k 59]
10 Как устроена Сериализация
10 Домашнее задание.txt [2k 925]
10 Ссылки.txt [45]
10.mp4 [162m 891k 373]
10.pptx [95k 66]
11 Исключения и нюансы работы с ними
11.mp4 [321m 684k 286]
11.pdf [2m 785k 316]
12 Что есть в C# для работы с SQL и NoSQL базами данных
12 Домашнее задание.txt [1k 762]
12 Ссылки.txt [456]
12.mp4 [212m 452k 920]
12.pptx [522k 793]
13 Работа с методами как с переменными (delegates, events)
13.mp4 [204m 232k 440]
13.pptx [7m 612k 831]
14 Дженерики, их реализация и ограничения
14 Домашнее задание.txt [2k 988]
14 Ссылки.txt [188]
14.mp4 [182m 235k 578]
15 Сборщик мусора, деструкторы и финализаторы, Disposable Pattern
15.mp4 [238m 159k 375]
15.pdf [3m 721k 612]
16 Дополнительные возможности языка от директив препроцессора до указателей
16.mp4 [284m 533k 992]
16.pptx [7m 69k 543]
17 Что полезного в новых версиях C#
17 Ссылки.txt [112]
17.mp4 [193m 727k 398]
18 Порождающие шаблоны проектирования
18 1.mp4 [148m 758k 297]
18 2.mp4 [192m 250k 467]
18 Домашнее задание.txt [1k 428]
18.pptx [7m 462k 94]
19 Структурные шаблоны проектирования
19 1.mp4 [235m 338k 895]
19 2.mp4 [142m 43k 357]
19 Домашнее задание.txt [1k 543]
20 Поведенческие шаблоны проектирования
20 1.mp4 [276m 506k 78]
20 2.mp4 [151m 21k 147]
20 3.mp4 [110m 334k 360]
20 Домашнее задание.txt [1k 440]
21 Введение в параллелизм в .NET. Отличия процесса, потока, домена и таска
21 Домашнее задание.txt [6k 432]
21 Ссылки.txt [119]
21.mp4 [302m 999k 316]
21.pdf [3m 693k 59]
22 Асинхронные операции
22 Ссылки.txt [162]
22.mp4 [186m 405k 629]
22.pptx [550k 485]
23 Примитивы синхронизации потоков
23.mp4 [311m 461k 732]
23.pdf [1m 415k 322]
24 Внутрипроцессное взаимодействие
24.mp4 [270m 515k 235]
24.pptx [7m 42k 859]
25 Межпроцессное взаимодействие
25 Ссылки.txt [582]
25.mp4 [153m 278k 538]
25.pptx [39k 988]
26 Магические слова async await
26 Домашнее задание.txt [1k 75]
26.mp4 [428m 268k 866]
27 Архитектура проекта
27 Домашнее задание.txt [2k 205]
27.mp4 [202m 557k 464]
27.pdf [1m 876k 731]
28 Авторизация и аутентификация
28 Авторизация и аутентификация.mp4 [214m 209k 62]
28 Авторизация и аутентификация.pptx [429k 494]
29 WCF, ASMX, Web Api, REST
29 WCF, ASMX, Web Api, REST .mp4 [529m 258k 470]
29 WCF, ASMX, Web Api, REST.pdf [2m 76k 318]
29 Домашнее задание.txt [2k 515]
30 Волшебство кэширования
30 Волшебство кэширования .mp4 [168m 426k 190]
30 Волшебство кэширования.pptx [4m 289k 40]
30 Домашнее задание.txt [724]
31 Паттерны интеграции корпоративных приложений. Введение в микросервисы
31 Паттерны интеграции корпоративных приложений. Введение в микросервисы..mp4 [417m 212k 722]
31 Паттерны интеграции корпоративных приложений. Введение в микросервисы..pdf [3m 822k 989]
31 Паттерны интеграции корпоративных приложений. Введение в микросервисы..pptx [11m 144k 503]
31 Ссылки.txt [294]
Задачи
Задача про кредитный конвейер ч.1.png [293k 985]
Задача про кредитный конвейер ч.2.png [315k 720]
Задача про кредитный конвейер ч.3.png [304k 348]
32 Насколько твёрдые SOLID принципы
32 Домашнее задание.txt [1k 4]
32 Насколько твёрдые SOLID принципы (1).mp4 [214m 487k 335]
32 Насколько твёрдые SOLID принципы (2).mp4 [259m 814k 29]
33 В поисках лучшего брокера сообщений
33 В поисках лучшего брокера сообщений.mp4 [443m 444k 584]
33 В поисках лучшего брокера сообщений.pdf [2m 274k 891]
33 Домашнее задание.txt [1k 325]
34 CICD Windows-сервисы и консольные приложения
34 CICD Windows-сервисы и консольные приложения.mp4 [112m 514k 473]
34 CICD Windows-сервисы и консольные приложения.pptx [5m 158k 503]
34 Ссылки.txt [173]
35 Waterfall, Scrum, Kanban и другие методологии
35 Waterfall, Scrum, Kanban и другие методологии.mp4 [464m 770k 222]
35 Waterfall, Scrum, Kanban и другие методологии.pdf [4m 233k 872]
Объем: 10,4Гб.
-
Доступно [Skillbox] Базы данных для разработчиков (Артём Кожуховский, Джамаль Сале)
Чему вы научитесь
- Понимать принципы работы БД
Разберётесь в теории: изучите принципы, которые обеспечивают высокую производительность и надёжность хранения данных. - Подбирать базы данных под конкретную задачу
Узнаете, на какие характеристики нужно обращать внимание при выборе БД, сможете подбирать подходящую базу под требования проекта. - Использовать язык SQL
Научитесь применять язык запросов к базам данных, чтобы получать, создавать и менять данные. - Использовать различные БД
Научитесь работать с базами SQL (MySQL, PostgreSQL, Oracle, MS SQL) и NoSQL (Redis, MongoDB), использовать уникальные возможности каждой из баз. - Проектировать и оптимизировать БД
Сможете добиваться высокой производительности приложений при работе с БД.
Введение в базы данных и язык SQL
SELECT-запросы
Подзапросы и представления
Группировка
Отношения (реляции/relations)
Соединения (JOIN)
Оконные функции (Window Functions)
Изменение данных (Data Modification / DDL)
Транзакции и ACID
Объявление структуры данных (Data Definition / DDL), триггеры и хранимые процедуры
Индексы
Программные средства работы с БД
Производительность и системное устройство БД
Особенности MySQL
Особенности Oracle
Особенности PostgreSQL
Особенности MS SQL
Введение в NoSQL
Введение в MongoDB
MongoDB: группировки, транзакции и JavaScript
MongoDB: работа в кластере, быстродействие и консистентность
Введение в Redis
Redis: транзакции, хранимые процедуры и шардинг
Как выбирать БД
Дипломная работа - Понимать принципы работы БД
-
Закрыто [GeekBrains] Алгоритмы и структуры данных на Python. Базовый курс (Алексей Петренко,Ирина Гречихина)
Эффективные решения вычислительных задач
Студенты углубят базу программирования на языке Python и «прокачают» алгоритмическое мышление. Курс учит понимать фундаментальные алгоритмы и использовать их для решения практических задач. Знакомит с методами анализа данных на Python и всеми необходимыми библиотеками.
Чему Вы научитесь
- Излагать идеи в виде блок-схем, читать готовые схемы и реализовывать программы на их основе;
- Закрепить навыки реализации простейших алгоритмов с ветвлениями, циклами, а также рекурсивных алгоритмов;
- Познакомиться с классическими структурами данных, которые применяются в программировании, и уметь использовать их реализации на языке Python;
- Освоить модуль Collections и научиться работать с популярными структурами данных модуля;
- Освоить классические алгоритмы, которые лежат в основе современных проектов любой степени сложности;
- Узнать об алгоритмической сложности алгоритмов и научиться оценивать сложность вашего алгоритма при помощи встроенных в Python инструментов;
- Познакомиться с внутренним устройством интерпретатора Python и понять структуру объектов внутри языка;
- Научиться работать с деревьями и хеш-таблицами. Писать алгоритмы для работы с ними.
- Урок 1. Введение в алгоритмизацию и реализация простых алгоритмов на Python
Введение в алгоритмизацию. Решение практических задач. - Урок 2. Циклы. Рекурсия. Функции.
Циклы – многократное повторение однотипных действий. Рекурсивный перебор. Алгоритм Евклида. Решето Эратосфена – алгоритм определения простых чисел. Использование функций. - Урок 3. Массивы. Кортежи. Множества. Списки.
Понятие массива, кортежа, множества и списков. Обработка последовательностей, одномерных и двумерных массивов. Работа с ассоциативными массивами (таблицами данных). Двоичный (бинарный) поиск элемента в массиве. - Урок 4. Эмпирическая оценка алгоритмов на Python
Измерения времени работы с использованием timeit. Профайлер. - Урок 5. Коллекции. Список. Очередь. Словарь.
Понятие коллекции. Основные типы коллекции. Стандартные методы работы с коллекциями. Примеры применения коллекций для решения практических задач. - Урок 6. Работа с динамической памятью
Представление в памяти коллекций. Управление памятью. - Урок 7. Алгоритмы сортировки
Сортировка пузырьком. Быстрая сортировка (Quick sort). Сортировка Шелла. Сортировка сложных структур с использованием ключа. Обратная сортировка. Сортировка с использованием функции attrgetter. - Урок 8. Деревья. Хэш-функция
Двоичные деревья поиска. Проход по дереву. Хэш-функция.
-
Закрыто Шаблоны диаграмм в Excel на все случаи бизнеса (Ольга Базалева)
60 Красивых и профессиональных шаблонов
+ советы по применению
+ схемы выбора диаграмм и схема использования цвета
+ 7 бонусных нестандартных шаблонов
+ бонусный урок по совмещению диаграмм
-
Доступно [Otus] Супер-интенсив по паттернам проектирования (Евгений Тюменцев)
Что даст вам этот курс
Проведите неделю с пользой!
За 4 дня по 4 часа интенсива:
- изучите, как паттерны проектирования выводятся из SOLID-принципов;
- изучите современные схемы реализации паттернов проектирования;
- научитесь применять библиотеки алгоритмов;
- изучите Mock-объекты для написания юнит-тестов;
- узнаете, как применять лямбда-функции;
- сможете понять принцип использования инверсии-зависимостей и IoC-контейнеров.
Практическая часть
Для закрепления практических навыков будет выполнен проект - разработка консольной игры Танки, где вы примените все заявленные паттерны в программе, определив их целесообразность и применимость в том или ином случае.
Преподаватель - Евгений Тюменцев
Директор компании по разработке программного обеспечения. 20 лет преподаю компьютерные дисциплины в ВУЗе: C++, Kotlin, C#, ООП. Технологии программирования.
В прошлом занимался профессионально разработкой многопоточных кросс-платформенных приложений на С++. Код, написанный 14 лет назад, до сих пор работает в составе IBM Watson.
Один из результатов - успешная разработка технически сложного коммерческого проекта командой из 7 студентов.
Необходимые знания
Знание одного из языков программирования C++, C#, Kotlin ПО, которое нужно установить для интенсива Нужно IDE и язык программирования, который нравится, библиотека юнит-тестов и мок-объектов.
-
Доступно [Skillbox] Профессия Android-разработчик, 2022 (Денис Александров, Егор Лисаков)
Вы освоите разработку под самую популярную мобильную платформу, создадите своё приложение и выложите его в Google Play, даже если до этого вы никогда не программировали.
Кому подойдёт этот курс
- Новичкам в программировании
Курс позволит вам освоить профессию Android-разработчика с нуля. Вы сделаете ряд практических работ для портфолио, а после учёбы мы поможем вам с трудоустройством. - Начинающим разработчикам
Вы получите систематизированные знания, которые помогут вам построить успешную карьеру Android-разработчика. - Программистам, которые хотят сменить специализацию
Ближе познакомитесь со спецификой Android-разработки, отточите необходимые навыки, найдёте прибыльную и интересную работу.
- Язык программирования Kotlin
Вы узнаете, как писать приложения на самом актуальном языке для Android. - Работа с библиотеками
Изучите популярные библиотеки, необходимые для разработки. - Создание концепций
Освоите базовые принципы дизайн-концепций и познакомитесь с material design. - Анимация и View
Научитесь делать дизайн ваших приложений уникальным и ярким. - Релиз в Google Play
Подробно разберёте процесс подготовки вашего приложения к публикации в Google Play. - Unit- и UI-тестирование
Научитесь определять качество вашей работы, тестировать гипотезы и отдельные фишки приложения.
Скрытый текст. Открывается зарегистрированным пользователям.
Kotlin
Система контроля версий Git
Язык запросов SQL
Android-разработчик
Веб-верстка базовый уровень
Figma
Универсальные знания программиста
Английский для IT-специалистов
Карьера и развитие для программиста
Работа в командной строке Bash
Защита дипломных проектов
Программа трудоустройства
Ручное тестирование мобильных приложений - Новичкам в программировании
-
Доступно [Skillbox] Профессия Инженер по тестированию, 2022 (Владимир Авилов, Арсений Батыров)
Тестировщик в буквальном смысле проводит краш-тесты программных продуктов. Он продумывает, что и где может сломаться, прогнозирует сбои и находит ошибки в приложениях, сайтах и программах, чтобы продукт вышел работоспособным. Тестировщик должен всеми способами испытать надёжность и удобство сервиса на этапе разработки.
Вы освоите одну из самых востребованных IT-профессий под руководством личного наставника и начнёте зарабатывать ещё до завершения курса. Опыт программирования не нужен.
Кому подойдёт этот курс
- Новичкам в IT
Вы научитесь тестировать сайты, мобильные приложения и другое ПО. Узнаете, как устроена работа IT-компаний. Сможете понять, как развиваться в профессии. Уже джуниоры очень востребованы на рынке, а наш курс позволит достичь middle-уровня. - Тестировщикам начального уровня
Вы освоите ключевые инструменты автоматизированного тестирования. Выстроите понятный пошаговый путь профессионального развития.
- Функциональному и нефункциональному тестированию сайтов и приложений
- Тестированию мобильных приложений
- Основным методам автоматизации
- Работать в таск-трекерах
- Техникам тест-дизайна
- Основам программирования на Java
- Использовать шаблоны тест-планов, тест-кейсов, сценариев и чек-листов
- Работе в панели инструментов веб-разработчика
- Тестированию пользовательских интерфейсов
Скрытый текст. Открывается зарегистрированным пользователям.
Основы тестирования веб-приложений
Веб-вёрстка
Язык запросов SQL
Ручное тестирование мобильных приложений
Java-разработчик c нуля
Автотесты на Java
Программа трудоустройства
Система контроля версий Git
Английский для IT-специалистов
Универсальные знания программиста - Новичкам в IT
-
Доступно [Skillbox] Профессия Data Scientist (Валентин Пановский, Александр Панев)
Вы станете специалистом по анализу данных, алгоритмам машинного обучения и нейросетям, сможете построить карьеру в крупной технологической компании — в России или за рубежом.
Кому подойдёт этот курс
- Людям без подготовки в IT
Вы получите базовые навыки по программированию, аналитике, статистике и математике, которые откроют путь к карьере в Data Science и Machine Learning. Сможете использовать свои знания сразу на практике. - Программистам
Вы прокачаете свои знания и навыки в программировании на Python и R. Подтянете математику и умение мыслить как аналитик, использовать алгоритмы машинного обучения для решения бизнес-задач — и усилите портфолио мощными проектами. - Начинающим аналитикам
Вы прокачаете компетенции аналитика: научитесь ставить гипотезы и делать выводы на основе данных, писать эффективный код на Python и R, понимать математику на основе статистики, а также обучать машины и прогнозировать результаты. Отшлифуете имеющиеся знания, увеличите скорость своей работы и добьётесь повышения.
- Программировать на Python
Освоите самый популярный язык для работы с данными. - Визуализировать данные
Сможете разрабатывать дашборды и интерактивную инфографику. - Работать с библиотеками и базами данных
Научитесь работать с библиотеками Pandas, NumPy и Matpotlib и освоите базы данных PostgreSQL, SQLite3, MongoDB. - Программировать на R
Разберетесь в специфике языка, сможете обрабатывать статические данные и работать с графикой. - Применять нейронные сети для решения реальных задач
Освоите фреймворки для обучения нейронных сетей Tensorflow и Keras. Узнаете, как устроены нейронные сети для задач компьютерного зрения и лингвистики. - Создавать рекомендательные системы
Построите рекомендательную систему и добавите её в своё портфолио.
- Людям без подготовки в IT
-
Доступно [Skillbox] Профессия Java-разработчик (Михаил Овчинников, Даниил Пилипенко)
Научим программировать на самом востребованном языке.
Что даёт профессия Java-разработчика
1. Интересная работа и хороший заработок
В мире каждый день запускается множество сайтов, веб-разработчик зарабатывает от 90 000 рублей. На языке Java создаются самые разнообразные проекты. От современных технологий до научных проектов, от мобильных приложений до нейронных сетей.
2. Работа на самом востребованном языке
Программы на Java используют более 3 миллиардов устройств в мире. Вы сможете создавать код, который будут запускать по всей планете от Москвы до Кейптауна и Токио. Добро пожаловать в XXI век.
3. Свобода и мобильность
Программист может работать удаленно. Всё, что ему нужно, это компьютер с подключением к интернету. Удалённая работа, свободный график ― выбор многих, кто устал от офисной пятидневки. Вы можете работать в компаниях всего мира.
Для кого этот курс
- Начинающих программистов
Возможно, вы уже имеете базовые навыки и представление о программировании и применяете эти знания в своих проектах. Наш курс даст вам углубленное знание универсального языка Java, и вы начнёте правильно структурировать код и соблюдать всеми «любимый» синтаксис для создания выдающихся проектов.
- Новичков
Если вас привлекают современные технологии и высокая зарплата в сфере IT, то этот курс точно для вас. Вы научитесь писать код, узнаете, что легенда о том, что программист должен в совершенстве знать математику, — это выдумка, станете мыслить критически и сможете кодить на самом популярном языке в мире.
- Начинающих программистов
-
Доступно [Skillbox] Профессия Frontend-разработчик PRO (Глеб Михеев, Михаил Овчинников)
Вы научитесь верстать веб-страницы, создавать веб-приложения, работать с JavaScript, в Photoshop и Figma. Закрепите навыки на офлайн-воркшопах, пополните портфолио и освоите востребованную профессию.
Кому подойдёт этот курс
- Новичкам
Вы научитесь верстать, создавать макеты, работать с JavaScript, Vue.js, React.js и Node.js. Узнаете, как устроена разработка в современных командах, и начнёте карьеру в Frontend Development. - Начинающим программистам
Вы расширите навыки вёрстки и работы с JavaScript, освоите Photoshop и Figma, прокачаете soft skills и дополните портфолио — сможете претендовать на middle-позицию. - Фрилансерам
Вы освоите frontend-разработку от макета до реализации, сделаете проекты для портфолио и подтянете английский — сможете брать удалённые заказы или работать в распределённой команде.
- Верстать веб-страницы и письма средствами CSS и HTML
- Работать в системе контроля версий GIT
- Работать в командной строке Bash
- Создавать интерактивные веб-приложения в браузере средствами JavaScript
- Делать приложения на одном из фреймворков JavaScript: React.js или Vue.js
- Применять основные алгоритмы и структуры данных в реальных проектах
- Работать по спринтам и Scrum-методологии
- Работать с макетами в Photoshop и Figma
- Разрабатывать серверные приложения на JavaScript с использованием технологии Node.js
Веб-вёрстка
Базовый уровень: вы познакомитесь с HTML и CSS, кросс-браузерной и адаптивной вёрсткой. Научитесь работать с анимацией и хостингами. Сверстаете сайт для художественной галереи по готовым макетам.
Продвинутый уровень: узнаете, как автоматизировать сборку проектов и быстрее описывать стили с помощью препроцессоров. Научитесь верстать письма, создавать сетки на grid.
JavaScript
Базовый уровень: научитесь работать с переменными и числами, изучите массивы, циклы, объекты и функции. Познакомитесь с константами, ключевыми словами const и var, областями видимости, замыканиями и научитесь их использовать в работе.
Продвинутый уровень: освоите работу с модулями, событиями и менеджером пакетов npm. Научитесь создавать методы объектов и прототипов, писать тесты и взаимодействовать с сервером с помощью fetch API.
React.js
Расширьте свои профессиональные знания и навыки разработчика, научившись использовать в работе фреймворк React.js
Vue.js
Курс для практикующих веб- и frontend-разработчиков. Расширьте свои компетенции, изучив трендовый фреймворк Vue.js.
Дополнительные курсы
Универсальные знания программиста
Онлайн-сессии по веб-разработке
Обзор курса по слепому методу печати
Photoshop
Figma
Английский для IT-специалистов
Система контроля версий Git
Язык запросов SQL
Карьера и развитие для программиста
Работа в командной строке Bash
Алгоритмы и структуры данных
Защита дипломных проектов
Программа трудоустройства
- Новичкам
-
Доступно [Skillbox] Python-фреймворк Django (Алексей Половинкин, Максим Смирнов)
Вы научитесь верстать веб-страницы, писать и оптимизировать веб-приложения на Django, продолжите развиваться в IT-индустрии и станете более востребованным разработчиком.
Освойте популярный Python-фреймворк
- 13 000 разработчиков по всему миру используют Django
- 80 000 рублей средняя зарплата начинающего разработчика со знанием Django
Чему вы научитесь
- Разбираться в архитектуре веб-приложений
- Проектировать легко поддерживаемые проекты
- Пользоваться инструментами: pip, virtualenv, Git, PyCharm и другими
- Ориентироваться в современных веб-технологиях
- Писать чистый и валидный код согласно PEP8
- Верстать адаптивные сайты средствами HTML и CSS
- Создавать и оптимизировать веб-приложения на Django
- Создавать Unit-тесты и покрывать ими Django-приложение
- Работать с Javascript на базовом уровне
-
Доступно [Skillbox] JavaScript-фреймворк React.js, 2021 (Александр Кузнецов, Ольга Климонова)
Расширьте свои профессиональные знания и навыки разработчика, научившись использовать в работе фреймворк React.js
На рынке не хватает JavaScript-разработчиков
- 10 218 компаний сейчас ищут JavaScript-разработчиков
- 70 000 рублей зарплата начинающего специалиста
Кому подойдёт этот курс
- Практикующим JavaScript-разработчикам
Вы освоите работу с фреймворком React.js, увеличите круг своих компетенций и задач, которые сможете выполнять на проекте — станете более конкурентоспособным сотрудником.
- Frontend-разработчикам
React.js — один из самых популярных фреймворков в мире. Вы научитесь создавать изоморфные приложения на React Redux, типизировать их с помощью Typescript и работать с различными публичными сервисами.
- Создавать приложения с нуля
Конфигурировать их с помощью Webpack или использовать готовые решения. - Работать с публичными API
Узнаете о механизмах OAuth и имплементациях в React. - Познакомитесь с Flux, Redux, Mobx
Узнаете подробности о состоянии приложения и работе с ним. - Профилировать свое приложение
Искать слабые места и оптимизировать их. - Тестировать свое приложение
Познакомитесь с библиотеками Jest и Enzyme. - Создавать SPA и RIA приложения с нуля
Будете применять разные подходы, с SSR или без него, включая деплой в облачный сервис Now.
Введение в React
Создание проекта
Typescript
Компоненты на примере новостной карточки Reddit
Hooks и функциональное программирование
Компоненты - продвинутые темы. Введение в тестирование компонентов
Работа с публичным API на примере Reddit
React Context
Портал и форма
Введение в Redux на примере поля для просмотра комментариев
Использование Redux-Thunk на примере загрузки профиля пользователя
Формы на примере комментариев и карточки поста
«Бесконечные» списки на ленты постов
Роутинг
Деплой
Бонусный модуль: Mobx - Практикующим JavaScript-разработчикам