Quel type de développeur pour dév un algorithme ?

Bonjour à tous,

Je vais lancer une startup avec un associé et nous avons besoin de lancer :

  • une web app à courte échéance (quelques mois)
  • une app IOS et Android d’ici 8 mois maxi

Cette app (c’est la même sous toutes les plateformes) comportera :

  • des tests de personnalités pour le client (QCM)
  • un moteur de recherche multi-critères (avec des filtres donc des questions fermées, mais aussi des questions ouvertes) qui aboutira pour le client à sa mise en relation avec un ou plusieurs prestataires. Donc un gros algorithme derrière qui prend des critères et les pondère :slight_smile:
  • un envoi de SMS aux prestataires pour les avertir qu’ils correspondent aux critères d’un client,
    • le cas échéant un paiement en ligne à la clef.
  • un espace client où celui-ci pourra administrer ses séances avec le prestataire
  • On aimerait que l’algorithme soit évolutif (machine learning) donc qu’il apprenne à partir des comportements des utilisateurs, de leurs retours positifs ou négatifs, etc.

Du coup on se posait la question de savoir quel type de développeur on allait chercher : un architecte base de données ? Un spécialiste des algorithmes ? (j’imagine qu’il y a un nom + technique pour ça ahah).
Et aussi en quel langage ? Du nodeJS avec du Ruby derrière ? Là il y a tellement de possibilités qu’on est un peu perdus, on sait juste qu’on aimerait garder un front en Wordpress pour que les marketeux puissent l’administrer facilement, mais derrière la app peut être en n’importe quel langage :slight_smile:

Merci de nous éclairer !! :wink:

L’idéal (allez je vais pour une fois prêcher pour ma paroisse) c’est de constituer une équipe. Celle-ci sera composée :

  • d’un lead developpeur ayant des compétences larges (front, back, architecture, …) ;
  • d’un architecte/DBA/ingénieur système ;
  • d’un développeur iOS/Android/Windows Mobile ;
  • d’un développeur Web ;

  • Il faut penser aussi à la qualité… Donc il faut une équipe pour tester le produit !

Du coup on explose la masse salarial, les coût de R&D, que l’ont peu pas forcément financer malgré les aides et la reconnaissance de l’entreprise en temps que JEI par exemple.

L’accompagnement deviens nécessaire et il faut sous-traiter la 1ère réalisation en toute ou partie. Mais là, il va falloir beaucoup travailler en amont sur la préparation des devs. et être vigilant sur la qualité…

Du point de vue technique, oui il y’a le choix temps sur les plates-formes que les langages… Mais attention n’est pas véloce et fiable qui veux et puis pour le codage : Prenez 2 dev, donnez leur la même chose à faire, les résultats ne seront pas les mêmes.

Une des idées à retenir c’est que plus vous allez mutualiser, plus vous gagner en temps et faire éventuellement faire des économies. Il faut donc une plate-forme qui soit souple et large terme de couverture de plate-forme et langage… Oui, oui ça existe…

4D, CodeTyphon, Eclipse, Netbeans, WinDev, Xamarin, …

Pour les langages la meilleur performance est apporté par le compilé toutefois, il faire attention au nœud d’étranglement que représente les systèmes de stockage.

3 « J'aime »

Moi je dirais attention au mur …
Vous êtes deux, vous avez une idée … mais pas de technique …

Je suis peut être prudent … mais se donner 8 mois pour construire une application sans maîtriser ni dev, si son déploiement … c’est un coût à investir lourdement dans un produit qui sera difficilement abouti …

