Android Development: Difference between revisions

From Secure Group Wiki
Jump to navigation Jump to search
No edit summary
Line 90: Line 90:
| Level 6
| Level 6
|-
|-
| rowspan="5" style="vertical-align:middle; font-weight:bold; background-color:#F4F5F7;" | Frameworks
| rowspan="4" style="vertical-align:middle; font-weight:bold; background-color:#F4F5F7;" | Frameworks
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://source.android.com/ 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
Line 122: Line 122:
| style="vertical-align:middle; background-color:#deebff;" | Applied theory
| style="vertical-align:middle; background-color:#deebff;" | Applied theory
| 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;" | [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;" | Applied theory
| style="vertical-align:middle;" | Applied theory
| style="vertical-align:middle;" | Applied theory
| style="vertical-align:middle;" | Applied theory
|-
|-
| 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;" | [https://en.wikipedia.org/wiki/SIP_(software) SIP]
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/SIP_(software) SIP or any VoIP protocols]
| 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 132:
| style="vertical-align:middle;" | Applied theory
| style="vertical-align:middle;" | Applied theory
|-
|-
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/XMPP XMPP]
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/XMPP XMPP or any messaging protocols]
| 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 140:
| style="vertical-align:middle;" | Applied theory
| style="vertical-align:middle;" | Applied theory
|-
|-
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/ZRTP ZRTP]
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/ZRTP ZRTP/RTP]
| 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 188: Line 180:
| style="vertical-align:middle;" | Applied theory
| style="vertical-align:middle;" | Applied theory
|-
|-
| rowspan="10" style="vertical-align:middle; font-weight:bold; background-color:#F4F5F7;" | Programming languages
| rowspan="11" style="vertical-align:middle; font-weight:bold; background-color:#F4F5F7;" | Programming languages
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://www.gnu.org/software/bash/ 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
Line 222: Line 214:
|-
|-
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/HTML 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:#e3fcef;" | Practical application
| style="vertical-align:middle;" | Applied theory
| style="vertical-align:middle;" | Applied theory
| style="vertical-align:middle;" | Applied theory
|-
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Java Java]
| 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 318: Line 318:
| style="vertical-align:middle;" | Applied theory
| style="vertical-align:middle;" | Applied theory
|-
|-
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Linphone Linphone]
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://en.wikipedia.org/wiki/Linphone Linphone or any SPI SDK]
| 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 350: Line 350:
| style="vertical-align:middle;" | Applied theory
| style="vertical-align:middle;" | Applied theory
|-
|-
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://square.github.io/picasso/ Picasso]
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://square.github.io/picasso/ Picasso/Glide/Fresco/Imageloader]
| 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;" | [https://github.com/igniterealtime/Smack SMACK]
| style="background-color:#F4F5F7; color:#36B; text-align:left;" | [https://github.com/igniterealtime/Smack SMACK or any XMPP client library]
| 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

Revision as of 07:26, 10 May 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.

The developers are responsible for managing the complete software lifecycle – from analyzing requirements to creating prototypes, transforming wireframes into high-quality code, and implementing new features. They 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 means working alongside 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 developers are 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:


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 framework

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
Protocols SIP or any VoIP protocols Practical application Practical application Applied theory Applied theory Applied theory Applied theory
XMPP or any messaging protocols Practical application Practical application Applied theory Applied theory Applied theory Applied theory
ZRTP/RTP 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
Java 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 or any SPI SDK 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/Glide/Fresco/Imageloader 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 or any XMPP client library 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