1

Этап 1

Мэтт Вайсфелд - Объектно-ориентированное мышление

30 июня—15 июля

2

Этап 2

Шаблоны проектирования

30 июня—15 июля

3

Этап 3

Сделать более детальное оформление цели

15 июля—15 июля

4

Этап 4

Разобраться с workflowy.com

20 июля—20 июля

5

Этап 5

Добавить навыки и этапы по Front-end developing

26 июля—26 июля

6

Этап 6

Разработка сайта impuls47

15 июля—10 августа

7

Этап 7

Роберт Мартин "Чистый код"

8

Этап 8

ReactJS

9

Этап 9

Подробный Стек технологий и разделов JUN

10

Этап 10

Углубление знаний в навыках

11

Этап 11

Разработка своих проектов

12

Этап 12

jQuery

10 августа—13 августа

13

Этап 13

Bootstrap

14

Этап 14

JavaScript improving

15

Этап 15

HTML5, CSS3

14 августа—14 августа

16

Этап 16

Front-end

28 июля—01 сентября

17

Этап 17

Занятия английским каждый день

17 июля—02 декабря

18

Этап 18

Патрик Нимейер - Философия Java

01 июля—30 сентября

19

Этап 19

Шилдт - полное руководство Java

20 сентября—26 ноября

20

Этап 20

Ресурсы к изучению

30 июня—27 декабря

21

Этап 21

Опыт работы

30 июня—30 июня

22

Этап 22

Книги

30 июня—30 июня

23

Этап 23

Улучшить навыки разработки

24

Этап 24

Улучшить владение языками

1

Этап 1

Мэтт Вайсфелд - Объектно-ориентированное мышление

30 июня—15 июля

3

Этап 3

Сделать более детальное оформление цели

15 июля—15 июля

4

Этап 4

Разобраться с workflowy.com

20 июля—20 июля

5

Этап 5

Добавить навыки и этапы по Front-end developing

26 июля—26 июля

12

Этап 12

jQuery

10 августа—13 августа

15

Этап 15

HTML5, CSS3

14 августа—14 августа

19

Этап 19

Шилдт - полное руководство Java

20 сентября—26 ноября

2

Этап 2

Шаблоны проектирования

30 июня—15 июля

6

Этап 6

Разработка сайта impuls47

15 июля—10 августа

7

Этап 7

Роберт Мартин "Чистый код"

8

Этап 8

ReactJS

9

Этап 9

Подробный Стек технологий и разделов JUN

10

Этап 10

Углубление знаний в навыках

11

Этап 11

Разработка своих проектов

13

Этап 13

Bootstrap

14

Этап 14

JavaScript improving

23

Этап 23

Улучшить навыки разработки

24

Этап 24

Улучшить владение языками

16

Этап 16

Front-end

28 июля—01 сентября

17

Этап 17

Занятия английским каждый день

17 июля—02 декабря

18

Этап 18

Патрик Нимейер - Философия Java

01 июля—30 сентября

20

Этап 20

Ресурсы к изучению

30 июня—27 декабря

21

Этап 21

Опыт работы

30 июня—30 июня

22

Этап 22

Книги

30 июня—30 июня

30 июня 2016 01 сентября 2018
Цель завершена 5 июля 2018
Карьера и работа

Стать Senior Software Engineer

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

Что для меня значит эта цель? Прежде всего несколько слов о том, почему я переименовал цель с Senior Full Stack Developer на Software Engineer. Дело в том, что инженер в данном контексте в себя включает фул стек разработку, но при этом включает в себя некоторое взаимодействие с архитектурным уровнями, слоями. Для меня это интересное направление, и более универсальное, чем быть просто разработчиком.

Итак, что мне для этого нужно. Мне необходимо развивать навыки в различных технологиях, которые для меня новые, а так же улучшать знания тех, которые уже есть. Сейчас я работаю Junior Software Engineer. Поэтому вижу в каком направлении мне стоит идти, какое направление нравится, какие мне необходимы для этого технологии.

Моя цель будет в чем-то меняться, что-то в неё будет добавляться, я думаю, что это будет интересный и очень крутой процесс, потому что конечная цель всё же получить работу Senior Software Engineer в Соединенных Штатах. Для меня важно стать очень востребованным специалистом, профессионалом во всех областях, необходимых для того, чтобы предоставлять автономного инженера (в плане, что я не привязан к тому, что мне надо взаимодействовать с front-end разработчиками, например, что сокращает время разработки. Т.е. я смог бы решать любые задачи своими силами).

 Критерий завершения

