Compétences

Lancez-Vous. C'est gratuit
ou s'inscrire avec votre adresse e-mail
Compétences par Mind Map: Compétences

1. Réalisation/Codage

1.1. Implémentation de solution

1.1.1. Comprendre les algorithmes

1.1.2. Suivre l'architecture

1.1.3. Étudier l'existant

1.1.4. Comprendre les objectifs

1.1.5. Comprendre l'approche de conception (cf conception)

1.1.6. Savoir identifier les oublies/incohérences

1.1.7. Savoir garder à l'esprit les limitations

1.2. Savoir faire du code clair

1.2.1. Indentation

1.2.2. Nomage pertinent

1.2.3. Aérer son code

1.2.3.1. Retour à la ligne

1.2.4. Structuré son code

1.2.4.1. Ne pas surchargé ses classes

1.2.4.2. Ne pas tout melangé dans une même classe

1.2.5. Savoir commenter

1.2.5.1. Suivre les conventions

1.2.5.2. Utiliser des termes appropriés

1.2.5.3. Faire abstraction de ses connaisances pour rester compréhensible à un developpeur extérieur au projet

1.2.5.4. Mettre en valeur les points importants

1.2.5.5. Savoir illustrer avec des exemples clairs

1.2.5.6. Utilisation des outils de génération de doc

1.3. Savoir débugger

1.3.1. Ecriture de test unitaire

1.3.2. Identifier le bug/ l'isoler

1.3.3. Utiliser un debugger

1.3.4. Evaluer les effets de bord à la correction

1.3.5. Savoir changer d'approche si on ne trouve pas

1.3.6. Réalisé des tests de performances

1.3.7. Créer des jeux de test

1.3.8. Remontée de bug

1.4. Connaitre le langage

1.4.1. Manipulation de données

1.4.1.1. Savoir manipuler les I/O

1.4.1.2. Savoir utiliser un SGBDR

1.4.2. Savoir chercher

1.4.2.1. La philosophie du langage

1.4.2.2. Ses points forts/faibles

1.4.2.3. L'utilisation que l'on en fait

1.4.3. Maitriser l'architecture du langage

1.4.4. Identifier les communautés ressources associés

1.5. Refactoring

1.5.1. Analyse de code

1.5.2. Esprit critique

2. Maintenance

2.1. Formation des utilisateurs

2.1.1. Ecriture du manuel

2.1.2. Présentation du logiciel

2.2. Correction de bug

2.3. Ajustement pour des cas particulier ignoré

2.4. Analyse des retours/satisfaction

2.5. Analyse des éléments à améliorer

2.6. Suivi du client

3. Livraison

3.1. Beta test

3.2. Créer un scénario de test

3.3. Construire un livrable facile à déployer

3.4. Documenter la livraison

3.4.1. Tâches réalisés

3.4.2. Tâches à faire ou pouvant être amélioré

3.4.3. Documenter le processus de déploiement

3.5. Savoir faire une synthèse du résultat

3.5.1. Difficultés rencontrés

3.5.2. Synthèse de la planification

3.6. Mise en production

3.7. Déploiement d'application

3.7.1. Script de déploiement

3.7.2. Rapport du déploiement

3.7.3. Adapter aux matériels réellement présents

3.7.4. Utilisation des outils de déploiement fournis

3.8. Démonstration

4. Gestion de projet

4.1. Tenue de planning

4.1.1. Planning des versions

4.1.2. Planning de réunion

4.1.3. Planning des livrables

4.1.4. Répartitions des taches

4.1.5. Respect du planning

4.1.6. Donner une estimation du temps de développement

4.1.7. Déterminer la durée des tâches

4.1.8. Anticiper les délais

4.1.9. Accorder son planning aux contraintes extérieures

4.2. Communication client

4.2.1. validation

4.2.2. Contact régulier

4.2.3. Savoir expliquer

4.3. Tenue de réunion

4.3.1. Préparation

4.3.2. Compte-rendu

4.3.3. Tenue de recette

4.3.4. Présentation

4.4. Préparer la conception

4.4.1. PAQ

4.4.2. Déterminer le niveau d'attente (urgence)

4.4.3. Déterminer l'importance qu'aura le développement

4.4.3.1. Travaille rapide (pour une démo préliminaire)

4.4.3.2. Travaille rigoureux (comme produit finale pour un client)

4.5. Autre : voir conception

5. Conception

5.1. Utiliser les outils architecture d'applications

5.1.1. Diagramme de séquences

5.1.2. Diagramme de classes

5.1.3. Diagramme de packages

5.1.4. Connaissances des patterns

5.1.5. Diagramme de base de données

5.2. Choix technologies

5.2.1. Connaissances des langages

5.2.2. Culture technologique (cf veille technologique)

5.2.3. Savoir interpréter des documents

5.2.3.1. Anglais

5.2.3.2. Lecture de diagramme

5.2.3.3. Déterminer la pertinence

5.2.4. Prise de décisions

5.2.5. Savoir comparer

5.2.6. Lister les outils d'aide au developement correspondant au langage

5.2.6.1. Environnement de développement

5.2.6.2. Colorateur syntaxique

5.2.6.3. Outils d'aide aux développements

5.2.6.3.1. Auto-complétion

5.2.6.3.2. Outil d'aide à la conception d'expression régulière

5.3. Spécifications fonctionnelles

5.3.1. Savoir rédiger à partir des besoins clients

5.3.2. Connaissances du domaine d'application

5.3.3. Recueil des besoins

5.3.4. Analyse des besoins

5.3.5. Analyse de l'existant

5.4. Réalisation d'algorithme/Regex

5.4.1. Identification et description d'un problème

5.4.2. Exploration des méthodologies utilisables

5.4.3. Conception d'algorithme/expressions régulières

5.4.4. Comparer et choisir entre plusieurs algorithmes/expressions

5.5. Documentation

5.5.1. Savoir documenter chaque étape de la conception

5.5.2. Faire valider la documentation par tous les intervenants

5.5.3. La mettre à jour

5.6. Spécifications techniques

5.6.1. Connaître les ressources disponibles

5.6.2. Maîtriser les délais

5.6.3. Réaliser un IHM

5.6.4. Cas d'utilisations

5.7. Préparer l'environnement de développement

5.7.1. Lister les outils nécessaires

5.7.2. Obtenir le matériel

5.7.3. Préparation d'un environnement sain standardisé (Machine virtuelle)

5.7.4. Choix des outils collaboratifs et paramétrages de ceux-ci

5.7.5. Sélectionner un debugger

5.7.6. Sélectionner l'outil de documentation

6. Actualités 'Veille' technologique

6.1. Formation

6.1.1. Choisir une formation qui correspond à son profil

6.1.2. S'y investir

6.2. Étude d'une technologie

6.2.1. Chercher des avis dans les deux sens

6.2.2. Ses points forts/faibles

6.2.3. L'utilisation que l'on en fait

6.2.4. L'objectif qui a conduit à son développement

6.2.5. Comparer au comparable (langages objets entre eux ...)

6.3. Recherche documentaire

6.3.1. Savoir synthétiser

6.3.2. Savoir faire une recherche

6.3.3. Connaissance de l'anglais

6.4. Étude d'algorithme

6.4.1. Mathématiques (preuve de fonctionnement)

6.4.2. Logique fondamentale

6.4.3. Logique applicative et contextuelle

6.4.4. pieges courants

6.5. Actualité

6.5.1. Créer suivre et améliorer une liste d'un ensemble de sources

6.5.2. Chercher l'actualité

6.5.3. Faire le tri

6.5.4. Approfondir les sujets à plus-value