Présentation de mon portfolio
Un panorama de mes compétences et des connaissances, savoirs faire, savoirs être liés
Mes différentes expériences professionnelles dans le cadre de mes alternances, stages, projets et jobs
Ma formation initiale à In'Tech INFO et les formations suivies dans le cadre de mes expériences professionnelles
C'est là que je me présente

Compétences Ingénieur d'étude et développement

Dans cette section je vous décris mes compétences au sujet du métier d'ingénieur d'étude et développement. Même si je n'aspire pas à évoluer dans un champ purement technique, j'ai, de par mes études et mes expériences professionnelles, développé plusieurs compétences requises pour ce métier.


Analyse fonctionnelle

Voir la section métier Analyste fonctionnel


Ergonomie et intégration IHM

Voir la section métier Web designer


Au cours de mes études et de mes différents stages, j'ai pour grande part pratiqué les activités purement techniques d'un ingénieur d'études et développement.

Aussi, dans le cadre de mes projets, mes activités d'un point de vue technique ont été les suivantes :

  • Identifier les caractéristiques techniques de l'application et les modéliser ;
  • Rédiger les spécifications techniques ;
  • Effectuer du prototypage ;
  • Coder, tester dans le langage retenu ;
  • Respecter les règles méthodologiques de programmation et d'assurance qualité d'u projet ;
  • Elaborer des jeux d'essais ;
  • Rédiger la documentation ;
  • Faire de la maintenance corrective et évolutive.

Dans la dernière section de cette page, je vous présente également mes connaissances et savoirs faire au sujet de la gestion de projet.


Conception et développement

Mes études à In'Tech INFO m'ont apportées un bagage technique tout à la fois diversifié et approfondi.
La méthodologie de programmation était largement mise en avant. Nous avons en effet eu des sessions approfondies sur des thèmes tels que l'ingénierie logicielle, les design pattern ou l'algorithmie.
La pratique du développement était également au coeur de ces études abordant la pédagogie par l'intermédiaire du projet.

Langages

Suivant une série d'ateliers et de projets, j'ai acquis des connaissances et savoirs faire dans plusieurs langages :

  • Au premier semestre le langage C avec le projet EasyLoan
  • Au second semestre le PHP et le Sql avec le projet Troc Ros
  • Au troisième semestre la programmation objet, le Java et le XML avec Le Garde Manger
  • Au quatrième semestre l'Actionscript, la norme RDF, le Java avec le projet CISAC
  • Au cinquième semestre l'Actionscript, le PHP, le Sql et l'AJAX avec le projet Kairos
  • Au sixième semestre le Sql et SqlServer durant une formation pour la certification Microsoft
  • Au septième semestre le C# et le framework .NET durant une formation pour la certification Microsoft
    et le projet D-Form
  • Au huitième semestre l'ASP.NET et le C# et le Sql avec le projet savourous
  • Au neuvième semestre les frameworks J2EE Spring, Hibernate et JSF avec le projet d'identification SSO

Au cours de mes 5 semestres de stage, j'ai approfondi mes connaissances et savoirs faire sur :

  • le PHP, le Sql, l'Actionscript, l'AJAX chez Vaziva Conseil et Rezotech et lors de divers autres expériences en free
  • le Java et ses frameworks Struts, Spring et Hibernate chez Sopra Group

Algorithmie

Un algorithme est un moyen pour un humain de présenter la résolution par calcul d’un problème à une autre personne physique (un autre humain) ou virtuelle (un calculateur).

J'ai étudié et mis en oeuvre les algorithmes les plus utiles (tris et graphes) principalement lors d'ateliers en C mais également en Java.
Etudiée lors de mes premiers pas en développement, cette discipline m'a permis de développer mon esprit d'analyse et a contribué à ma compréhension de l'optimisation de code.

Conception

Conception objet

Après avoir abordé le langage C puis le PHP sous sa forme procédurale, j'ai été initiée à la programmation orientée objet par l'apprentissage du langage Java.

J'ai mis en pratique les concepts de base (encapsulation, héritage, interface etc.) lors des projets Le Garde Manger et le projet CISAC, avant d'étudier les différents patterns du Gang of Four.

Tous les projets ayant suivi cette initiation ont été développés à partir d'une conception objet.

Design patterns

Les patrons de conception décrivent des solutions standards pour répondre à des problèmes d'architecture et de conception des logiciels. À la différence d'un algorithme qui s'attache à décrire d'une manière formelle comment résoudre un problème particulier, les patrons de conception décrivent des procédés de conception généraux. On peut considérer un patron de conception comme une formalisation de bonnes pratiques

