Android Development: Difference between revisions
Line 91: | Line 91: | ||
|- | |- | ||
| rowspan="5" style="vertical-align:middle; font-weight:bold; background-color:#F4F5F7;" | Frameworks | | rowspan="5" style="vertical-align:middle; font-weight:bold; background-color:#F4F5F7;" | Frameworks | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | AOSP | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://source.android.com/ AOSP] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 99: | Line 99: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | JUnit | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/JUnit JUnit] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 107: | Line 107: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Scrum | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Scrum_(software_development) Scrum] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 115: | Line 115: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- style="background-color:#e3fcef;" | |- style="background-color:#e3fcef;" | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Agile | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Agile_software_development Agile] | ||
| style="vertical-align:middle;" | Practical application | | style="vertical-align:middle;" | Practical application | ||
| style="vertical-align:middle;" | Practical application | | style="vertical-align:middle;" | Practical application | ||
Line 123: | Line 123: | ||
| style="vertical-align:middle; background-color:#deebff;" | Applied theory | | style="vertical-align:middle; background-color:#deebff;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Native Android SDK | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://developer.android.com/studio/releases/sdk-tools Native Android SDK] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 132: | Line 132: | ||
|- | |- | ||
| rowspan="7" style="vertical-align:middle; font-weight:bold; background-color:#F4F5F7;" | Protocols | | rowspan="7" style="vertical-align:middle; font-weight:bold; background-color:#F4F5F7;" | Protocols | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | SIP | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/SIP_(software) SIP] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 140: | Line 140: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | XMPP | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/XMPP XMPP] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 148: | Line 148: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | ZRTP | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/ZRTP ZRTP] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 156: | Line 156: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | PGP | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Pretty_Good_Privacy PGP] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 164: | Line 164: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | OTR | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Off-the-Record_Messaging OTR] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 172: | Line 172: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | OMEMO | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/OMEMO OMEMO] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 180: | Line 180: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | SSL | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Transport_Layer_Security SSL] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 189: | Line 189: | ||
|- | |- | ||
| rowspan="10" style="vertical-align:middle; font-weight:bold; background-color:#F4F5F7;" | Programming languages | | rowspan="10" style="vertical-align:middle; font-weight:bold; background-color:#F4F5F7;" | Programming languages | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Bash/Shell | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://www.gnu.org/software/bash/ Bash/Shell] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 197: | Line 197: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | C/C++ | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/C%2B%2B C/C++] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
Line 205: | Line 205: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | CSS | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Cascading_Style_Sheets CSS] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
Line 213: | Line 213: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Groovy | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [http://groovy-lang.org/index.html Groovy] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 221: | Line 221: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | HTML | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/HTML HTML] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
Line 229: | Line 229: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | JavaScript | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/JavaScript JavaScript] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
Line 237: | Line 237: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Kotlin | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Kotlin_(programming_language) Kotlin] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 245: | Line 245: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Python | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Python_(programming_language) Python] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 253: | Line 253: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | SQL | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/SQL SQL] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 261: | Line 261: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | XML | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/XML XML] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 270: | Line 270: | ||
|- | |- | ||
| rowspan="16" style="vertical-align:middle; font-weight:bold; background-color:#F4F5F7;" | Libraries | | rowspan="16" style="vertical-align:middle; font-weight:bold; background-color:#F4F5F7;" | Libraries | ||
| style="background-color:#f4f5f7; color:#36B; text-align:left;" | Android X | | style="background-color:#f4f5f7; color:#36B; text-align:left;" | [https://developer.android.com/jetpack/androidx Android X] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 278: | Line 278: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Dagger 2 | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://dagger.dev/dev-guide/android.html Dagger 2] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 286: | Line 286: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Espresso | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://developer.android.com/training/testing/espresso Espresso] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 294: | Line 294: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | EventBus | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://greenrobot.org/eventbus/ EventBus] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 302: | Line 302: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Kotlin Coroutines | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://developer.android.com/kotlin/coroutines?gclid=CjwKCAiA6aSABhApEiwA6Cbm__HCyPN3oUxAYvPEmqwt2AczHZ0b4I2ibfqqUwbf4noARmNwGkebmBoC4XIQAvD_BwE&gclsrc=aw.ds Kotlin Coroutines] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 310: | Line 310: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Jake Wharton Butter Knife | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Butter_knife Jake Wharton Butter Knife] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 318: | Line 318: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Linphone | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Linphone Linphone] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 326: | Line 326: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Microsoft Exchange web services (EWS) | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://docs.microsoft.com/en-us/exchange/client-developer/exchange-web-services/ews-applications-and-the-exchange-architecture Microsoft Exchange web services (EWS)] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 334: | Line 334: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Mockito | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Mockito Mockito] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 342: | Line 342: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | OkHttp | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://square.github.io/okhttp/ OkHttp] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 350: | Line 350: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Picasso | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://square.github.io/picasso/ Picasso] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 358: | Line 358: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Retrofit | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://square.github.io/retrofit/ Retrofit] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 374: | Line 374: | ||
| Applied theory | | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | SMACK | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://github.com/igniterealtime/Smack SMACK] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 382: | Line 382: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Timber | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://github.com/JakeWharton/timber Timber] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 390: | Line 390: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Zetetic SQL Cipher | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://www.zetetic.net/sqlcipher/ Zetetic SQL Cipher] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 399: | Line 399: | ||
|- | |- | ||
| rowspan="22" style="vertical-align:middle; font-weight:bold; background-color:#F4F5F7;" | Softwares/Tools/Platforms | | rowspan="22" style="vertical-align:middle; font-weight:bold; background-color:#F4F5F7;" | Softwares/Tools/Platforms | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Atlassian Bitbucket | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Bitbucket Atlassian Bitbucket] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
Line 407: | Line 407: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Atlassian Bamboo | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Bamboo_(software) Atlassian Bamboo] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Limited experience | | style="vertical-align:middle; background-color:#e3fcef;" | Limited experience | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 415: | Line 415: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Android Studio | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Android_Studio Android Studio] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 423: | Line 423: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Appium | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Appium Appium] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 431: | Line 431: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- style="background-color:#e3fcef;" | |- style="background-color:#e3fcef;" | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Countly | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://count.ly/ Countly] | ||
| style="vertical-align:middle;" | Limited experience | | style="vertical-align:middle;" | Limited experience | ||
| style="vertical-align:middle;" | Practical application | | style="vertical-align:middle;" | Practical application | ||
Line 439: | Line 439: | ||
| style="vertical-align:middle; background-color:#deebff;" | Applied theory | | style="vertical-align:middle; background-color:#deebff;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Crowdin | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://crowdin.com/ Crowdin] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 447: | Line 447: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Docker | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://www.docker.com/ Docker] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 455: | Line 455: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Elastic Kibana | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://www.elastic.co/kibana Elastic Kibana] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 463: | Line 463: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- style="background-color:#e3fcef;" | |- style="background-color:#e3fcef;" | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Gerrit | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://www.gerritcodereview.com/ Gerrit] | ||
| style="vertical-align:middle;" | Limited experience | | style="vertical-align:middle;" | Limited experience | ||
| style="vertical-align:middle;" | Practical application | | style="vertical-align:middle;" | Practical application | ||
Line 471: | Line 471: | ||
| style="vertical-align:middle; background-color:#deebff;" | Applied theory | | style="vertical-align:middle; background-color:#deebff;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Gradle | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://gradle.org/ Gradle] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 479: | Line 479: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Git | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Git?wprov=srpw1_0 Git] | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 487: | Line 487: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Ignite Realtime Openfire | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Openfire Ignite Realtime Openfire] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 495: | Line 495: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Instabug | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://firebase.google.com/ Instabug] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 503: | Line 503: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- style="background-color:#e3fcef;" | |- style="background-color:#e3fcef;" | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | IntelliJ Idea | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://www.jetbrains.com/idea/ IntelliJ Idea] | ||
| style="vertical-align:middle;" | Limited experience | | style="vertical-align:middle;" | Limited experience | ||
| style="vertical-align:middle;" | Practical application | | style="vertical-align:middle;" | Practical application | ||
Line 511: | Line 511: | ||
| style="vertical-align:middle; background-color:#deebff;" | Applied theory | | style="vertical-align:middle; background-color:#deebff;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Kamailio | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Kamailio Kamailio] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 519: | Line 519: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Kubernetes | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://kubernetes.io/ Kubernetes] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 527: | Line 527: | ||
| style="vertical-align:middle;" | Applied theory | | style="vertical-align:middle;" | Applied theory | ||
|- | |- | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Portainer.io | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://www.portainer.io/ Portainer.io] | ||
| style="vertical-align:middle; background-color:#fffae5;" | Limited experience | | style="vertical-align:middle; background-color:#fffae5;" | Limited experience | ||
| style="vertical-align:middle; background-color:#e3fcef;" | Practical application | | style="vertical-align:middle; background-color:#e3fcef;" | Practical application | ||
Line 567: | Line 567: | ||
| Applied theory | | Applied theory | ||
|- style="background-color:#e3fcef;" | |- style="background-color:#e3fcef;" | ||
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | Ubuntu | | style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Ubuntu Ubuntu] | ||
| style="vertical-align:middle;" | Practical application | | style="vertical-align:middle;" | Practical application | ||
| style="vertical-align:middle;" | Practical application | | style="vertical-align:middle;" | Practical application |
Revision as of 14:32, 21 April 2021
Our Android Developers are the engine of the company. They optimize Secure Group’s products and services to deliver the most secure mobile solutions by constantly challenging the standards of encrypted communications.
As a developer you will be responsible for managing the complete software lifecycle – from analyzing requirements to creating prototypes, transforming wireframes into high-quality code, and implementing new features. You will also ensure the top quality of our solutions by developing and executing unit tests, troubleshooting issues, removing impediments, and improving the overall performance of Secure OS. Growing in this framework will mean working along-side other developers and committing to collaborative problem solving to deliver a sophisticated design and a high-quality product.
We envision each of our employees as stakeholders, so you will be responsible for driving the collaboration with other teammates and agile teams, act as a subject-matter expert to less experienced Software Engineers, and add user value to the solution.
Progression
In order to progress in our development path and Level Up or Step Up, our Android Developers must:
- Meet the criteria of the Level & Step Chart for the Individual Contributors Path
- Score at least 4 in the KAI of the position
- Demonstrate proficiency in Secure Group Knowledge
Salary Grid
All mentioned salary ranges represent the monthly income in Bulgarian Lev after taxes and deductions.
Android Development | Step | ||||
---|---|---|---|---|---|
Level | |||||
Individual Contributor Path | 1 | 2 | 3 | 4 | |
Android Soft. Engineer | 6.000 | 6.150 | 6.300 | 6.450 | |
Sr. Android Soft. Engineer lvl II | 7.000 | 7.150 | 7.300 | 7.450 | |
Sr. Android Soft. Engineer lvl III | 8.000 | 8.150 | 8.300 | 8.450 | |
Sr. Android Soft. Engineer lvl IV | 9.000 | 9.150 | 9.300 | 9.450 | |
Sr. Android Soft. Architect lvl V | 10.000 | 10.150 | 10.300 | 10.450 | |
Sr. Android Soft. Architect lvl VI | 11.000 | 11.150 | 11.300 | 11.450 |
KAI of the position
Extensive Knowledge
Type | Knowledge Description | Minimum Grade to acquire Level X | |||||
---|---|---|---|---|---|---|---|
Level 1 | Level 2 | Level 3 | Level 4 | Level 5 | Level 6 | ||
Frameworks | AOSP | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory |
JUnit | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Scrum | Limited experience | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
Agile | Practical application | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
Native Android SDK | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Protocols | SIP | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory |
XMPP | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
ZRTP | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
PGP | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
OTR | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
OMEMO | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
SSL | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Programming languages | Bash/Shell | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory |
C/C++ | Limited experience | Limited experience | Practical application | Applied theory | Applied theory | Applied theory | |
CSS | Limited experience | Limited experience | Practical application | Applied theory | Applied theory | Applied theory | |
Groovy | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
HTML | Limited experience | Limited experience | Practical application | Applied theory | Applied theory | Applied theory | |
JavaScript | Limited experience | Limited experience | Practical application | Applied theory | Applied theory | Applied theory | |
Kotlin | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Python | Limited experience | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
SQL | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
XML | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Libraries | Android X | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory |
Dagger 2 | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Espresso | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
EventBus | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Kotlin Coroutines | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Jake Wharton Butter Knife | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Linphone | Limited experience | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Microsoft Exchange web services (EWS) | Limited experience | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Mockito | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
OkHttp | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Picasso | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Retrofit | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
RxJava/RxAndroid/RxKotlin | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
SMACK | Limited experience | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Timber | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Zetetic SQL Cipher | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Softwares/Tools/Platforms | Atlassian Bitbucket | Limited experience | Limited experience | Practical application | Applied theory | Applied theory | Applied theory |
Atlassian Bamboo | Limited experience | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Android Studio | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Appium | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Countly | Limited experience | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
Crowdin | Limited experience | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
Docker | Limited experience | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
Elastic Kibana | Limited experience | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
Gerrit | Limited experience | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
Gradle | Limited experience | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
Git | Practical application | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
Ignite Realtime Openfire | Limited experience | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
Instabug | Limited experience | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
IntelliJ Idea | Limited experience | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
Kamailio | Limited experience | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
Kubernetes | Limited experience | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
Portainer.io | Limited experience | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
Secure Manager | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
SAS | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
SCRCPY | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Terminal/Prompt | Practical application | Practical application | Applied theory | Applied theory | Applied theory | Applied theory | |
Ubuntu | Practical application | Practical application | Practical application | Applied theory | Applied theory | Applied theory | |
Languages (idioms) | Advanced Business English | Limited experience | Practical application | Practical application | Applied theory | Applied theory | Applied theory |