Звичайно, всі терміни та матеріали я могла погуглити самостійно, але, як завжди, руки не доходили. Тут все розкладено досить докладно і послідовно.
Курси Backend розробка
- Node.js
- Backend
Познайомимось з платформою та її основними фреймворками Express.js та NestJS, навчимось працювати з серверами та базами даних: реляційними та NoSQL, зокрема, MongoDB та MySQL. Опануємо асинхронну модель програмування та best practises убезпечення серверних застосунків. Потім вивчимо структуру пайплайну, навчимося розгортати інфраструктуру та тестувати середовище.
Програма курсу
Бонусний блок. JavaScript
- Знайомство з JavaScript. Part 1
- Знайомство з JavaScript. Part 2
- Асинхронність. Part 1
- Асинхронність. Part 2
Знайомство з Node.js
- Дізнаєтеся про основні переваги Node.js
- Зможете встановлювати й налаштовувати робоче середовище Node.js за допомогою JetBrains WebStorm
- Вмітимете за допомогою лінтерів JSLint та ESLint покращити якість коду
- Зможете вмотивовано обрати фреймворк для роботи з урахуванням переваг та особливостей застосування кожного
Робота з фреймворком Express.js
- Дізнаєтеся про особливості застосування фреймворку Express.js, його обмеження та переваги
- Зможете використовувати на практиці один з найпопулярніших фреймворків для Node.js
- Дізнаєтеся, як створювати базову структуру застосунків, користуючись цим фреймворком
Робота з фреймворком NestJS
- Зрозумієте особливості застосування фреймворку Nest.js, його обмеження та переваги
- Навчитеся використовувати на практиці один з найпопулярніших фреймворків для Node.js
Огляд middleware
- Зрозумієте особливості middleware, включно з їхнім призначенням, функціональністю та ключовими перевагами в забезпеченні міжпроцесної взаємодії
- Навчитеся розпізнавати й уникати bad practices у middleware
- Дізнаєтеся про приклади middleware antipatterns та зрозумієте, як їх уникати
- Ознайомитеся з патернами й принципами у контексті middleware, що дає змогу створювати більш структуровані та підтримувані програми
Підсумкове заняття: middleware best practices
- Дізнаєтеся best practices для middleware
- Ознайомитеся з лайфхаками з використання middleware
Знайомство із серверами
- Дізнаєтеся, як створювати сервери в Node.js з використанням Express
- Навчитеся реалізовувати обробку різних типів HTTP-запитів
- Дізнаєтеся, як реалізовувати маршрутизацію запитів в Express
- Зрозумієте базові принципи архітектури застосунків на Node.js
- Навчитеся використовувати Nodemon для автоматизації перезапуску сервера
Взаємодія з реляційними базами даних (MySQL i PostgreSQL)
- Дізнаєтеся відмінність між SQL та NoSQL базами даних
- Навчитеся працювати з основними SQL-запитами
- Засвоїте концепції первинного ключа (Primary Key), зовнішнього ключа (Foreign Key) та унікального ідентифікатора (Unique Key)
- Дізнаєтеся, як застосовувати принципи нормалізації даних у базах даних
Огляд TypeORM
- Зрозумієте основні концепції та можливості TypeORM, включно з його ключовими функціями та архітектурними особливостями
- Навчитеся використовувати TypeORM на практиці для створення та керування базами даних у застосунках на Node.js, включно з операціями CRUD
- Дізнаєтеся про основні переваги та можливі недоліки TypeORM
Взаємодія з нереляційними базами даних (MongoDB, Redis, Cassandra)
- Дізнаєтеся, як користуватися MongoDB для Node.js
- Навчитеся застосовувати Redis для Node.js
- Зможете працювати з mongoose
Робота з базами даних: best VS bad practices
Дізнаєтеся про best practices для роботи з базами даних, ознайомитеся з лайфхаками з використання.
Реактивне програмування: WebSocket, модуль FS та Selenium
- Зрозумієте, що таке реактивне програмування та його особливості
- Дізнаєтеся, як працює Websocket, та навчитеся використовувати його на практиці
- Ознайомитеся з роботою FS module
- Зрозумієте, як працює автоматизація та тестування з Selenium
- Навчитеся працювати з RxJS на практиці, знаєте переваги та особливості застосування
- Дізнаєтеся, як керувати подіями EventEmitter
Асинхронність
- Зрозумієте, що таке асинхронність, коли можна використовувати асинхронний підхід
- Дізнаєтеся, як керувати подіями Event Emitter
- Дізнаєтеся про best і bad practices в асинхронному програмуванні
Підсумкове заняття: асинхронність - best practices
Дізнаєтеся best practices для роботи з асинхронністю, ознайомитеся з лайфхаками з використання.
Логування й тестування
- Навчитеся розрізняти типи тестування
- Дізнаєтеся про принципи TDD та BDD
- Почуєте best and bad practices у тестуванні та логуванні
- Навчитеся інтегрувати ці підходи на практиці
Безпека в серверному програмуванні
- Дізнаєтеся про принципи безпеки в серверному програмуванні
- Дізнаєтеся, що таке JWT, особливості застосування та його функціонал
- Навчитеся користуватися на практиці JWT
- Дізнаєтеся, як забезпечити авторизацію та аутентифікацію користувача
- Опануєте принципи захисту sensitive data
Розміщення та розгортання програми
- Дізнаєтеся про структуру типового GitHub pipeline
- Розрізнятимете методи релізу ПЗ
- Навчитеся створювати бренчі й тестувати в enviroment Node.js
- Дізнаєтеся, як правильно розгортати програму в Docker
Підсумок курсу
- Навчитеся писати ефективний та оптимізований код
- Зрозумієте принципи CI/CD
Підготовка до технічної співбесіди
- Зрозумієте основні запитання та структуру співбесіди
- Навчитеся виконувати типові live-завдання на кшталт LeetCode Easy Level
Захист курсових робіт
Особливості курсу
- Комплексна робота з Node.js
- Best Practices
- Курсовий проєкт
- Бонусний блок
- Допомога ментора
Викладачі курсу
Сергій Ващенко - Software Engineer
Більше інформації- Java
- Backend
В ході даного курсу ми розглянемо основні модулі Spring, навчимося налаштовувати фреймворк і використовувати різні типи анотацій. Ми познайомимося з різними способами написання REST додатків, використанням MVC моделей. Ознайомимося з кешуванням, безпекою, а також Spring Boot. За підсумками цього курсу, ми зможемо писати повноцінні REST додатки з БД самостійно.
Програма курсу
Вступ до Spring Framework
- Необхідні знання
- Переваги Spring
- Модулі Spring
- IoC & DI
- Управління залежностями (приклад)
- SOLID
- POJO
- Bean scope (зона видимості для бінів)
- Додаткові бібліотеки
- Приклади коду
Впровадження залежностей та IoC контейнер
- Inversion of Control & Dependency Injection
- IoC контейнер
- Використання контейнеру
- IoC & DI
- Атрибути біну
- Іменування бінів
- Впровадження залежностей
- Ледача ініціалізація
- Етапи створення біну
- Анотації для конфігурації
Spring MVC
- MVC
- Dispatcher servlet
- MVC (докладніше)
- ViewResolver
- HandlerMapping
- WebApplicationContext
- Анотації
Spring Data
- Переваги Spring Data
- Spring Data repository
- Конфігурація Spring Data
- Ключові слова для створення методів
- Анотації
Spring Testing
- Про тестування
- Різновиди тестування
- Тести Unit
- Тести Integration
- Популярні фреймворки для тестування
- Конфігурація та залежності
- Анотації
- Валідація поля
AOP
- Що таке АОП
- Основні визначення
- Як визначаються аспекти
- Конфігурація та залежності
- Анотації
RESTFul webservices
- Що таке REST
- HTTP-методи
- URL
- RESTFul webservices у Spring
- HTTP message converters
- Залежності
- Анотації
Security
- Авторизація та аутентифікація
- Voters, Filters, Chains
- Безпека на рівні методів
- Конфігурація і залежності
- Анотації
Hibernate Crud
- Робота з базами даних за допомогою Hibernate
- Додавання, видалення тощо під час роботи з базами даних
- Залежності
- Анотації
Boot
- Що таке Spring Boot
- Переваги Spring Boot
- Анотації
Після завершення курсу ви будете вміти:
- Створювати BackEnd для web-додатків
- Створювати RESTfull web-сервіси
- Використовувати різні RDBMS у зв'язці зі Spring
- Створювати додатки, покриті автоматичними тестами
Попередні вимоги
- JavaCore (знання синтаксису та структур даних Java)
- Загальне розуміння ООП
- Розуміння реляційних баз даних (MySQL)
Особливості курсу
- Практичні заняття і перевірка ДЗ
- Безкоштовний відеокурс
- Онлайн тестування і сертифікація
Викладачі курсу
- Андрій Бондаренко - Java Developer
- Андрій Фок - Java Developer. Тренер-консультант
- Євген Кондаков - Java Developer. Тренер-консультант
- Іван Демидко - Java Developer. Тренер-консультант
- Олександр Корж - Java Developer. Тренер-консультант
- Євген Дайнека - Java Software Developer
- Євген Тихонов - Java Developer
- Юрій Царенко - Java Developer. Тренер-консультант
- Ігор Войтов - Java Developer. Тренер-консультант
- Олег Сотніченко - Java Developer. Тренер-консультант
- Вадим Кожевніков - Java Developer and Trainer at CyberBionic
- Дмитро Красний - Тренер-консультант напрямку Java Developer
- Владислав Донець - Middle Java Developer at SoftServe
- Python
- Backend
Кожен модуль підготує вас до завдань у реальному світі. Такий підхід допоможе вам стати успішним розробником ПЗ, легше працювати над проєктами та будувати кар'єру.
Програма курсу
Модуль 1. Основи Python для веб-розробки
Результат: Знання основ Python, здатність використовувати основні конструкції та типи даних. Навички, отримані в цьому модулі, допоможуть вам створювати веб-додатки та виконувати завдання веб-розробника з використанням Python.
Модуль 2. Вступ до веб-розробки та баз даних
Результат: Основи веб-технологій, знайомство з базами даних. Отримані знання про бази даних допоможуть вам ефективно взаємодіяти зі збереженням та обробкою даних у ваших проєктах.
Модуль 3. Розробка веб-додатків з Django - Основи
Результат: Глибоке розуміння фреймворку Django, здатність створювати базові веб-додатки. Ви зможете самостійно створювати базові веб-додатки, використовуючи Django, та реалізовувати їхню функціональність.
Модуль 4. Поглиблені аспекти Django
Результат: Розширене розуміння Django, включаючи роботу з розширеними функціями, створення API та оптимізацію. Після цього модулю ви зможете розробляти складні веб-додатки з використанням Django, що дасть вам конкурентну перевагу на ринку праці.
Модуль 5. Тестування, безпека та оптимізація веб-додатків
Результат: Розуміння та застосування методів тестування, забезпечення безпеки та оптимізації веб-додатків. Ви зможете оптимізувати швидкодію та ефективність вашого коду та веб-додатків для підвищення їхньої продуктивності та ефективності.
Модуль 6. Реальний проєкт, деплоймент та DevOps
Результат: Вміння реалізовувати комплексні веб-додатки, деплоїти їх в інтернет та використовувати основи DevOps. Навички деплоювання та DevOps дозволять вам впроваджувати веб-додатки в інтернеті та забезпечувати їх надійну та ефективну роботу.
Особливості курсу
- Онлайн формат
- Наголос на практику
- Професійні ментори
- Запис занять
- Гнучкий графік
- Онлайн-платформа
- Портфоліо проєктів
- Підтримка та спільнота
- Сертифікат
Викладачі курсу
- Харьков Дарій - Senior Software Engineer, AndGo by GoodYear
- Костянтин Косенков - Automation Specialist at Ubisoft Ukraine
- Backend
Курс допоможе систематизувати наявні знання, перейняти експертизу від спеціалістів різного рівня та розвинути архітектурне мислення. Також студенти зможуть дізнатись, що насправді є важливим для роботи у великих IT-продуктах та якими проблемами вони зіштовхуються.
Програма курсу
Побудова «чистої архітектури»
- Правильний стиль проєктування та використання патернів як інструменти спрощення коду та розв'язування продуктових задач (Clean Code principles, принципи SOLID, GRASP, патерни проєктування)
Архітектура
- Види архітектур
- Плюси та мінуси монолітних та розподілених систем
- Архітектурні патерни: Saga, 2PC, Event bus
Інфраструктура
- Контейнеризація та віртуалізація
- Найпопулярніша система контейнеризації Docker
- Робота з хмарними сервісами
Безпека
- Вразливості програми до різноманітних атак, які можуть призвести до несанкціонованого доступу до конфіденційної інформації, пошкодження систем та даних, а також викрадення цінних ресурсів.
- Використання ефективних засобів безпеки
SDLC
- Етапи, які проходить задача перед тим, як потрапити на production
- Підхід CI/CD, та як це допомагає проєктам рухатись швидше
Вимоги для проходження курсу
- Знання основ об'єктно-орієнтованого програмування та комп'ютерних алгоритмів
- Близько року комерційного досвіду написання працюючих додатків чи кілька успішних пет-проєктів
- Володіння PHP або GoLang
Особливості курсу
- Попередня реєстрація на курс, з проходженням тестових завдань та співбесіди
- Для junior- та middle-розробників
- Code review та peer-to-peer навчання
- Робота над власним проєктом
- Containers Immersion Day від AWS
- Нетворк з колегами та С-Level спеціалістами
Викладачі курсу
- Богдан Новіков - Solution Architect однієї з продуктових компаній venture builder SKELAR
- Андрій Попович - СTO однієї з продуктових компаній venture builder SKELAR
- Андрій Глибовець - Dean of the Faculty of Computer Science, НаУКМА
- Сергій Воронкін - Backend Team Lead, однієї з продуктових компаній venture builder SKELAR
- Ростислав Силка - Backend Developer однієї з продуктових компаній venture builder SKELAR
- Єгор Гнедаш - Backend Developer однієї з продуктових компаній venture builder SKELAR
- Михайло Гришкевич - CISO at Solidgate
- Олександр Хникін - Backend Team Lead at LIVEBEAM
- Дмитро Гаранжа - Engineering Team Lead at Howly, SocialTech
- Андрій Філенко - Backend Tech Lead at Quarks
- Сергій Міхеєв - Backend Guild Master, Livebeam at SKELAR
- Вадим Войтюк - Principal Solutions Architect at AWS, CTO, startup mentor
- Node.js
- Backend
Конвертуй знання у вміння - реєструйся на інтенсивний онлайн-курс з розробки на Node.JS
План курсу
Теми:
- JS for NodeJS
- Object-oriented programming (OOP)
- Asynchronous JS, closures, exceptions
- Introduction to Node.js: basic concepts and principles of work Installing and configuring the development environment to work with Node.js
- Asynchronous programming in Node.js: code with callbacks
- Working with workflows in Node.js: child_process module
- Templates(ejs)
- REST API
- Using Node.js frameworks: Express.js, Routes, middlewares
- Interaction with databases on Node.js: MySQL module, Prisma Sequelize
- Interaction with databases on Node.js: mongoose module
- Using Node.js frameworks: Koa
- Using WebSockets on Node.js: socket.io module
- Building reactive apps with Node.js: RxJS
- Working with GraphQL and Node.js: express-graphql module
- Testing applications on Node.js
- JWT
- Creating your own modules in Node.js: the exports module, Building packages in Node.js: npm module
Особливості курсу
- Практика насамперед: ти будеш писати код, виконуючи завдання, схожі на ті, які зустрічаються на реальних проєктах в SoftServe
- Мінімум теорії: курс для того, щоб писати код. Якщо ж потрібно буде щось підівчити – ми зібрали усі необхідні відео та матеріали, щоб скоротити твій час на пошуки
- 24/7 чат з учасниками в Discord: місце для твоїх опівнічних питань, веселих стікерів та спілкування з ментором
- Усі завдання підготовлені менторами Softserve Академії, які знають про код все, адже працюють з ним щодня
- Додаткові технічні е-курси
- Розмовні клуби з англійської & селф-стаді
- Короткі курси для розвитку софт навичок
- Спільнота професіоналів однодумців
- Node.js
- Backend
Теоретична частина курсу розглядає суть Node.js, а саме асинхронну модель роботи з неблокуючими операціями введення і виведення - eventloop, взаємодія з потоками і подіями, асинхронність та базою даних. Практична частина курсу присвячена практиці Back-end: як написати свій блог з користувачами, публікаціями, коментарями, тегами і т.д.
Програма курсу
Знайомство з Node.js
- Eventloop
- Стандарти, які підтримуються (ECMAscript 5, ECMAscript 6)
- Core
- Streams
- Event emitter
Знайомство з асинхронністю
- Callback
- Promise
- Async (caolan)
- Sync/await
Знайомство з проміжними обробниками
Connect.
Створення веб-сервера
- Http
- Express
Використання шаблонизаторів
- Pug
- Nunjucks
Робота з MongoDB
- Query
- Aggregation
Підключення авторизації і аутентифікації
Тестування і написання документації
Фінальний проєкт
- Пишемо адмінку для блогу
- Пишемо призначений для користувача інтерфейс
Особливості курсу
- Невеликі групи
- Система особистих кабінетів
- Доступ до відеозаписів занять
- Викладачі практики
- Оперативна служба підтримки студентів
- Практичні заняття
Викладачі курсу
- Сергій Гончарук - Full-Stack Developer at Zade
- Євген Грайворонський - Senior Software Engineer at GlobalLogic
- Іван Корнєв - Node.js Developer at Siema
- Єгор Хільченко - Node.js Software Developer at Eleks
- Євген Топалу - Software Engineer at Fincue
- Михайло Іляш - Senior Software Developer at SPD-Ukraine
- Віталій Ільїн - Node.js Developer
- Python
- Backend
Курс для розробників, щоб опанувати вміння створювати та підтримувати серверну частину вебзастосунків. Навчитеся розробляти RESTful API, надійні та масштабовані вебзастосунки за допомогою Django. Зможете впроваджувати найкращі практики управління базами даних. Як результат - умітимете створювати високоефективні бекенд системи.
Програма курсу
Основи вебтехнологій та фреймворк Django
- Засвоїте основні компоненти інтернету та принципи роботи вебзастосунків
- Опануєте високорівневий вебфреймворк Django для створення надійних вебзастосунків
Створення та управління API
- Вивчите принципи побудови RESTful API
- Створите та протестуєте API, які дають змогу фронтенду ефективно взаємодіяти з вашим Django бекендом
Моделювання даних та робота з базами даних
- Отримаєте досвід проєктування схем баз даних, які є ефективними та масштабованими
- Зрозумієте, як взаємодіяти з базами даних, використовуючи ORM Django для обробки даних у ваших вебзастосунках
Асинхронне і паралельне програмування та продуктивність
Дізнаєтесь, як підвищити продуктивність додатків за допомогою асинхронних парадигм програмування в Python, покращуючи масштабованість і зручність роботи з ними.
Безпека та тестування
- Навчитесь упроваджувати заходи безпеки для захисту ваших застосунків від поширених вразливостей
- Опануєте практики тестування для забезпечення надійності та цілісності вашого коду
Навички які опануємо
Hard Skills:
- Створення вебзастосунків за допомогою Django
- Робота з Git
- Розробка RESTful API
- Побудова й оптимізація баз даних
- Фундаментальні концепції програмування
- Інтегрування бекенд сервісів з фронтенд інтерфейсами
- Гнучка розробка
- Уміння вдосконалювати код
Soft Skills:
- Критичне мислення
- Навички співпраці в межах команди
- Здатність ефективно розподіляти завдання
- Адаптивність до змін у вимогах до проєкту
- Здатність розв'язувати проблеми та конфлікти в команді
Особливості курсу
- Робота 1:1 з куратором
- Навчальний проєкт
- Інтерактивні онлайн-зустрічі
- Сертифікат за здобутки
Викладачі курсу
- Євген Коростильов - Tech Lead at Preply
- Михайло Кобелев - Software Engineer at Grammarly
- Backend
За три місяці опануєте інструменти, щоб комплексно супроводжувати продакшн проєкт упродовж його життєвого циклу й розробляти потрібні інфраструктурні рішення.
Програма курсу
Docker
- Дізнаємося, що таке Docker та чому він є стандартом індустрії
- Навчимося працювати з docker containers - як уже наявними, так і створеними власноруч
- Опануємо навички менеджменту контейнерів
- Поговоримо про Docker Сompose
NoSQL бази даних
- Ознайомимося з концепцією нереляційних баз
- Розглянемо найпопулярніші сценарії використання NoSQL баз даних
- Навчимося працювати зі структурами даних у Redis
Тестування
- Ознайомимося з типами тестування застосунків
- Навчимося налаштовувати автоматичне тестування
Cloud
- Розглянемо найпопулярніші сценарії використання cloud computing сервісів у межах розробки інформаційних рішень
- Ознайомимося з можливостями хмарних провайдерів та зрозуміємо, як вони працюють
CI/CD
- Ознайомимось із концепцією CI/CD
- Дізнаємося, як зробити процес доставки нових версій продукту до користувачів "безшовним", паралельно мінімізувавши ризики виникнення багів
Monitoring
- Поговоримо про типи та метрик та інфраструктуру для їхнього збору
- Навчимося будувати метрики проєктів, які відображають його роботу в реальному часі, та дашборди для їхнього відображення
Scaling. Autoscaling
- Засвоїмо концепцію та алгоритми масштабування
- Розглянемо найпоширеніші стратегії масштабування
- Навчимося налаштовувати autoscaling GCP
Особливості курсу
- Живі заняття
- Real-life завдання
- Курсовий проєкт
- Регулярний фідбек
- Сертифікат про проходження курсу
Викладачі курсу
Максим Орлюк - Senior Machine Learning Engineer at Tango
Більше інформаціїЧитайте нас в Telegram, щоб не пропустити анонси нових курсів.
Відгуки про курси
Сподобалося, що ніхто ні в чому не обмежує вас. Вам описують набір функціоналу, який має бути, а далі – все залежить від вашої фантазії та часу.
Курс дуже класний!
є вся необхідна інформація для того, щоб розібратися в новій сфері
Грамотно організований процес навчання. Все продумано і по темі. Залученість з перших хвилин навчання.
Провчившись 4 місяці, можу сказати, що у мене є свої питання до курсу, але загалом він мені допоміг у моїй основній роботі, я застосовую безпосередньо отримані знання, з матеріалом- подружилася, частину своїх прогалин - закрила...