Blog
La stack technique de Belighted
Avez-vous déjà entendu parler de AARRR ? Et de GRRRRR ?
Nous ne parlons pas du film de 2004. Nous parlons de nos technologies.
Vous avez peut-être l’impression que les développeurs parlent une autre langue lorsque vous discutez de votre nouveau produit ou de votre nouvelle application. Comme déjà évoqué, une formation technique n’est pas requise pour un créateur de start-up de logiciels. Il faut cependant comprendre certaines notions de base.
Les technologies, stack technique ou « tech stack » en anglais, désignent l’ensemble des programmes, frameworks et langages de programmation utilisés par les développeurs. Ils fonctionnent ensemble comme un ensemble de tamis transformant les données à chaque étage. Tous les tamis sont spécialement conçus pour traiter le type de données qu’ils reçoivent et fournir un autre type de données à l’étage suivant. D’où le terme « stack ».
La technologie qui se cache derrière votre nouveau produit peut influer sur des facteurs essentiels à court terme comme la rapidité de la mise sur le marché et le coût du projet, ainsi que sur des facteurs à long terme comme l’évolutivité et la maintenance.
Si vous envisagez de travailler avec Belighted pour concevoir votre nouveau produit, vous devez connaître nos technologies préférées et la raison de nos choix.
Pourquoi il est important de comprendre la stack ?
Un créateur de start-up qui n’a pas de compétences techniques doit comprendre les bases de la « stack ». Cela facilite la communication avec les développeurs et les investisseurs plus avertis sur le plan technologique. Cela aide également à comprendre les points forts et les limites qui pourraient avoir une incidence sur les choix futurs.
En tant qu’amateurs de code (et de bière, accessoirement), nous apprécions la simplicité. Ainsi, nous préférons certains langages et frameworks. Nous avons investi notre énergie à les maîtriser, de sorte que ces technologies apportent d’importants avantages aux produits que nous concevons.
Coûts : Votre stack technique peut avoir un impact sur les coûts de développement et de maintenance. Par exemple, le choix d’une technologie récente pour votre projet peut entraîner une forte hausse des coûts parce qu’il est plus difficile de trouver des ressources. Notre stack permet de réduire les coûts grâce à l’abondance de bibliothèques de haute qualité et de codebases open source.
Contraintes de temps : Il y a plusieurs raisons pour lesquelles la rapidité est importante pour une start-up. Prenez le time to market, par exemple. Nous avons choisi les technologies qui nous permettent de travailler le plus rapidement possible sans sacrifier la qualité. Puisque nous les maîtrisons à la perfection, nous bénéficions d’un double avantage en matière de rapidité.
Flexibilité : Même si une stack technique spécifique ne convient pas à tous les projets de développement d’applications mobiles ou web, la nôtre s’adapte efficacement à divers projets. Nous pouvons ainsi travailler sur une grande variété de produits à l’aide des outils que nous maîtrisons.
Notre stack technique favorite : GRRRRR
Notre équipe est expérimentée dans de nombreuses technologies, mais les suivantes sont nos préférées pour trouver des solutions simples et élégantes aux problèmes.
GraphQL
Lorsque nous avons besoin d’appeler ou de manipuler les informations d’une base de données, nous utilisons GraphQL. Il s’agit d’un langage très flexible, efficace et prévisible qui permet un développement rapide. Nous trouvons qu’il s’agit d’une nette amélioration par rapport à notre choix précédent, JSON REST API.
Redux
Redux est un moyen de gérer les données que vous affichez et de répondre aux actions des utilisateurs. Il permet de gérer et de tester plus facilement l’état de votre application. C’est un excellent outil qui fonctionne avec différents frameworks.
React
React, également appelé React.js, est une bibliothèque JavaScript qui simplifie la création d’interfaces utilisateur. React est flexible et peut s’utiliser avec d’autres bibliothèques et frameworks.
React Native
React Native est la version mobile de React. Ce framework permet de créer des applications mobiles plus rapidement, car vous pouvez utiliser une grande partie du code sur Android et iOS. Il permet également d’utiliser facilement du code spécifique à une plateforme si nécessaire.
Ruby on Rails
Ruby est le langage de programmation et Rails fournit la structure, ou le framework, pour le code. Nous l’apprécions pour de nombreuses raisons, mais en résumé, Ruby on Rails (RoR) permet un développement agile, simplifie le débogage, et est assez facile à utiliser.
Nous utilisons d’autres outils indispensables, comme le système de gestion base de données Postgresql, Sidekiq/Redis pour la gestion des tâches asynchrones, et HaProxy, Nginx, et Puma en tant que stack serveur HTTP.
Nous avons également recours à d’autres services comme Amazon AWS, Tableau, AirTable, Snowflake et Amazon Redshift, qui aident les start-up à concevoir un excellent produit.
Vous connaissez désormais les éléments de base que nous utilisons dans notre stack technique. Au cours des prochaines semaines, nous vous présenterons quelques-unes de nos technologies préférées plus en détail. À suivre :