DanielJorn / Requirements-to-get-a-Job

It's a list of things that allow me to be employed as a Junior Developer!

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Requirements-to-get-a-Job

It's a list of things that allow me to be employed as a Junior Developer!

1. Introducing Android OS and Components

Introducing Support Library

Introducing Gradle build system

2. Android general overview

Debug tools, Profiling

Android Project Structure

Device Compatibilty

Permissions

3. Base Application components Overview: Activity, Service, Broadcast Receiver, ContentProvider

Activity. Lifecycle (most popular callbacks to use and their specifics) and backstack

Services. Lifecycle. Foreground Service, Background Service and restrictions, Bound service.

Context and memory leaks (reasons with examples)

Intent, IntentFilter

Broadcast Receiver, Broadcast Manager. Say about limitations and specifics

Content Sharing

ContentProvider (brief overview)

4. Fragment Fragment Lifecycle

Fragment Manager

Ways to add Fragment

Nested Fragments

Retain Fragments

Fragment's communication

5. Views and Layouts Introducing Android UI System

View Hierarhy

LayoutInflater

Popular Layouts (FrameLayout, LinearLayout, few words about RelativeLayout)

Views (TextView, Button, ImageView)

View Lifecycle, Custom Views

Touch Events

ButterKnife

WebView

Drawer, ViewPager

ActionBar, Toolbar, Options

AdapterView, RecyclerView

CoordinatorLayout, ConstraintLayout

6. Resources and configuration Resources overview

Locales, Screen sizes

Vector

7. Theme and Styles Material Design Basics

Style

Themes

DayNight Themes

Animation Framework. Animating Views and Fragments

8. Patterns

9. Multithreading Processes and Application Lifecycle

AsyncTask (brief overview)

ThreadPool, ThreadPoolExecutor

Looper, Handler

Application Lifecycle (Process lifecycle)

Doze and App Standby. Power management restrictions.

WorkManager. JobScheduler, AlarmManager and GcmNetworkManager. Where and when to use.

10. Persistence Types of storage (Internal, External)

SQLite

Shared Preferences

Content Providers (FileProviders)

ORM overview

11. Networking Necessary permissions

Connectivity

Gson

Moshi

OkHttp

Retrofit

12. Architecture principles General Architecture principles

MVP

MVVM

Clean Architecture

13. Third party libraries RxJava (overview onNext, onComplete, onError)

Dagger 2

Room

LiveData

ViewModel

14. Support Library and Play Services Support Library overview

Play Services overview

15. Android Testing Unit Test

Mocking frameworks

Instrumental Tests

UI tests (Espresso, Robolectric)

16. Play market and Firebase Play Market overview

Publishing Application

Firebase overview

Proguard

17. Notifications Notification overview

Push notifications GCM/FCM

Notification Topics

Notification Channel (Android O)

Remote Notification

Firebase Notification

About

It's a list of things that allow me to be employed as a Junior Developer!