Les technologies EPITALE

par Fuizziy 19 / 05 / 2019

Concerne :

  • Le développement
  • Les systèmes du serveur

RÉSUMÉ :

Notre serveur se distingue par son choix ambitieux de technologies informatiques. Trois maîtres-mots : sécurité, performance, réactivité !

AUTEUR :

Resp Dev Rédac Fuizziy

Développeur Web/IG, Responsable Administratif et Qualité. Je suis entrepreneur, étudiant et prof.assistant en école d'ingénieurs

Si tu te retrouves sur cet article, c’est que tu es intéressé par les technologies qu’EPITALE utilise ou compte utiliser. Ça tombe bien, je ne les donnerai pas ! “Pourquoi”, me dirait-t-on ? Simplement parce que nous ne souhaitons pas donner nos idées trop tôt. En revanche, nous pouvons vous faire un inventaire abordable, que ce soit pour les initiés à l’informatique comme pour les amateurs :

Le backend d’EPITALE est fondé sur trois piliers simples.
D’abord, la sécurité :

  • Vos mots de passe sont chiffrés par l’intermédiaire d’un des plus puissants algorithmes à l’heure actuelle “sha256”. Nous utilisons une version de cet algorithme encore plus puissante. Il nous est impossible, même si nous le souhaitions, d’obtenir vos informations en claires.
  • Les ports de nos machines sont protégés, et l’identification à la machine ne peut se faire que par le biais d’une connexion SSH. En outre, seuls Seb et moi pouvons nous connecter, depuis nos machines locales, au serveur. À moins que quelqu’un ne vole la clé de nos appartements respectifs, aucune attaque n’est humainement possible.
  • L’infrastructure en elle-même est hébergée chez OVH. Nous insistons sur “OVH” : il ne s’agit pas de sous-filiales low-price comme SoYouStart ou Kimsufi. Ces machines de qualité permettent une mitigation permanente, et une plus grande fiabilité de services. Nous y avons paramétré des firewalls basiques (mais suffisants) pour le moment. Nous redoublerons d’efforts à la sortie.
  • Nous utilisons un des langages SQL qui répond le mieux au standard, et assure la cohérence des données en effectuant un double check à chaque opération sur les BDD. Ce n’est ni MySQL, ni NoSQL, ni MongoDB ou je ne sais quoi. Notre implémentation assure des performances optimales comparées aux autres dès 1Go de données de répertoriées. Ça ne risque pas d’arriver demain, mais d’ici là, l’intégrité de vos données est au moins assurées à 100%, et c’est un gros plus !

Ensuite, la performance :

  • Nous compilons pour la JVM (Java Virtual Machine), mais n’utilisons pas Java pour des raisons de performances et de possibilités (héritage multiple, surcharge d’opérateurs…). Enfin, ça dépend des cas. Il peut arriver que l’utilisation de Java soit plus efficace, mais c’est rare.
  • JSON est une mécanique familière à Seb. C'est le format utilisé par Hytale pour la sérialisation et désérialisation des données. De mon côté, je suis spécialiste du multithreading. Certains de nos programmes tournent donc, en moyenne, 16 fois plus vite (sur nos machines aux processeurs à 16 threads) que ceux des développeurs ne maîtrisant pas cette dernière arcane ancestrale.
  • Le site Internet n’utilise pas Apache pour tourner, ni PHP. Bon, sur ce coup les technologies ne sont pas bien difficiles à trouver. Nous utilisons un framework spécial pour le backend. Ce point aurait d’ailleurs pu, à ce titre, être mis dans la catégorie Sécurité. Au total, 5 langages différents composent le site Internet. HTML n’est pas un langage. C’est gratuit.

Il y a énormément de points qui pourraient rentrer dans cette catégorie, et j’en oublie nécessairement neuf dixièmes. Navré !

Enfin, la réactivité : 

Je passe plusieurs heures par semaine à corriger des étudiants en première année d’ingénieur. Certains d’entre eux sont… très créatifs. Si vous pensez à une faille, nous y avons probablement déjà pensé.
La réactivité englobe aussi notre capacité à nous adapter à vos (bonnes) idées ! Alors n’hésitez pas !

Pour les développeurs

Cet article a piqué ta curiosité, tu ne fais pas partie d’un projet et tu souhaites nous rejoindre ? Si tu as quelques bases de programmation, je me ferai un plaisir de me dégager du temps dans la semaine pour te faire passer un entretien ! Direction l’onglet recrutements