Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Як стати успішним Android-розробником: від Junior до Senior

Як стати успішним Android-розробником: від Junior до Senior

Лекція в студентському просторі Belka. 13.02.2020.

- Що потрібно знати, щоб отримати та досягти успіху на першій роботі.
- Поради для швидкого професійного зростання.

Відео: https://www.youtube.com/watch?v=9g44KNzbiGs

Andrii Chubko

December 07, 2020
Tweet

More Decks by Andrii Chubko

Other Decks in Programming

Transcript

  1. План 1. Шлях до першої роботи 2. Як досягти успіху

    на першій роботі 3. Як вирости з початківця у фахівця 3
  2. ▪ Досі найпоширеніша мова ▪ Обов’язкове знання для співбесіди ▪

    Перехід Java -> Kotlin легший, ніж навпаки 6 Java: чому і навіщо? Перша робота Як вирости у фахівця 01. ПЕРШІ ЗНАННЯ
  3. ▪ Thinking in Java, Bruce Eckel ▪ Effective Java, Joshua

    Bloch 7 Java: як? Перша робота Як вирости у фахівця 01. ПЕРШІ ЗНАННЯ
  4. ▪ Офіційна документація ▪ Google Codelabs + Udacity Courses 8

    Kotlin Перша робота Як вирости у фахівця 01. ПЕРШІ ЗНАННЯ
  5. 1. KISS 2. YAGNI 3. DRY 4. SOLID 9 Основні

    принципи програмування Перша робота Як вирости у фахівця 01. ПЕРШІ ЗНАННЯ
  6. YAGNI: You Aren’t Gonna Need It 11 Перша робота Як

    вирости у фахівця 01. ПЕРШІ ЗНАННЯ
  7. ▪ Структури даних ▪ Алгоритми (основи) ▪ Бази даних (основи)

    ▪ Основи Networking (GET, POST) 14 Computer Science Перша робота Як вирости у фахівця 01. ПЕРШІ ЗНАННЯ
  8. ▪ Зберігає історію змін коду ▪ Дозволяє різним людям паралельно

    працювати над одним проектом ▪ Git – найпопулярніша ▪ commit, branch, merge, push, pull 15 Перша робота Як вирости у фахівця 01. ПЕРШІ ЗНАННЯ VCS (Version Control System)
  9. ▪ Серія статей “Developing for Android” by Chet Haase ▪

    Офіційна документація ▪ Google Codelabs + Udacity Courses ▪ Створюйте свій додаток 16 Android Перша робота Як вирости у фахівця 01. ПЕРШІ ЗНАННЯ
  10. ▪ Неможливо знати все ▪ Знайдіть ментора ▪ Будуйте план

    навчання ▪ Не переживайте, коли багато-що не виходить (це нормально) ▪ Уникайте зацикленості на читанні статей 17 Поради для початківців Перша робота Як вирости у фахівця 01. ПЕРШІ ЗНАННЯ
  11. ▪ Java (синтаксис, ООП, основи concurrency) ▪ Структури даних, основи

    алгоритмів ▪ Основи Networking (GET, POST) ▪ Основи баз даних ▪ Android: ◦ Layouts: FrameLayout, LinearLayout, RelativeLayout, ConstraintLayout (basics), RecyclerView ◦ Main components: Activity, Fragment, Service, Intent, Broadcast Receiver, Content Provider ◦ Базове розуміння Gradle build script ◦ Retrofit – бібліотека для роботи з REST APIs ◦ Performance, memory leaks (“Developing for Android” articles) ▪ English ▪ Git (commit, branch, merge, push, pull) Необхідні знання для першої роботи 18 Перша робота Як вирости у фахівця 01. ПЕРШІ ЗНАННЯ
  12. ▪ Kotlin ▪ Базові архітектурні принципи (MVP/MVVM) ▪ Основи тестування

    (Unit tests) ▪ App signing and variants ▪ Code shrinking and obfuscation - ProGuard, R8 (основи) ▪ RxJava (основи) ▪ CI/CD (Continuous Integration/Deployment) - просто знати що це ▪ DI (Dependency Injection) - Dagger (базові поняття) Бонусні знання 19 Перша робота Як вирости у фахівця 01. ПЕРШІ ЗНАННЯ
  13. 1. Друзі/знайомі 2. LinkedIn 3. Вакансії 4. Djinni 5. Стажування/практики

    21 Перша робота: як шукати Перші знання Як вирости у фахівця 02. ПЕРША РОБОТА
  14. 22

  15. ▪ Будьте готові до розчарування ▪ Знайдіть ментора ▪ Командна

    робота – найважливіше (Скромність, Повага, Довіра) ▪ Зворотний зв’язок ▪ Просіть відгук про код якомога частіше ▪ Вчіться давати часову оцінку завданням 24 Перша робота: поради Перші знання Як вирости у фахівця 02. ПЕРША РОБОТА
  16. ▪ Не тупіть (довго) ▪ Не бійтеся задавати запитання ▪

    Чужому навчайтесь, й свого не цурайтесь ▪ Тижні програмування збережуть вам години планування ▪ Не використовуйте те, в чому не розбираєтесь ▪ Не бійтеся казати про проблеми 25 Перша робота: ще більше порад Перші знання Як вирости у фахівця 02. ПЕРША РОБОТА
  17. 1. Як я можу зробити це швидше? 2. Як я

    можу збільшити користь від цієї роботи? 3. Чи можу я зайнятись чимось іншим, що принесе більшу користь? 27 Користь / витрачений час Перші знання Перша робота 03. ЯК ВИРОСТИ У ФАХІВЦЯ
  18. ▪ Клавіатурні скорочення ▪ Інструменти, плагіни ▪ CI/CD – автоматизація

    тестів, релізу в Google Play 29 Автоматизуйте рутинні речі Перші знання Перша робота 03. ЯК ВИРОСТИ У ФАХІВЦЯ
  19. Що є зараз найважливішим для продукту? ▪ Швидкість релізу ▪

    Стабільність ▪ Кількість користувачів за день ▪ Кількість покупок ▪ ….. 30 Використовуйте метрики Перші знання Перша робота 03. ЯК ВИРОСТИ У ФАХІВЦЯ
  20. ▪ Основи безпеки додатку ▪ Шаблони програмування (Design Patterns) ▪

    Архітектура (Clean) ▪ Тестування ▪ Налаштування CI/CD ▪ Custom views, анімації ▪ Gradle - залежності, багатомодульна архітектура ▪ Аналіз швидкості додатку 32 Що вчити далі? Перші знання Перша робота 03. ЯК ВИРОСТИ У ФАХІВЦЯ
  21. ▪ Станьте ментором ▪ Беріть участь у наймі та onboarding

    ▪ Відвідуйте події (спілкуйтесь!) ▪ Готуйте статті чи виступи 33 Що робити, щоб розвиватись? Перші знання Перша робота 03. ЯК ВИРОСТИ У ФАХІВЦЯ
  22. ▪ Medium ▪ Розсилки: Android Weekly, Kotlin Weekly, ProAndroidDev ▪

    Подкасти: Fragmented, Android Developers Backstage ▪ Android Dialogs (YouTube) ▪ Конференції (або їх записи) 34 Джерела інформації Перші знання Перша робота 03. ЯК ВИРОСТИ У ФАХІВЦЯ