Notre principal produit chez PSIH est une plateforme décisionnelle extrêmement riche en fonctionnalités utilisée par plus de 700 établissements hospitaliers en France. Ceci nous amène à utiliser différents languages de programmation pour résoudre différentes problématiques techniques. Voici un aperçu de ces langages qui composent notre stack technique.
PHP
Tout a commencé avec du PHP, avant de passer à une architecture orientée micro-services, notre plateforme était composée d’une seule application monolithique en PHP. Avec l’architecture actuelle, PHP reste présent dans nombre d’applications fullstack Symfony2 mais aussi de services backend (PHP 5.6 pour le moment mais la migration vers PHP 7 est prévue). D’autres amis se sont joints à la fête.
Javascript
Javascript représente le language principal des différents frontends de la plateforme (ES 2015). Il est notamment utilisé dans un certain nombre d’applications AngularJS. Mais nous utilisons également javascript dans des outils et services NodeJS. Nous sommes également amenés à utiliser du Rhino pour la partie intégration de données.
Typescript
Nous avons entamé la migration Javascript ES6 vers Typescript sur certains projets et ce pour différentes raisons que je vous laisserai découvrir dans notre précédent article Why Typescript ? (Angular2, we are coming!)
Java
Java est utilisé dans différents services backend. Nous prévoyons une migration de Java au JDK8. Nous avions pour ainsi dire déjà amorcé la transition en utilisant Guava pour imiter les Optional et Lambda.
Less
Nos feuilles de styles sont écrites essentiellement en Less (pmsipilot-ui); un passage à Sass est envisagé avec la sortie de Twitter Bootstrap 4
Shell / Python / Ruby
Dans le cadre de l’industrialisation de la plateforme et du continuous delivery, nous sommes également amenés à utiliser différents du shellet du python pour du scripting et du ruby pour écrire des cookbooks Chef et configuration Vagrant.
SQL
le SQL (et PL/SQL) occupe forcément une partie importante de toute plateforme décisionnelle, notamment dans le développements de flux d’intégration et la génération de requêtes de reporting.
Le C
Pas énormément ok, mais on en fait quand même :).
Alors vous voulez vous joindre à la fête ?