Vincent - Développeur C

Ref : 131216C002
Photo de Vincent, Développeur C
Compétences
Expériences professionnelles
  • Expérience

    Juillet 2013 – Aujourd'hui
    Assistant Pedagogique en C/Systeme Unix.
    – Correction des eleves.
    – Encadrement des TPs.
    Stage Faculté de Versailles : 1er Juin 2012 - 31 Juillet 2012..
    Implémentation de l’Algorithme PEPA, mis en place par mon maître de
    stage.
    Projets
    Langage C++ : Skype-like.
    ASM : Réimplémenter une partie la librairie Standard C.
    Réimplémentation de module Unix : Script / Ftp / IRC / ls.

    Complétent de C.V : Projets réalisés.
    1. Au cours de la licence Informatique :
    • [1ère année] Pacman en C : Implémentation de l'algorithme du plus court chemin de
    Djikstra et de l'algorithme de réalisation de labyrinthe, utilisation d'une surcouche [fournie
    par la faculté] la librairie graphique SDL.
    • [1ème année] Snake en C : Utlisations des listes chainées, utilisation de la surcouche SDL.
    • [1ère année] Création d'un site web en HTML : Utilisation de l'HTML, du CSS pour faire la
    mise en forme et interaction via du MySQL avec une base de donnée que l'on gèrait.
    • [2ème année] Logiciel de gestion de gare en Java : Utilisation de la librarie graphique
    Swing, création d'Interface et d'autres notions de l'Orienté Objet.
    • [2ème année] Logiciel de traitement d'image type BMP. Implémentation des filtres de
    couleur, de la pixelisation, de la rotation sur l'image, agrandissement et retrecissement et
    d'autres fonctionnalités de base.
    • [3ème année] Réimplémention d'un Shell basique avec les commandes tel que ls / cd / cp
    etc...
    • [3ème année] Implémentation d'un logiciel de gestion d'avion de chasse en C++ : Gestion
    des moteurs, des vannes, et d'autres pièces techniques. Utlisation de la librairie graphique
    QT.
    • [3ème année] Implémentation d'un émulateur processeur RISC en C (Projet de groupe) :
    Une partie de parsing de langage assembleur [imposé par le sujet] en Bison/Flex et création
    d'un machine virtuelle pouvant émuler le comportement d'un processeur RISC en C. Gestion
    des breakpoints, visualisation de la mémoire et des registres en temps réel. Une interface
    graphique a été ajouté pour être plus user-friendly, elle a été réalisé grâce à Glade.
    • [Stage optionnel de 3ème année] : Implémentation de l'Algorithme PEPA (Algorithme
    developpe par mon maitre de stage et une collaboratrice Irlandaise). J'ai crée un logiciel
    permettant de parser un fichier contenant les informations utiles au fonctionnement de
    l'algorithme et par la suite, appliqué l'algorithme sur les informations recueillies. Utilisation
    de Flex / Bison en C++, implémentation d'arbre binaire, implémentation d'un algorithme
    inconnu.
    • Durant les cours de Théorie des graphes, exploration des algorithme de colorations de
    graphe, de parcours de graphe et preuve mathématique de leurs propriétés. Pendant les cours
    d'algorithmie, apprentissage des algorithme du plus court chemin, de parcours des arbres et
    des graphes, des algorithmes de flots. Les cours de Telecom ont permis l'apprentissage du
    calcul de la bande passante et d'autres calculs d'informations utiles.
    2. Au cours de la 3ème année spécial d'Epitech :
    • Implémentation de l'algorithme des 8 reines, de résolvations des sudokus et des carrés
    magiques.
    • Création d'un programme calculant si deux chaines de caractères sont identiques et combien
    de fois, elles sont identiques. Gestion de l'étoile comme pouvant être n'importe quel
    caractères.
    • Réimplémention de la fonctionnalité Shell ls. Lors de cette implémentation, recode des
    options sur les liens symboliques, la recursion, le tri par date et par nom.
    • Recode d'un shell simple en C : Implémentation de builts-in tel que cd / exit / setenv /
    unsetenv / env et éxecution des autres commandes. Gestion d'un prompt, de la mémoire.
    Apprentissage du fonctionnement des commandes basiques du shell.
    • Implémentation d'un programme de communication via des signaux en C. Apprentissage des
    signaux, comment les récupèrer et les gérer.
    • Implémentation d'un programme en C listant les entrées dans le terminal, permettant la
    navigation entre les différentes entrées, la suppression des entrées et l'affichage de celles
    selectionnées. Apprentissage de la librarie termcap et Ncurses, utilisation des listes
    doublement chainées.
    • Recode de la fonction printf en Cavec toutes les options, seule l'option de gestion de floats
    n'étaient pas inclues. Apprentissage de parsing et d'interprétation d'options.
    • Implémentation d'un Shell plus complexe en C : traitement les pipes, les redirections et avec
    les mêmes fonctionnalités que le premier Shell implémenté.Gestion des forks, des pipes
    avec des notions de parsing plus avancées.
    • Implémentation d'une calculatrice à nombres infinies en C. Gestion des opérations comme
    addition, soustraction, multiplication et la divisision. Pour le parsing des expressions,
    implémentation du Shutting Yard Algorithm.
    • Implémentation du jeu Korewar, parsing d'assembleur spécifié par le sujet et création d'une
    machine virtuelle émulant la partie entre les assembleurs qui s'affrontent.
    • Création d'un programme récupérant des informations d'un fichier puis les traitements avec
    une grammaire donnée par le sujet. Sujet donné lors d'un rush donc fait en 48h.
    • Recode de la fonction get_next_line.
    • Recode de la notion objet en C, les notions d'héritages n'ont pas été implémentées mais le
    reste est présent. Sujet donné lors d'un Rush donc fait en 48h.
    • Recode de la fonction malloc en C : Apprentissage de la gestion de mémoire avec
    break/sbreak. Implémentation d'un algorithme optimisé pour gérer au mieux la mémoire.
    • Recode de la fonctionnalité shell script en C: Apprentissage des pseudos-terminaux pour
    gérer la sauvegarde et d'autres choses dans le terminal principal.
    • Recode d'un logiciel de messagerie comme Thunderbird en C avec les protocoles de
    communication SMTP et POP3. Utilisation de la librarie graphique QT pour l'interface et
    gestion avec une base de données locales avec SQLLite. Sujet donné lors d'un Rush donc
    fait en 48h.
    • Recode de la fonctionnalité en Cnm / objdump du shell. Gestion du format Elf et des
    informations qu'il contient.
    • Implémentation du problème des philosophes en C. Apprentissage de la gestion des mutexs
    et des problèmes de concurrence.
    • Implémentation d'un jeu multi-processing en C : Apprentissage de l'utilisation des
    sémaphores, des ipcs. Implémentation d'une IA permettant le déplacement des processus.
    • Implémentation d'un programme permettant la gestion d'un serveur ftp en C. Gestion des
    commandes, cd / ls / envoie de fichier / reception de fichier.
    • Implémentation du logiciel IRC sans interface graphique en C. Gestion de clients et de
    serveur, gestion de channel et des commandes d'envoie de messages et de fichiers.
    • Implémentation d'un jeu réseau en C, le zappy. Gestion d'un monde avec des ressources, des
    joueurs. Gestion des commandes envoyes par les IA, donc programmation d'IA et interface
    graphique faite avec QT pour modéliser le monde.
    • Implémentation d'une machine virtuelle en C++ permettant de parser du langage assembleur
    [typé d'une certaine façon et de faire des calculs dessus. Des fonctionnalités ont été rajouté
    tel que le chargement de librarie dynamique au cours du programme.
    • Implémentation d'un Snake en C++ comprenant le chargement dynamique de la librairie
    graphique que l'on souhaitait utilisé. Les libraries graphiques utilisés sont OpenGL / QT et
    SDL.
    • Implémentation d'un logiciel émulant le comportement d'une pizzeria en C++. Reception
    recoit les commandes, les envoie par pipe nommées au cuisine qui les traite avec une
    ThreadPoll et renvoie les commandes faites à la reception. Gestion de thread, de pipes
    nommées et de fork.
    • Implémentation d'un logiciel Skype-like en C++. Création d'un protocole réseau pour
    communiquer. Gestion des utilisateurs, gestions des appels entre utilisateurs et des
    messages. Apprentissage de la VoIP et une continuité dans l'apprentissage du réseau.
    • Implémentation d'un jeu en temps réel en C++, le R-type. Gestion des bases pour jeu vidéos,
    de la gestion du temps et de l'espace.
    • Implémentation d'un module de Liste en Ocaml. Implémentation de toutes les
    fonctionnalités du module liste proposé par Ocaml.
    • Recode d'une calculatrice infinie en Ocaml. Utilisation de flex et bison en Ocaml pour
    parser l'expression mathématique et utilisation d'algorithme efficaces pour les opérations.
    Les opérateurs gérés sont : Addition, Soustraction, Division, Multiplication et la puissance.
    • Création d'un labyrinthe en Ocaml. Gestion de l'algorithme de création de labyrinthe en
    Ocaml et implémentation de l'algorithme du plus court chemin.
    • Apprentissage du LateX pour les documents à rendre tel que le protocoles, le cahier des
    charges et les spécifications de projets de C++.
    • Examens SQL pour vérifier l'apprentissage des notions SQL.
    • Examens Réseaux pour vérifier l'apprentissages des notions de réseaux tel que les classes, IP
    / TCP / UDP.
    • Implémentation des fonctions de base de la LibC en ASM tel que strlen, strcmp, strncmp,
    strpbrk, strindex, etc...
    • Fournie une aide sur l'application ICIPad : Mise à niveau de certaines fonctionnalités,
    création de nouvelles. Apprentissage du Javascript et de la technologie NodeJS.

Études et formations
  • Formation
    Formation d’expert en technologie de l’Informatique, Epitech 2012 -

    maintenant.
    Licence Informatique 2012.
    Faculté de Versailles, Paris Ile-de-France Ouest, France 2008 - 2012.
    Baccalauréat Scientifique, Brevet des Collèges.
    Compétence Techniques
    Avancées : C / C++ / C# / Orienté Objets / Algorithmies /
    Théorie des langages / Orienté Objet / Java / Unix / Ocaml
    Git / Mercurial / SVN / MySQL.
    Débutant : Lisp / PHP / HTML / CSS / Python / ASM

    Langues parlées
    Français / Anglais.
    Intérêts
    Informatique / Cuisine / Poker.
    Références
    Références disponibles sur demande.

D'autres freelances
Développeur C

Ces profils pourraient vous intéresser !
CV Analyste programmeur PHP
Mamadou

Analyste programmeur PHP

  • AMIENS
C PHP JAVA C++ SQL MYSQL Angular
Disponible
CV Ingénieur de développement JAVA
Meriem

Ingénieur de développement JAVA

  • VILLEJUIF
JAVA ORACLE SQL MONGODB UML PHP C PYTHON PHP LARAVEL ANDROID
Disponible
CV Ingénieur de développement C
Stéphane

Ingénieur de développement C

  • MONTROUGE
C C++ SQL PLUS SQL PL SQL ORACLE PRO C SCRIPT SHELL JAVA PYTHON Oracle Database 12c
Disponible
CV Etudiant
Colince

Etudiant

  • CALAIS
JAVA PYTHON C R REACT.JS DATA WEBDEV INFORMATICA SQL MONGODB
Disponible
CV Développeur
Aloïs

Développeur

  • NANCY
C++ SQL JAVASCRIPT REACT.JS C BASH NODE.JS PYTHON ASSEMBLEUR DOCKER
Disponible
CV Développeur FLUTTER
Hugo

Développeur FLUTTER

  • IVRY-SUR-SEINE
FLUTTER SQL C JAVA PYTHON C++ RUBY GIT
Disponible
CV Support utilisateurs
Houmedgaba

Support utilisateurs

  • PARIS
PHP WINDOWS PHP LARAVEL JAVA C++ SQL PL SQL MYSQL C C#
Disponible
CV Développeur JAVASCRIPT
Simon

Développeur JAVASCRIPT

  • PONT-DE-L'ARCHE
JAVASCRIPT PYTHON GO SELENIUM HTML5 C Rust
Disponible
CV Développeur Web - Python / Django
Aurélien

Développeur Web - Python / Django

  • ARCUEIL
PYTHON DJANGO HTML5 JIRA JAVASCRIPT CSS C C++
CV Développeur Jeux Vidéo
Loïc

Développeur Jeux Vidéo

  • BOUSSY-SAINT-ANTOINE
C# UNITY 3D .NET C++ C PYTHON
Disponible