J2EE signifie "Java 2 Enterprise Edition". J2EE est une édition de Java Framework. J2EE est la dernière version de Java crée par Sun pour le développement d'applications. J2EE contient notamment de nouvelles API telles que les servlets, les JSP, les EJB, javamail etc.
Dans un monde où l’informatique est devenue un élément indispensable dans le milieu professionnel, le métier de développeur web est en pleine expansion. La demande est surtout forte pour les développeurs Java notamment les freelances J2EE. Pour mener à bien les missions, plusieurs compétences sont nécessaires. Focus sur le métier de freelance J2EE.
Un freelance J2EE est un développeur Java indépendant qui propose ses compétences à des entreprises pour la création, le développement, la maintenance et l’amélioration des applications à usages professionnels.
Sa mission principale consiste donc à créer des services, des pages de sites web et des applications à destination des entreprises. Après développement, il peut être sollicité pour effectuer les mises à jour.
Dans la réalisation de sa mission, le développeur J2EE doit en premier lieu concevoir un cahier des charges, établi en collaboration avec le chef de projet et le client. Ce cahier permet d’analyser les besoins du projet et de mettre en avant l’aspect technique et fonctionnel.
Vient ensuite le développement du projet qui passe par la création de maquettes et de prototypes, en tenant compte des besoins et des contraintes. En dernier, le développeur assure la maintenance et rédige une documentation permettant à d’autres de réaliser la maintenance.
Il est à noter qu’un développeur J2EE peut être amené à travailler avec d’autres développeurs pour partager des ressources.
Pour mener à bien les missions, le développeur J2EE doit disposer de plusieurs compétences techniques. En premier lieu, il faut avoir une maîtrise parfaite du langage Java. Puisque la programmation est en J2EE, il faut impérativement maîtriser l’usage d’une plateforme dédiée à ce langage.
En second lieu, la maîtrise de certains Frameworks de J2EE est très demandée sur le marché. Il est donc recommandé de se familiariser avec différents Frameworks dont le Java Spring et ses modules.
Une excellente compréhension du fonctionnement des bases de données comme Oracle et MySQL sont aussi utiles. La maîtrise de la notion de code propre et des tests TDD est utile pour le développement des programmes.
En troisième lieu, pour que le projet réponde au besoin du client, il faut se familiariser avec la SSII et l’environnement de l’entreprise. En pratique, il faut connaître les services, le marché et les clients de l’entreprise.
Outre les compétences techniques, il faut aussi se munir de plusieurs qualités humaines comme la curiosité, l’adaptabilité, la réactivité, la force de proposition et la polyvalence.
Pour devenir un développeur J2EE, il faut disposer de solides connaissances dans le domaine informatique. Pour cela, il faut suivre une formation (Bac+2 à Bac+5) en école d’informatique ou une école d’ingénieur avec spécialité en informatique et télécoms.
L’objectif est d’obtenir un diplôme tel qu’un DUT ou BTS en informatique, une licence professionnelle en informatique, un Master en informatique ou Master techniques avec spécialisation en développement. À noter qu’un freelance peut aussi opter pour une formation intensive ou en autodidacte.
Auteurs, Compositeurs Musicaux – Equipe architecture
Architecte Logiciel – Responsable de l’usine de développement
- Responsable de l’intégration continue (Jenkins, Nexus, Gitlab,Sonar), Montée de versions de ces composants.
- Participation à la définition d’une nouvelle trajectoire du SI et mise en place d’un guide de développement décrivant les technologies utilisées, dont l’objectif est de disposer d’une architecture full service REST avec Angular du coté Front et Spring du coté Back tout en respectant la sécurité SACEM. Elaboration d’une application d’exemple multi-module respectant ce guide ;
- Support technique aux équipes de Développement Projet dans le cadre de la mise en place de l’architecture associée ;
- Support technique aux équipes Projet dans la résolution d’incidents ;
- Supervision de la migration des projets historiques vers l’usine de développement et mise en œuvre d’une culture de l’intégration continue Devops
- Participation à la mise en place de l’API management WSO2, tenant compte de l’architecture de SACEM ;
- Ecriture de jobs d’export/import d’APIs et d’applications WSO2 en utilisant les pipelines Jenkins et Ansible ;
- Participation à l’audit du premier projet développé en interne en utilisant Spark à SACEM ;
- Etude de faisabilité du déploiement des applications de SACEM en Docker. L’objectif étant de réaliser, à terme, leur migration sur le cloud.
- Conception et réalisation d'un workflow afin de construire et de déployer des livrables Salesforce depuis les sources Git
- Réalisation d’un POC pour déployer l’application de test Sacem (WAR sur Tomcat) avec Docker sur AWS
- Maintenance du framework historique Sacem.
Dans le cadre du projet PBLink :
- Administration et gestion des serveurs Websphere d’intégration, de recette et de préproduction avec 10 applications ;
- Optimisation des temps de traitement de l'automate et plus spécifiquement des générations des jobs : Profiling avec Yourkit et optimisation de 6 minutes 30 à 2 minutes ;
- Conception et réalisation d'un système de queue permettant de traiter l'ensemble des jobs de PBLink par type (Spring JMS avec des selectors : 70000 jobs par jour en moyenne) ;
- Etude de Elastic Search en mode prototype et indexation de 650 000 documents, gestion des TTL (POC) ;
- Migration de l'ensemble des dix applications de l'équipe de Websphere 7 en Websphere 8.5 , gestion des problèmes de conflits de librairies
- Conception et réalisation d'un Framework de page liste en Back office permettant de gérer l'ensemble des pages listes de l'application (une vingtaine), support aux développeurs du Portugal utilisant ce Framework en Spring boot 1.4 et Spring 4.3.2 ;
- Optimisation des performances du framework page liste avec yourkit.
- Migration à chaque release du socle technique vers les versions les plus récentes ;
- Réécriture du moteur d’exécution des rapports Jasper sur le serveur afin de permettre l’exécution des tests par les développeurs ;
- Ecriture de jobs Jenkins pour l’intégration.
- Développement d’un POC pour étudier la faisabilité et l’intérêt d’Amélia par le Comex BP2S, mise en place des services REST manquant sur Pblink et développement d’un Client en Angular4 pour faire des tests sur ces services. Lors du POC : Fonctionnement en mode SCRUM avec Product owner et le métier
Dans le cadre de projets J2EE, dans la branche Outil Décisionnel :
- Migration d’une partie des projets vers les standards JEE conformément aux best practices, suite à l’absorption de l’entité par la DSI, afin que les applications soient supportées par Weblogic ;
- Elaboration d'une documentation expliquant comment migrer les projets restants vers cette architecture ;
- Mise en place de Quartz, i.e. Gestionnaire de batch, sur le projet principal et adaptation aux contrainte du projet. Mise en œuvre d’une interface graphique pour gérer les batchs ;
- Gestion de l'authentification via les standards J2EE ;
- Réalisation d’une application d’administration de flux de donnée à destination des administrateurs Pays en Struts1/ Spring/ Hibernate3 ;
- Mise en place d'Hudson, pour l'intégration continue ;
- Définition de l’architecture pour la refonte d’une partie de l’application OTIS, allant permettre de faire des relances commerciales automati...