Получить работу Senior Software Engineer

 Личные ресурсы

Работа Junior Software Engineer, English (Upper Intermediate), опыт учебной разработки, опыт во фронт-энде и разработке интерфейсов.

  1. Мэтт Вайсфелд - Объектно-ориентированное мышление

    процесс чтения книги

    1. Введение в Объектно-ориентированные концепции

    2. Как мыслить объектно

    3. Продвинутые Объектно-ориентированные концепции

    4. Анатомия класса

    5. Руководство по проектированию класса

    6. Проектирование с использованием объектов

    7. Наследование и композиция

    8. Фреймворки и повторное использование

    9. Создание объектов и оо проектирование

    10. Создание объектных моделей

    11. Xml и json

    12. Постоянные объекты

    13. Объекты в веб службах, мобильных и гибридных приложениях

    14. Объекты и клиент северные приложения

    15. Шаблоны проектирования

  2. Шаблоны проектирования

    Процесс углубления в шаблоны проектирования

    1. Delegate

    2. Facade

    3. Fabric

    4. Abstract Fabric

    5. Builder

    6. Prototype

    7. Composite

    8. Adapter

    9. Decorator

    10. Singleton

  3. Сделать более детальное оформление цели

    1. Составить план улучшения

    2. Улучшить

  4. Разобраться с workflowy.com

    Интересный сервис, думаю, что он мне поможет в процессе работы/изучения и т.д

  5. Добавить навыки и этапы по Front-end developing

  6. Разработка сайта impuls47

    Моё тестовое задание перед участием в боевом проекте. Надо разработать сайт простой с каталогом для компании на основе фреймворка.

    1. Сделать дизайн

    2. Сделать верстку всего сайта

    3. Написать базовые JS скрипты анимации и т.п.

    4. push на мастера в репозиторий

    5. создание проекта maven с сайтом

    6. разработка сайта

    7. Deployment

  7. Роберт Мартин "Чистый код"

    1. Глава 1

    2. Глава 2

    3. Глава 3

    4. Глава 4

    5. Глава 5

    6. Глава 6

    7. Глава 7

    8. Глава 8

    9. Глава 9

    10. Глава 10

    11. Глава 11

    12. Глава 12

    13. Глава 13

  8. ReactJS

    Пообщавшись с большим количеством людей я пришел к выводу, что вместо ангуляра мне стоит изучать реак. Поэтому буду изучать его. Изучать начну здесь: мhttps://ru.hexlet.io/courses/reactjs

    1. Виртуальный DOM

    2. Компонент

    3. Особенности JSX

    4. Условные конструкции в JSX

    5. Передача свойств в компоненты

    6. Комбинирование компонентов в JSX

    7. Внутреннее состояние

    8. Обработка событий

    9. Вложенные компоненты

    10. Однонаправленное распространение данных

  9. Подробный Стек технологий и разделов JUN

    Здесь я буду отмечать, какими разделами и технологиями я овладел на уровне Junior или близко

    1. Java Core

    2. I/O

    3. Classes

    4. Inheritance

    5. Threads

    6. Servlets

    7. Generic

    8. Garbage collector

    9. Reflection

    10. Collection framework

    11. Maven

    12. Jetty

    13. Git

    14. Spring

    15. Hibernate

    16. JDBC

    17. Java FX/fxml

    18. JUnit

    19. Jenkins

    20. Design Patterns

    21. Freemarker

    22. Web Spark Java

    23. Java 8 Stream API

  10. Углубление знаний в навыках

    Список того, что мне необходимо подтянуть в первую очередь

    1. Работа с git

    2. Проектирование

    3. Потоки ввода\вывода

    4. Многопоточность

    5. Collection framework

    6. Functional interfaces

    7. Лямба выражения

    8. Последовательный вызов методов

    9. Java 8 Stream API

  11. Разработка своих проектов

    Этот этап в принципе тоже будет на протяжении всего времени, главное его выполнять. У меня не будет очень много времени на свои проекты в связи с довольно сложной и интересной работой, но я буду делать их и участвовать в других open source проектах.

    1. Разработка сайта для компании (на Java и готовом Java фреймворке, который реализовал мой брат)

    2. Разработка ПО для Биомедиса

    3. Доделать MessageBroker

    4. Продолжить работу над LifeRPG

    5. Доделать проект Work ToDo для организации

    6. Разобрать свой дипломный проект

    7. Реализовать тестовое приложение на Android (ну, так, для опыта)

    8. Переделать свой сайт на Java (PHP - это скучно и не солидно)

    9. Реализация всех учебных проектов из колледжа (там был лютый гавнокод)

  12. jQuery

    1. Обернутые наборы

    2. Цепочки команд

    3. Модель событий браузера

    4. Остановка анимационных эффектов

    5. Флаги

    6. Динамическая загрузка сценариев

    7. Управление объектами и коллекциями

    8. Ajax

    9. Form Plugin

    10. Dimension Plugin

    11. UI Plugin

  13. Bootstrap

    1. Изучить механизм работы collapse (а то пользуюсь, не зная точно как работает)

  14. JavaScript improving

    Мне следует улучшить свой знания в JS. Я многое знаю, но многое прошло мимо. Тут я укажу то, в чём мне следует углубиться в JS. Если кто-то сможет что-то подсказать и дать советы, я буду рад

    1. Замыкания (надо повторить как следует, что-то подзабыл немного)

    2. Prototype, classes, constructors

    3. Объекты Error

    4. RegExp

    5. Обработка ошибок

    6. События

    7. JS + HTTP

    8. JS + XML

    9. Operating with canvas

    10. Java (aplets, operations with aplets, call js from java and so on)

    11. Objects

  15. HTML5, CSS3

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

    1. Canvas

    2. Animation

    3. Transformation

    4. HTML5 - пробежать по новым тегам структуры страницы

  16. Front-end

    Как я уже говорил, я всё же хочу быть Full Stack Developer, поэтому я буду развиваться, как в Java, так и во Front-end'е. Как минимум программисты, которые знают помимо основного языка программирования, например, JavaScript на хорошем уровне - очень ценятся.

    1. Углубление знаний в нативном JavaScript

    2. Углубить знания HTML5

    3. Углубить знания в CSS3

    4. Углубить знания в Twitter Bootstrap

    5. Angular JS

    6. Углубиться в jQuery

    7. Require JS

    8. Изучить Local WebStorage

    9. Углубиться в AJAX

    10. Углубиться в проектировании и разработке дизайнов

    11. Отточить разработку лендингов

  17. Патрик Нимейер - Философия Java

    1. Глава 1. Современный язык .

    2. Глава 2. Первое применение

    3. Глава 3. Инструменты для работы

    4. Глава 4. Язык Java

    5. Глава 5. Объекты в Java

    6. Глава 6. Отношения между классами

    7. Глава 7. Работа с объектами и классами

    8. Глава 8. Обобщения

    9. Глава 9. Потоки выполнения

    10. Глава 10. Работа с текстом

    11. Глава 11. Основные инструменты

    12. Глава 12. Средства ввода/вывода.

    13. Глава 13. Сетевое программирование

    14. Глава 14. Веб-программирование

    15. Глава 15. Веб-приложения и веб-сервисы

    16. Глава 16. Библиотека Swing

    17. Глава 17. Использование компонентов библиотеки Swing

    18. Глава 18. Другие компоненты библиотеки Swing

    19. Глава 19. Диспетчеры компоновки

    20. Глава 20. Рисование с использованием 2D API.

    21. Глава 21. Работа с изображениями и другими медиаданными

    22. Глава 22. JavaBeans

    23. Глава 23. Апплеты

    24. Глава 24. XML

    25. Приложение Б. BeanShell: Написание сценариев Java .

  18. Шилдт - полное руководство Java

    1. Глава 1. История и развитие языка Jаvа

    2. Глава 2. Краткий обзор Java

    3. Глава 3. Типы данных, переменные и массивы

    4. Глава 4 . Операции

    5. Глава 5. Управляющие операторы

    6. Глава 6. Введение в классы

    7. Глава 7. Подробное рассмотрение классов и методов

    8. Глава 8. Наследование

    9. Глава 9. Пакеты и интерфейсы

    10. Глава 10. Обработка исключений

    11. Глава 11. Многопоточное программирование

    12. Глава 12. Перечисления, автоупаковка и аннотации (метаданные)

    13. Глава 13. Ввод-вывод, аплеты в прочие вопросы

    14. Глава 14. Обобщения

    15. Глава 15. Лямбда·выражения

    16. Глава 16. Обработка символьных строк

    17. Глава 17. Пакет java. lang

    18. Глава 18. Пакет java. util, часть 1. Collections Framework

    19. Глава 19. Пакет java. util, часть 11. Прочие служебные классы

    20. Глава 20. Пакет java. io для ввода-вывода

    21. Глава 21. Система ввода·вывода NIO

    22. Глава 22. Работа в сети

    23. Глава 23. Класс Applet

    24. Глава 24. Обработка событий

    25. Глава 25. Введение в библиотеку АWТ: работа с окнами, графикой и текстом

    26. Глава 26. Применение элементов управления, диспетчеров компоновки и меню из библиотеки АWТ

    27. Глава 27. Изображения

    28. Глава 28. Утилиты параллелизма

    29. Глава 29. Потоковый API

    30. Глава 30. Регулярные выражения и другие пакеты

    31. Глава 31. Введение в библиотеку Swing

    32. Глава 32. Исследование библиотеки Swing

    33. Глава 33. Введение в меню Swing

    34. Глава 34. Введение вJavaFX

    35. Глава 35. Элементы управленияJаvаFХ

    36. Тhава 36. Введение в меню JavaFX

    37. Глава 37. КомпонентыJаvа Beans

    38. Глава 38. Введение в сервлеты

    39. Применение документирующих комментариев вJava

  19. Ресурсы к изучению

    Здесь я собираю большую коллекцию ссылок на интересные и полезные видео, онлайн-ресурсы, которые мне необходимо посмотреть.

    1. Шаблоны проектирования в Java https://new.vk.com/eignatik17?w=wall-16108331_98467

    2. Инструменты для работы с БД Java https://new.vk.com/eignatik17?w=wall-30666517_1383234

    3. Курсы по разработке интерфейсов https://new.vk.com/eignatik17?w=wall13674071_6751 (full stack я или кто?!))

    4. Практические курсы по Java https://new.vk.com/eignatik17?w=wall13674071_6749

    5. Подборки материалов по Java https://new.vk.com/eignatik17?w=wall13674071_6745

    6. Regular expressions https://new.vk.com/wall-30666517_1376410 (да-да, теперь у нас проблемы)

    7. Подробнее о null in Java https://new.vk.com/wall-30666517_1384348

    8. Java EE https://new.vk.com/wall-30666517_1372049

    9. Полезные материалы по Java https://new.vk.com/wall-30666517_1372129

    10. Реактивное программирование Java https://new.vk.com/wall-30666517_1371132

    11. Collection with interesting issues solvings https://www.reddit.com/r/learnprogramming/comments/4msr6f/heres_a_list_of_227_free_online_progra

    12. Сборник материалов по работе на Java https://new.vk.com/wall-30666517_1370729

    13. Полезные ссылки https://new.vk.com/wall-30666517_1368309

    14. Подборка полезных видео https://new.vk.com/wall-30666517_1357048

    15. 10 interesting questions https://tproger.ru/translations/10-tricky-core-java-interview-coding/

    16. Java 8th oportunities https://new.vk.com/wall-30666517_1367714

    17. Java EE (the first chapter) https://new.vk.com/wall13674071_6720

    18. Алгоритмы и т.д. https://new.vk.com/wall-30666517_1365994

    19. Поговорим о погрешностях? https://new.vk.com/wall-30666517_1366010

    20. Инструменты тестирования Java https://new.vk.com/wall-30666517_1366120

    21. Доклад Oracle об оптимизации Java https://new.vk.com/wall-30666517_1363892

    22. Подборка видеоуроков Java https://new.vk.com/wall-30666517_1364708

    23. Java Collection (Advanced) https://new.vk.com/wall-30666517_1355600

    24. Java Programming Advanced https://www.javacodegeeks.com/2016/05/top-10-advanced-java-talks-see-stay-relevant.html

    25. Webinar Java Spring etc by dev.IntelliJ https://new.vk.com/wall-30666517_1359900

    26. GIT https://new.vk.com/wall-30666517_1361316

    27. Java Hints https://new.vk.com/wall-30666517_1361785

    28. Git видеокурс https://www.youtube.com/watch?v=mpK_MYb38zs&list=PLoonZ8wII66iUm84o7nadL-oqINzBLk5g

    29. Курс GeekBrains по Git

    30. Основы тестирования https://www.youtube.com/watch?v=heAAs8gFHPw&list=PLY4rE9dstrJx9CnuzzHTThoslw568g5Ae

    31. Полезные видео с канала https://www.youtube.com/user/b0noI/playlists

    32. Design Patterns https://www.youtube.com/watch?v=k6oh9C_71mE&list=PLlsMRoVt5sTPgGbinwOVnaF1mxNeLAD7P

    33. Продвинутый git https://www.youtube.com/watch?v=bA20a0zhm7M&list=PLIU76b8Cjem5B3sufBJ_KFTpKkMEvaTQR

    34. Уроки по андроиду https://www.youtube.com/watch?v=mmUgcokRJ5k&list=PLIU76b8Cjem7oSU18zTKNfsyzrmf3Zubl

    35. Полезное https://www.youtube.com/watch?v=cmN6FyZhDoI&list=PLIU76b8Cjem6NwisglQY6BqPBn9dTxuNJ

    36. Хорошая статья по работе с GIT http://webhamster.ru/mytetrashare/index/mtb0/4049

    37. цикл разработки http://webhamster.ru/mytetrashare/index/mtb0/13785878736tvke371rj

    38. git rebase http://tonyganch.com/git/rebase/

    39. git rebase 2 http://www.pvsm.ru/git/21978

    40. Java2s http://java2s.com/

    41. http://www.javenue.info/themes/ood

    42. Проектирование классов и интерфейсов http://info.javarush.ru/fatesha/2016/01/24/%D0%9F%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2

    43. Разработка веб-сервиса со Spring https://www.youtube.com/watch?v=e7swABdqOS4&list=PLlsMRoVt5sTNpihn4q4S4an2xpYkSA3RR

    44. Regular expressions in Java http://www.javenue.info/post/43

    45. Java 1000+ hours of videos https://habrahabr.ru/company/golovachcourses/blog/215275/

    46. Библиотека алоритмов на Java https://github.com/indy256/codelibrary/tree/master/java/src

  20. Опыт работы

    на этом этапе для меня важно получить хороший опыт работы Java разработчиком (причём скорее всего опыт будет из разряда full stack)

    1. Опыт учебной разработки

    2. Довести свой хотя бы один проект до конца

    3. Получить работу Junior Developer

    4. Получить работу Middle Developer

    5. Получить работу Senior Developer

    6. Опыт участия в Open-Source проектов

  21. Книги

    Здесь я собираю список книг, которые мне нужно прочитать

    1. Мэтт Вайсфельд - Объектно-ориентированное мышление

    2. Патрик Нимейер - Философия Java

    3. Г.Шилдт - Полное руководство Java

    4. Р. Лафоре - Структуры данных и алгоритмы Java

    5. Р.Мартин - Чистый код

    6. Брюс Эккель - Thinking in Java

    7. Иегуда Кац - Подробное руководство по продвинутому JavaScript

    8. Шаблоны проектирования "Банда четырех" - Паттерны объектно-ориентированного программирования, паттерны проектирования

    9. Мэтт Вайсфелд Разработка программного обеспечения рабочей группой

    10. Роберт Сейджвик - Алгоритмы на Java

    11. Варбуртон Р - Лямбда выражения в Java 8

    12. Брукс, Мифический человеко-месяц

    13. Фленэган - JS

    14. Git для профессионалов

    15. Шаблоны проектирования Enterprise приложений

    16. Роберт Мартин - Идеальный программист

    17. Фаулер - Программист-фанатик

    18. Книга по прототипированию

    19. Сила математического мышления

    20. Кент Бэк - TDD

    21. Ли Атчинсон - Масштабирование приложений

    22. RXJava - Томас Нуркевич

  22. Улучшить навыки разработки

    1. Участие в проектах

    2. Пройти 1 курс на Pluralsight

    3. Пройти 3 курса на Pluralsight

    4. Пройти 10 курсов на Pluralsight

    5. Дочитать книги

  23. Улучшить владение языками

    1. Улучшить английский

    2. Регулярно пользоваться сервисом italki для английского

    3. Улучшить польский

  • 17297
  • 30 июня 2016, 18:16
Регистрация

Регистрация

Уже зарегистрированы?
Быстрая регистрация через соцсети
Вход на сайт

Входите.
Открыто.

Еще не зарегистрированы?
 
Войти через соцсети
Забыли пароль?