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

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

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

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

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

Вот семь периодов курса Namoosori на основе Java:

1. Период A: 2 недели

  • Тема: Первое знакомство с языком программирования (Java)
  • Цель: 20,000 строк кода (LoC)
  • Лекция и Учебное пособие A1: Курс Java на канале Namoosori YouTube
    - Понимание программирования (синтаксис, элементы, управление потоком и др.)
    - Понимание концепции самостоятельного обучения и наставничества
  • Лекция и Учебное пособие A1: Плейлист Java на канале Namoosori YouTube (планируется)
  • Метод обучения: Регистрация на namoosori.io + самостоятельное обучение + учебный журнал + Вопросы и Ответы
  • Ворота A1: Приглашение в период B после автоматической проверки учебного журнала
  • Связанные сервисы: Панель управления, учебный журнал, Вопросы и Ответы, учебное руководство, сервер Git, YouTube

2. Период B: 4 недели

  • Тема: Понимание концепций и структуры приложений
  • Цель: 40,000 строк кода (LoC)
  • Лекция и Учебное пособие B1: Travel Club (2 недели)
    - Ориентация (видео + онлайн мастерская)
    - Исходный код: Travel Club (этап 1,2 три раза, этап 3 три раза)
    - Понимание и использование UML
  • Лекция и Учебное пособие B2: Timestable (2 недели)
    - Ориентация (видео + онлайн мастерская)
    - Исходный код: Timestable (наследие, домен, вид, меню)
    - Понимание и использование UML
  • Ворота B1, B2

3. Период C: 4 недели

  • Тема: Понимание гибкой архитектуры приложений и расширения
  • Цель: 40,000 строк кода (LoC)
  • Лекция и Учебное пособие C1: Расширение Travel Club на этапе 3 (2 недели)
    - Расширение от памяти к записи файлов
    - Исходный код: Travel Club (этап 4)
    - Понимание концепции уровней доступа к ресурсам и маппинга
  • Лекция и Учебное пособие C2: Расширение Travel Club CLI на этапе 3 (2 недели)
    - Расширение от CLI до GUI (JavaFX)
    - Исходный код: Travel Club (этап 5)
    - Понимание концепции уровней публикации сервисов
  • Ворота C1, C2

4. Период D: 4 недели

  • Тема: Прагматичные структуры данных
  • Цель: 20,000 строк кода (LoC)
  • Лекция и Учебное пособие D1: Структуры данных (2 недели)
    - Прямая реализация Java Collection
    - Исходный код: Namoo Data Structure
    - Презентация и демонстрация
  • Лекция и Учебное пособие D2: Поиск почтовых кодов (2 недели)
    - Сервер поиска почтовых кодов на основе памяти
    - Исходный код: Namoo Post In Memory
    - Ориентация на реализацию
  • Ворота D1, D2

5. Период E: 4 недели

  • Тема: Основы сетевого взаимодействия
  • Цель: 20,000 строк кода (LoC)
  • Лекция и Учебное пособие E1: Передача файлов (2 недели)
    - Сетевое программирование и передача больших файлов
    - Исходный код: Namoo File Sender
  • Лекция и Учебное пособие E2: Файловый сервер (2 недели)
    - Реализация файлового сервера на основе потоков, способного сохранять/искать файлы
    - Исходный код: Namoo File Server
  • Ворота E1, E2

6. Период G: 4 недели

  • Тема: Объектно-ориентированное программирование
  • Цель: 20,000 строк кода (LoC)
  • Лекция и Учебное пособие G1: Crosswalk 4 шага (2 недели)
    - Моделирование объектов (UML): понимание ролей, обязанностей и взаимосвязей
    - Исходный код: Crosswalk шаги 1 ~ 4
  • Лекция и Учебное пособие G2: Crosswalk 6 шагов (2 недели)
    - Расширенное моделирование объектов и автоматы состояний
    - Исходный код: Crosswalk шаги 5 ~ 10
  • Ворота G1, G2

7. Период H: 4 недели

  • Тема: Namoogram: Создание клона Telegram на Java
  • Цель: 10,000 строк кода (LoC), UML модель
  • Лекция и Учебное пособие H1: Проект
    - Сервер Namoogram
    - Клиент Namoogram GUI
    - Исходный код: Namoogram
  • Ворота H1

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

В течение 30 недель участники проходят 14 оценочных ворот и пишут почти 200,000 строк кода на Java. Программа предназначена для того, чтобы дать ученикам фундаментальные навыки, необходимые для долгосрочной инженерной карьеры. Все курсы проводятся в режиме самостоятельного обучения при поддержке тренеров и системы сервиса namoosori.io, которые направляют и помогают учащимся. Программа не охватывает технологии, связанные с базами данных, вебом и фреймворками, так как компании предпочитают нанимать инженеров с прочными базовыми навыками.

Программа Namoosori Coaching проходила пилотное тестирование оффлайн в течение пяти лет, применялась для обучения новых сотрудников компаний-клиентов и новых сотрудников Nextry. Для повышения уровня программы были добавлены темы, которые проводились много раз в прошлом (Crosswalk, Timestable), а также проекты, получившие положительные отзывы в обучении новых сотрудников крупных компаний (клон Telegram). Были также добавлены практические коды, основанные на структурах данных и алгоритмах. Процесс тренировки был проверен, и работа над развитием сервиса и контента продолжается.

10.1.2021
namoosori.io
TaeGook Song(tsong@nextree.io)