Surtout que dans les 8 mois, il y a aura la période de recrutement, de formation (ou alors vous avez un budget plus de conséquent, la formalisation du projet (entre une idée, voir un design et une appli, il y a gasp important … ), son dév, test, validation et déploiement (déployer du non testé (réellement est l’assurance de se planter) …

Je comprend qu’avoir une échéance est obligatoire (tant que ce n’est pas livré … pas de rentré … mais prenez garde à ne pas viser trop juste sachant que vous n’avez pas la technique avec vous. (un employé n’est un membre fondateur …)

5 « J'aime »

Bonjour;

au vu de la présentation le travail risque d’être long d’autant plus si vous n’avez vraiment aucune compétence en dev, si vous avez des fonds illimités pourquoi pas, mais j’en doute. Moi ce que je conseillerais c’est de commencer par créer un landing page présentant le problème et la solution et d’en faire la promotion, pour avoir vos premiers retours sur la pertinence de la solution par rapport au besoin. Ce serait une première phase pour valider votre idée.

Deuxièmement, si la landing page retient une attention favorable et que vous avez peu de moyens/compétences je conseillerais d’employer la technique du magicien d’Oz c’est-à-dire de faire à la main le travail que l’algorithme ferait ou de vous tourner vers un wordpress customisé avec des plugins. Ces deux techniques vous permettront de voir si vos clients sont prêts à payer pour votre solution et ainsi de créer un premier entré d’argent qui quand elle sera suffisante vous permettra de développer l’algorithme lui-même.

Chaque chose en son temps.

4 « J'aime »

Je rejoins l’avis général. Vous cherchez pas quelqu’un pour écrire un algo.

Vous cherchez un vrai CTO.

3 « J'aime »

Bonjour,

Effectivement c’est un projet qui nécessite pas mal de compétences et beaucoup de boulot. Une équipe serait la bienvenue.

Après en fonction de vos moyens, il est possible, dans un premier temps, d’opter pour un bon développeur web autonome qui pourra réaliser le site web en version responsive design. Si les applications mobiles sont importantes dans un premier temps, ce développeur pourrais très bien les développer en cross-platform avec des technologies web.
Une fois le concept éprouvé, vous pourrez embaucher des développeurs mobile.

Bon courage

1 « J'aime »

C’est un problème de riche, donc pas votre problème pour le moment. IMHO.

2 « J'aime »

Oui, vous avez tous raison, merci pour vos retours :slight_smile:
Je me suis mal exprimé : on a un peu de budget pour dev ET on cherche effectivement un CTO (qui peut être simple advisor ou mettre les mains dans le cambouis, à voir). Si je comprends bien ce que tu dis Séverin Bruhat, il est possible de dev la plateforme web en un seul langage et de faire que ce langage tourne sur des applis smartphone ? (si oui quels langages ?)

Le HTML mais ça à c’est limite… à mon sens.

Plusieurs options sont possibles :

  • Développer le site avec des technologies web (PHP / Javascript / HTML / CSS par exemple) et faire en sorte qu’il s’affiche correctement sur ordinateur / tablette / smartphone dans un navigateur, on parle ici de responsive design. Sur mobile, il ne s’agit donc pas d’une application mais d’un site que l’on ouvre dans son navigateur → solution la moins onéreuse car il n’y a qu’un site à développer
  • Développer le site internet avec des technologies web (PHP / Javascript / HTML / CSS par exemple) ET développer une application cross-plateform via Phonegap, Ionic ou Titanium par exemple, dans ce cas le développement se fait en HTML / Javascript / CSS. Avantage : pas besoin de connaitre des langages de programmation pour mobile, une seule et même personne peut tout faire, fonctionne sous iOS, Android, Windows phone avec quelques ajustements seulement. Inconvénient, une application développée avec des technologies cross-plateform sera moins performante qu’une application développer en langage natif (iOS, Android)
  • Développer un site internet en technologie web + une application native iOS + une application native Android + une application native windows phone → le top mais besoin de 3 développeurs avec des compétences différentes → coût élevé
2 « J'aime »

Angular JS 2 sorties récemment je crois que c’est utilisable pour faire du cross-plateforme

Bonjour a tous,
Il est vrai que la demande formulee en 2-3 paragraphes semble assez consequente. Mais attention c’est l’idee de depart, la question serait plutot comment arriver a cette objectif (ou vision)…
Il faut prendre le projet par etape, ne pas mettre la charue avant les boeufs, mais aussi ne pas etre trop petit bras si tu veux reussir.

  • Une landing page est une bonne idee. Mais attention il faut etre tres clair sur le segment que l’on target. Sinon le taux de conversion obtenu ne representera pas grand chose. Autre facteur, il faut du budget pour des Ads (Google & Facebook). Pour un projet Startup, peut-etre que de recontrer des clients potentiels, des utilisateurs potentiels en face a face donnera des informations plus precises
  • L’etape suivante pour moi correspond a la construction d’un MVP (Minimum Viable Product). Cette etape permet de construire la base du produit, de le mettre sur le marche (Alpha, Close Beta, Open Beta…), et de valider les hypotheses en observant les utilisateurs, mais aussi en les interrogants.
  • Ensuite, on itere. En ayant une bonne feedback loop et en utilisant la methode Lean Startup Build - Measure - Learn.

Pour ce qui est des technologies a utiliser cela dependra de plusieurs contrainte: Votre budget (en fonction se referer a la reponse de @sbruhat), le pool de talents disponible autour de vous (il serait bete de partir sur une techno que personne ne connait dans la region ou vous voulez installe vos bureaux, ou encore le prix de ces personnes est a considerer), mais aussi comment vous envisager la croissance de votre business (voir petits bras au debut vous coutera ensuite si succes il y a, si vous voyez trop gros et que vous echouez alors vous aurez depenser plus que trop… Mais reussite ou echec, je dirai « Dieu seul le sait »…)

Selon Paul Graham: The 18 Mistakes that kill Startup - Infographie sympa ici

Pour finir je vais repondre a ta question, « Quel type de developpeur pour dev un algorithme? »

  • Si tu veux que l’Algo soit diponible en offline, alors developpe l’algo en C (language basse couche), et tu pourras l’embarquer dans toutes tes app (Web, Mobile…)
  • Si tu obliges ton utilisateur a etre connecter sur Internet, alors tu peux developper ton algo en n’importe quel language (PHP, Ruby, Python…etc.). Si l’algo est consommateur de donnees, alors Python est super pour ca (language utilise par la NASA, le CERN…etc.). Ruby est en vogue (mais developpeurs rares « et chers »), PHP simple mais pas super « robuste ». Et bien d’autres…

J’espere que ma reponse aide le chihimblick!
Bon courage!
Baptiste

1 « J'aime »

Il existe des environnement RAD qui permettent de réaliser des applications multi-cibles. J’en citerais quelques une :

  • 4D ;
  • CodeTyphon Studio ;
  • Windev ;

Bonjour @la_tondeuse_du_web,

quand tu dis un peu de budget, tu parles de quel somme ? Sachant que par exemple en ile de france, un dev qui répondrait à vos besoins est payé 40 K brut par an en CDI, et c’est un grand minimum, si en plus il vous fait toute votre partie technique (CTO), ça grimpe encore.

Pour moi votre besoin est simple :

  • Vous avez besoin d’une Api REST, qui contiendra toute votre logique (tous les points que tu as cités en dessous de comportera: …).

  • Toutes vos applications, que ce soit web, ou mobiles, viendront demander des informations à votre Api et les afficheront à l’utilisateur. Ces applications pourront être développés en natif ou pas, aucune importance pour de l’affichage. Les applications native sont utiles quand elles ont besoin d’utiliser des fonctionnalités propres à chaque plateforme, comme le gps par exemple, fonction codé différemment en IOS ou en Windows phone par exemple.

Mais si vous n’avez encore rien commencé, penser plutôt à faire une landing page, et voir si votre produit à une réel demande, avant de pensais à chercher un CTO.

Romain

1 « J'aime »