Par définition et dans son sens plus large, Android est un système d’exploitation dédié aux smartphones, tablettes et bien d’autres appareils technologiques comme certaines voitures. Il s’agit d’un OS notamment conçu pour faciliter la communication entre un utilisateur et son appareil. Lancé en 2003, Android est maintenant l’un des systèmes d’exploitation pour mobiles les plus prisés au monde.
Pour revenir à l’origine de ce système d’exploitation, il faut dire que la société originelle a choisi ce nom en se basant sur le concept Androïde qui est en quelque sorte un robot à l’apparence humaine. Aussi, à l’origine, Android était l’un des logiciels libres basés sur un noyau Linux.
Android a alors été racheté par Google en 2005. Depuis, Google n’a jamais cessé de travailler sur ce système d’exploitation.
Dans un monde de plus en plus dominé par la technologie mobile, l’intérêt pour le métier de développeur Android ne cesse d’accroître, quel que soit le secteur. Ce n’est guère surprenant donc si la grande majorité des informaticiens s’intéressent sur le développement.
Pour le métier de développeur Android en particulier, il se révèle très prometteur puisque de nombreuses entreprises, petites, moyennes ou grandes ont souhaitent développer une application mobile.
Par ailleurs, les missions d’un développeur Android se résument à la conception d’une application sur laquelle un utilisateur peut tirer les meilleures parties.
Cette application doit être assez performante pour que l’utilisateur puisse faire remonter de manière fluide et efficace toutes les informations contenues dans un appareil mobile vers le top management.
La rigueur doit être une qualité principale du développeur Android. Concernant ses compétences techniques, celui-ci doit maîtriser à la perfection le langage JAVA.
Aussi, le développeur Android doit être capable de développer une application à partir d’un cahier de charge, être en mesure de designer des applications et des interfaces, etc.
Le développement Android est un domaine qui est de plus en plus apprécié de nombreux développeurs, car son potentiel est illimité. Le développement d'Android a modifié la façon dont l'on surfe en ligne, vérifie les mises à jour sur les réseaux sociaux et joue même à des jeux en ligne.
Les applications Android sont à même d'émouvoir les utilisateurs et de marquer les esprits. C'est pourquoi de plus en plus de jeunes souhaitent devenir développeur Android freelance. Il existe plusieurs raisons pour lesquelles vous devriez envisager de vous lancer dans l'univers du freelance, notamment en tant que développeur mobile Android.
Pour certains d'entre vous, c'est le revenu additionnel, tandis que pour d'autres, c'est la promesse de travailler à domicile, ou encore la passion. Quoi qu'il en soit, le développement Android est une option de carrière viable et confortable pouvant vous rapporter de l'argent et de la crédibilité. Il mène finalement à ce que la majorité d'entre vous désirent : la liberté financière.
Un développeur mobile Android freelance est chargé de développer de nouvelles solutions et d'améliorer les solutions existantes en utilisant diverses technologies. Outre le développement et la mise à niveau, il y a d'autres tâches qu'un développeur d'applications doit entreprendre, dont certaines incluent :
Les développeurs Android doivent être habiles. Ils doivent avoir des compétences essentielles pour pouvoir proposer des solutions personnalisées. Voici quelques-unes des compétences requises :
N'oubliez surtout pas que vous devez pouvoir développer une solution mobile Android iOS de tous types en respectant les cadres et les spécifications requises pour l'application mobile. Faire des tests d'assurance qualité et assurer les diverses étapes de publication sur l'AppStore et le Google Play Store.
Dans le cadre d'une application web, vous devez vous assurer du caractère React native de cette dernière. Il existe plusieurs solutions ou ressources payantes ou gratuites pour vous aider à développer les compétences requises à l'apprentissage du développement Android.
Il existe plusieurs façons de devenir un développeur d'applications pour les systèmes Android. Vous devez envisager d'apprendre certaines astuces de la profession et continuer à vous tenir au courant de toute évolution liée de près ou de loin à votre domaine.
Vous pouvez par exemple apprendre à doter votre application de tous les outils et fonctionnalités requises pour assurer son succès sur les diverses plateformes qui existent.
CONTEXTE MISSION :
Domaine du retail, omnicanalité des points de vente destinée aux marques, aux vendeurs connectés et aux e-commerçants.
Objectif : Contribution aux applications de prise de commande, de paiement, d’encaissement, de fidélité
REALISATIONS :
ÉQUIPE DE 11 PERSONNES
• Développement en méthodologie Agile SCRUM :
o Backlog
o Sprint
o Daily meeting
o Poker Planning
o Retrospective
• Définition du planning chaque début du sprint : cadrage et planification de l’itération et jalon
• Maintenance et évolution du projet avec l'IDE Android Studio
• Développement des tests unitaires et fonctionnels pour chaque US
• Participation à la préparation de la démo chaque fin de sprint
• Revue de code chaque fin de ticket (US)
• Utilisation de Wiki pour la documentation.
• Utilisation de GitLab comme outil de versionning
• Utilisation de JIRA pour le suivi des travaux collaboratifs
• Utilisation de GitLab CI pour l’intégration continue (pipeline build, test, quality, deploy)
CONTEXTE MISSION :
Régie Autonome des Transports Parisiens
Objectif : Renforcer l’équipe de développement pour la mise en place et le développement d’une nouvelle application Android RATP pour le transport public.
REALISATIONS :
ÉQUIPE DE 8 PERSONNES
• Développement d’une application Android
• Expression des besoins
• Définition du cahier des charges
• Définition des spécifications techniques et fonctionnelles
• Mise en place de la méthodologie Agile SCRUM :
o Backlog
o Sprint
o Daily meeting
o Poker Planning
o Retrospective
• Définition du planning chaque début du sprint :
o Cadrage et planification de l’itération et jalon
• Validation des maquettes avec UserStudio
• Création du projet avec l'IDE Android Studio et
• Mise en place de l’architecture du projet :
o Mise en place des Jobs Jenkins
o Firebase (notifications, messaging, Analytics, TestLab, CloudFirestore, RealtimeDatabase, CrashReporting)
o ButterKnife (injection des vue)
o Dagger (injection des dépendances)
o LeakCanary (Détection des fuite mémoires)
o ROOM (couche d’abstraction sur SQLite)
o UIAutomator (test android)
• Recherche d’itinéraire embarqué (RI Offline)
• Intégration de MapBox
o Utilisation de la cartographie Mapbox offline
• Test de l’application à la fin de chaque itération (US)
• Préparation de la démo chaque fin de sprint
• Correction des anomalies dégagées après la phase de test
• Revue de code chaque fin d’itération (US)
• Utilisation de Wiki pour la documentation.
• Utilisation de GITLab comme outil de versionning
• Utilisation de Redmine pour le suivi des travaux collaboratifs
Utilisation de Artifactory pour le stockage des dépendances
CONTEXTE MISSION :
Entreprise de Services Numériques
Objectif : Développement d’une application mobile Android pour le secteur du service aux automobilistes pour le compte d'une agence Web.
REALISATIONS :
Équipe de 2 personnes
• Encadrement d'un développeur Android Junior
• Développement d’une application Android
• Expression des besoins
• Définition du cahier des charges
• Définition des spécifications techniques et fonctionnelles
• Conception UML :
o Diagramme de classe
o Diagramme de cas d'utilisation
o Diagramme de déploiement
• Diagramme de GANT
• Mise en place de la méthodologie Agile SCRUM :
o Backlog
o Sprint
o Daily meeting
• Définition du planning :
o Cadrage et planification des itérations et jalons
• Maquettage de la solution avec FluidUI qui permet de voir une version réelle des interfaces graphiques
• Création du projet avec l'IDE Android Studio et développement de toutes les interfaces mobiles,
• Implémentation d’une liste d’Api :
o API Réseaux sociaux (Facebook, Twitter et Google Plus)
o Firebase (notifications, messaging)
o Badger (notification sur icône APP)
o Notification Manager
o Picasso (Librairie de gestion d'image)
• Communication entre les utilisateurs par l’intermédiaire de système de Chat :
o Création d'une interface de chat sous Android Studio, langage XML
• Développement de Web Services REST (JSON)
o Développement des fichiers PHP7 pour assurer la communication entre la BDD SQLi et Android (Requêtes SQL)
• Préparation des recettes de test pour les utilisateurs pilotes (Excel)
• Test de l’ap...