Stéphane Doyon

Contactez-moi! (s.doyon@videotron.ca)

English Version Version PDF

Formation | Compétences | Réalisations | Emplois

Formation académique

Expérience de travail

Google, depuis 2008.
Maximum Throughput, 2002 à 2007
  • Chef d'équipe pour le groupe "Systèmes" depuis février 2007.
  • Optimisation, calibration, intégration de fonctionalités et résolution de "bugs" dans le noyau (kernel) linux utilisé à l'intérieur d'une solution d'entrée/sortie vidéo et "network attached storage", servant dans le domaine de la production de films.
  • Développement et intégration de "patches" expérimentales en vue d'améliorer le débit, l'extensibilité ou la stabilité, dans le serveur NFS, des portions de systèmes de fichiers et gestion mémoire, le "block elevator", gestion de volumes, pilotes SCSI, pilotes de cartes réseau et certains aspects de la couche réseau. Expérience avec une plate-forme multi-processeurs.
  • Portage de pilotes ou fonctionalités vers différentes versions du noyau.
  • Réalisation d'une application d'enregistrement vidéo à haut débit recevant des images par InfiniBand.
  • Développement d'un outil de transfert de fichiers haut débit et "multi-thread" pour la migration de données.
  • Développement d'outils permettant de reproduire différents motifs d'entrées/sorties, de mesurer le débit et de récolter des statistiques systèmes. Conception d'un système de test de débit capable de gérer plusieurs machines à la fois. Langages utilisés: python, C, bash and perl.
  • Expérience de développement de "build scripts" nécessaires à la compilation d'une distribution maison. En gérant les "patches" pour divers utilitaires système et pilotes, j'ai acquis de l'expérience avec les fichiers spec RPM. Expérience d'administration système.
VIPSwitch (groupe Software et équipe Architecture), 2000 à 2002
Développement d'un commutateur/routeur visant les réseaux métropolitains, basé sur une architecture matérielle dédiée. Élaboration des spécifications définissant le comportement de chaque composante matérielle par rapport à la retransmission de paquets en fonction de plusieurs protocoles (MPLS, IPv4, IPv6, ARP, ethernet brigding, IEEE 802.1Q). Élaboration des protocoles permettant de configurer les composantes matérielles et de rediriger les cas d'exception des protocoles vers la portion logicielle. Réalisation d'un lien de communication entre le processeur et le matériel, d'une interface réseau virtuelle pour le processeur, ainsi que des mécanismes logiciels supportant le protocole ARP (incluant des modifications aux fonctions réseau du noyau Linux). Expérience de développement sur une plate-forme embarquée lors de mon travail sur un autre produit: un routeur pour "wide area networks".
Gemplus Canada (groupe carte), 1999 à 2000
Conception et développement sur carte à puce JavaCard. Réalisation d'une "applet" cryptographique permettant de stocker des clés privées sur la carte et de s'en servir pour apposer des signatures électroniques ou déchiffrer des messages. Inter-opérabilités avec d'autres cartes; respect de certains standards cryptographiques. Optimisation de l'espace requis par l'applet. Travail lié à la compilation d'applets, à la communication avec la carte, et au débuggage d'une nouvelle carte. Travail lié à plusieurs standards du monde des cartes à puces. Notions de cryptographie: cryptographie à clé publique et cryptographie symétrique, signatures électroniques, message digests, message authentication codes.
VisuAide (groupe R&D), 1997
Travail sur un magnétophone numérique et organisateur personnel destiné à des usagers aveugles. L'interface usager était entièrement réalisée à travers la seule fonction de sortie disponible sur cet appareil: le son et les messages préenregistrés. Ajout de diverses nouvelles fonctions dont le support pour un format de disquettes étendu (non-standard) et améliorations à l'interface usager. Programmation système dans un environnement embarqué temps réel, avec des contraintes d'espace importantes.
Loto-Québec (groupe architecture et recherche technologie), été 1996
Conception et test d'un algorithme démontrant la faisabilité d'une fonction nécessaire à l'implantation d'un nouveau jeu (fortes contraintes sur le temps d'exécution). Simulation pour prévoir le nombre de gagnants pour une variante de ce jeu.
Projet Safari (systèmes tutoriels intelligents, Université de Montréal), été 1995
Implantation à l'aide de programmes CGI d'un questionnaire web interactif (avec suivi du cheminement par usager). Travail d'analyse lié aux stratégies tutorielles.
Centre de Recherche sur le Transport (Université de Montréal), été 1994
Projet de recherche opérationnelle visant à modéliser des files d'attente de voitures à un feu de circulation.

Réalisations et projets

Compétences

Anglais et français parlé et écrit.

Programmation:

Système d'exploitation Linux:

Divers:

Loisirs: ébénisterie, canot-camping, musique.


Formation | Compétences | Réalisations | Emplois

Contactez-moi! (s.doyon@videotron.ca)

English Version Version PDF