Présentation du langage

Le Java s'est défini comme une référence dans le monde du développement logiciel. Adoptant le concept « une fois codé, exécuté sur n'importe quelle plateforme », ce langage garantit une portabilité et une robustesse remarquables. Ce positionnement en fait le choix favori pour la création d'applications, en particulier pour l'univers Android. La force de Java est due à son écosystème riche mais également grâce à une communauté très active et une documentation très complète, cela permet d'exploiter pleinement les capacités du langage Java, que ce soit pour la mise en place de microservices ou le développement de systèmes embarqués. J'ai pu également apprendre à utiliser le MVC et le MVVM afin d'avoir une séparation nette des responsabilités dans les applications. J'ai également utilisé des environnements comme Eclipse et IntelliJ IDEA mais aussi Android studio pour le développement mobile, ce qui m'a permis d'optimiser le cycle de développement, ce qui témoigne de ma maîtrise technique approfondie.

Dans le cadre professionnel, Java reste un allié de taille, soutenu par des outils tels que le framework Spring pour la partie serveur et le SDK Android pour le mobile. Des entreprises de renom comme Google, Netflix ou LinkedIn privilégient Java pour élaborer des solutions fiables, sécurisées et évolutives. Son approche stricte de la gestion de la mémoire, son typage statique et sa nature orientée objet lui confèrent une fiabilité indispensable, surtout pour des projets nécessitant une maintenance sur le long terme et une adaptation constante aux exigences des utilisateurs. Mes projets reposent sur une intégration rigoureuse de ces outils, avec des configurations fines de Spring Boot, l'usage de RESTful APIs, et le déploiement continu via des pipelines CI/CD, garantissant la pérennité et la performance des applications développées.

Mon expérience vécue

Durant ma formation à l'ESIEA, j'ai eu l'opportunité de m'impliquer dans divers projets novateurs. Parmi eux, le développement de l'application mobile PizzAPK occupe une place particulière. Ce projet consistait à créer une solution Android dédiée à une chaîne de restaurants située en périphérie de Nîmes, permettant aux clients de commander et d'accéder à divers services sur place. Lors de la réalisation de cette application le Java m'a permis de réaliser une interface intuitive et réactive pour les utilisateurs facilitant ainsi leurs navigations dans l'application. L'application PizzAPK possède des fonctionnalités simples comme l'affichage de menus, le paiement en ligne, le suivi de commande tout en ayant une simplicité d'utilisation et une très bonne efficacité d'utilisation pour les utilisateurs. J'ai également approfondi ma pratique du langage Java en abordant différentes problématiques réelles telles que la gestion de l'asynchrone ou encore l'optimisation de la réactivité avec des threads dédiés, ce qui démontre mon niveau d'expertise.

Cette application m'a permis d'apprendre à réaliser des applications mobiles en Java. Mais aussi cela m'a permis de pouvoir collaborer avec des professionnels de la restauration et donc de renforcer ma capacité à savoir travailler en équipe tout en m'adaptant aux différents besoins qu'ils avaient mais aussi en respectant les différentes contraintes techniques de temps par exemple auxquelles j'ai pu faire face. Les défis rencontrés lors de la conception de PizzAPK, tels que l'implémentation du module de paiement et la synchronisation des données en temps réel entre les points de vente, ont été des opportunités pour appliquer des solutions techniques pointues et renforcer mon expertise par la pratique.

Mon niveau de compétence

Pour moi aujourd'hui, le java est l'outil de travail que j'utilise le plus tous les jours pour le développement. Son utilisation dans des projets concrets comme PizzAPK m'a permis d'acquérir une autonomie très solide dans la conception et l'utilisation du langage que ce soit dans la réalisation d'applications mobile android comme web. Même si je continue d'explorer les subtilités du langage et d'enrichir mes compétences, l'expérience que j'ai pu acquérir m'a permis de voir que ce langage est très puissant et flexible mais aussi me permet de relever de nouveaux défis complexes dans le développement de logiciel moderne. Mon quotidien professionnel inclut la mise en œuvre de méthodologies Agile et l'utilisation d'outils de versioning et de collaboration (Git, GitHub, Bitbucket) qui viennent attester de ma capacité à mener des projets complexes du concept à la livraison, avec un suivi technique détaillé et des preuves de réalisation concrètes.

Pour les personnes souhaitant apprendre le langage Java, je conseille d'abord de débuter avec par exemple la réalisation d'une application mobile Java simple afin de voir les bases en utilisant Android studio tout en utilisant les ressources disponibles en ligne comme les documentations ou les forums ce qui permet de voir les bases plus efficacement et de voir les différents aspects beaucoup plus avancés du Java mobile. Il est aussi important de réaliser des projets personnels ou encore collaboratifs ce qui permet de se perfectionner, de se remettre en question afin d'améliorer ses compétences dans l'utilisation du langage. Mon parcours est enrichi par des certifications et une autoformation continue via des plateformes telles que Udemy, éléments qui témoignent de mon engagement à rester à la pointe des avancées techniques dans l'écosystème Java.

Pour ma part je suis déterminé à poursuivre mon innovation dans le développement Java, que ce soit en mobile ou en web, ainsi qu'à contribuer à terme à la création de nouvelles solutions toujours plus performantes et adaptées aux différents besoins des utilisateurs. Chaque projet, tel que PizzAPK, est une preuve concrète de ma capacité à intégrer des solutions techniques avancées, à adapter rapidement les meilleures pratiques du marché et à produire des résultats mesurables et optimisés pour des environnements réels.