Le premier patron de conception utilisé dans un cas pratique a été le Modèle-Vue-Controleur. Par la suite lors de mon premier stage, j'ai été amenée à l'utiliser de façon systématique. Remarque : Le framework utilisait également d'autres patterns tels que la fabrique.

J'ai étudié les 23 patterns du GoF durant une session comprenant cours et ateliers qui s'est terminée par une mise en pratique réelle sur savourous.

Lors de mon dernier stage chez Sopra, j'ai découvert Spring et son inversion de contrôle. C'est durant ce stage que j'ai suivi à In'Tech INFO une session de formation sur les bonnes pratiques Spring, Hibernate et JSF (cf. projet Login SSO), où l'inversion de contrôle et l'injection de dépendances ont été largement commentés et précisément expliqués.

Langage de modélisation UML

UML (en anglais Unified Modeling Language, « langage de modélisation unifié ») est un langage graphique de modélisation des données et des traitements.

Pour chacun des projets industriels et au cours de mes différentes expériences en entreprise j'ai pu réaliser différents diagrammes :

  • Diagramme de classes : représente les classes intervenant dans le système
  • Diagramme d'objets : sert à représenter les instances de classes (objets) utilisées dans le système
  • Diagramme de composants : permet de montrer les composants du système d'un point de vue physique, tels qu'ils sont mis en œuvre (fichiers, bibliothèques, bases de données...)
  • Diagramme des cas d'utilisation (use-cases) : permet d'identifier les possibilités d'interaction entre le système et les acteurs (intervenants extérieurs au système), c'est-à-dire toutes les fonctionnalités que doit fournir le système
  • Diagramme états-transitions : permet de décrire sous forme de machine à états finis le comportement du système ou de ses composants
  • Diagramme d'activité : permet de décrire sous forme de flux ou d'enchaînement d'activités le comportement du système ou de ses composants
  • Diagramme de séquence : représentation séquentielle du déroulement des traitements et des interactions entre les éléments du système et/ou de ses acteurs
  • Diagramme de communication : représentation simplifiée d'un diagramme de séquence se concentrant sur les échanges de messages entre les objets
  • Diagramme global d'interaction : permet de décrire les enchaînements possibles entre les scénarios préalablement identifiés sous forme de diagrammes de séquences (variante du diagramme d'activité)

Gestion de projet

Dès le premier semestre de mes études à In'Tech INFO, j'ai été sensibilisée au travail en mode projet.
Nous avons étudié lors de cours magistraux les différentes approches et méthodes de la gestion de projet. Aussi, à travers 5 projets industriels, 5 projets de réalisation personnelle et différents projets fonctionnels et techniques, nous avons été confrontés à la gestion et au management de projet. Afin de nous guider et de nous présenter les différents outils, des ateliers pratiques nous ont été dispensés. Tout au long de mes études j'ai travaillé sur différents documents types (cahiers des charges, spécifications fonctionnelles, techniques, plan d'assurance qualité etc.) que j'ai pu au fur et à mesure adapter en fonction des demandes des projets. J'ai également du pratiquer les logiciels de bureautique tels que Word, Excel, Power Point, Project ou Mind Manager.
Ces différents cours et projets m'ont permis de me constituer une large boite à outils de chef de projet. Ils m'ont également permis par la suite, lors de mes stages, de comprendre l'environnement dans lequel j'étais et d'avoir les bons reflexes quant à mes travaux.

Lors de ces cours nous avons également abordé les différentes approches et méthodes de gestion de projet spécifiques à l'ingénierie logicielle telles que la méthode AGILE (SCRUM, extreme programming...)

Un dernier module, au 9ème semestre, alors que nous avions une vision claire de cette discipline (cela faisait bientôt deux ans que nous travaillions en entreprise), nous a formé pour passer la certification CAPM (Certified Associate in Project Management - version étudiante de la certification du PMI). Pour cela, nous avons étudié chapitre par chapitre le PMBOK (Project Management Body of Knowledge, le guide du Project Management Institute définissant les champs de connaissances couvrant la gestion de projet) avec un intervenant fortement expérimenté en gestion de projet qui nous a détaillé chaque situation et processus par le biais de ses multiples expériences au sein de grands projets.
Je me suis fortement intéressée à cette formation qui, je pense, m'a apporté l'ensemble des connaissances qui me permettront à l'avenir de rapidement évoluer dans ce domaine.

Un autre point que je pense important pour cette discipline est le management des personnes. Mes études m'ont également permis d'acquérir les bases du management. en effet, nous avons assisté à des sessions de formation pleinement interactives abordant les différentes approches amenant à un meilleur management d'équipe, de la PLM en passant par la Process Communication ou l'état du moi.

Enfin, des sessions de communication orale et écrite m'ont donné les clefs pour faire évoluer mes compétences dans ces deux domaines.

contact : sharivaree@hotmail.com