Fermer

octobre 23, 2018

Comment nous avons aidé cette start-up FinTech à devenir un leader de niche –


Cet article sponsorisé a été créé par notre partenaire de contenu, BAW Media . Merci de soutenir les partenaires qui rendent SitePoint possible.

Ici, à TMS nous voyons des entreprises prometteuses avec des idées étonnantes et un potentiel énorme quotidiennement. Malheureusement, ils restent souvent coincés dans les détails techniques et les courriels SOS continuent de nous suivre dans notre direction.

Cependant, c'est en fait une bonne chose. Si nous pouvons les aider à atteindre leur plein potentiel et à atteindre leur objectif, c'est une situation gagnant-gagnant.

Certaines des startups que nous avons vues ont vraiment des idées qui pourraient changer notre monde pour le meilleur. Donc, plutôt que de les voir se débattre, nous sommes ici pour les aider de toutes les manières possibles.

Et cela nous amène au problème commun sur lequel de nombreuses startups restent bloquées; la mise en œuvre technique de leur SaaS ou d'autres applications Web. Parlons donc un peu plus de la solution TMS .

Voilà le défi

C’est une chose de parler en théorie, mais les choses fonctionnent souvent très différemment dans la pratique. Pour mieux décrire comment nous aidons les startups à gérer le développement de leurs applications, jetons un coup d'œil à une étude de cas.

Il y a quatre ans, une société britannique spécialisée dans les technologies financières nous a contactés pour nous faire part d'une idée géniale incluant . ] un développement très complexe d'applications Web.

De la conception personnalisée à des rôles d'utilisateur multiples en passant par des flux d'utilisateurs complexes, nous savions qu'il s'agirait d'un projet compliqué.

En outre, ils avaient besoin de maintenance et d'un soutien constants depuis. ils ont déjà eu des expériences décevantes dans le passé. Ils ont dû abandonner plusieurs applications inachevées qui n'étaient tout simplement pas à la hauteur et qui ont fini par perdre beaucoup d'argent.

La solution TMS

Pour bien démarrer, nous devions comprendre ce qui n'allait pas avec leur projet avant de décider de nous joindre.

Nous avons écouté attentivement ce qu'ils avaient à dire pour identifier les problèmes qui étaient à la racine cause des problèmes rencontrés dans le passé. Il est apparu que les sous-traitants précédents avaient sauté de nombreuses étapes élémentaires et étaient passés au développement sans processus de planification, de configuration en fil de fer et d'estimation appropriés.

Cela semblait être une bonne offre; un taux horaire bas et moins d'heures de travail. Malheureusement, cela a coûté beaucoup plus cher à la start-up FinTech.

Nous avons expliqué que nous adopterions une approche totalement différente. un processus systématisé, étape par étape, dans lequel chaque développeur se concentre sur son rôle tout en ayant une bonne compréhension de la situation dans son ensemble, au lieu de travailler sur plusieurs composants du projet en même temps et de ne pas se sentir propriétaire de la livraison.

Étant donné que nous avions beaucoup d'expérience avec la création d'applications, en particulier avec les applications que nous avions créées pour notre propre entreprise (principalement SaaS), nous nous sentions assez confiants quant à notre capacité à fournir le meilleur produit possible.

Pour nous, ce projet ressemblait à:

Faire face aux défis

Nous l’avons déjà fait de nombreuses fois auparavant, mais l’essentiel est que chaque application est différente.

Avec celle-ci, nous étions nouveaux à Dans le domaine commercial de la mobilisation de capitaux, nous ne connaissions pas du tout les classifications et les réglementations légales de la FCA, etc.

Un défi supplémentaire à relever consistait à essayer de démêler le travail de l’équipe de développement précédente. Nous avons été prévenus de la confusion de l'UX et des bugs qui apparaissaient aux pires moments, en particulier lors de démonstrations.

Nous avons donc d'abord commencé par constituer une véritable équipe dirigée par un responsable technique et un responsable de produit. Cela nous permettrait de créer la structure d’équipe idéale, une bonne architecture de projet et une stratégie de réalisation de projet appropriée.

La formation d’une équipe fiable prend initialement plus de temps que de simplement engager un groupe de développeurs aléatoires – mais c'est toujours payant! Non seulement la productivité et la qualité sont meilleures, mais cela se traduit également par une réduction des coûts sur une période de 12 à 18 mois.

À chaque projet, l'équipe est formée différemment selon les besoins et les exigences spécifiques du projet. . Parfois, il suffit d’un chef de projet, d’un ingénieur en assurance qualité et de deux développeurs intermédiaires complets. Parfois, nous avons besoin de concepteurs UI / UX, d'ingénieurs en sécurité, d'ingénieurs front-end, etc. supplémentaires.

Solution unique: présentation de notre approche du cycle de vie d'une application complète

Une fois l'équipe formée, nous étions prêts à commencer avec notre propre approche personnalisée – l'approche Full-App-Lifecycle .

Elle est basée sur un fait simple:

Les erreurs sont beaucoup plus faciles à éviter si l'équipe de développeurs comprend la vue d'ensemble de l'application au lieu de vous concentrer uniquement sur de petites tâches. De la présentation initiale à la dernière série de commentaires, il est important de commencer chaque projet par une évaluation de base et une analyse appropriée.

Nous discutons toujours avec le marketing de l'entreprise. et l’équipe de développement et obtenez d’abord des réponses aux questions de base: quel problème résolvons-nous avec ce produit? Qui sont les clients cibles? Qui sont les concurrents? À quels risques sommes-nous confrontés? Quels sont le budget et le calendrier?

Toutes ces questions et bien d'autres doivent faire l'objet d'une bonne analyse, ainsi que de séances de cartographie de l'impact et de cartographie des histoires. À ce stade, nous sommes en mesure de proposer la meilleure stratégie de développement et le meilleur plan de déploiement du produit.

Nous devons rester souples tout au long du processus pour pouvoir nous adapter aux changements, mais nous commençons toujours par une vision claire de la structure de l'équipe. architecture logicielle, phases de projet, fonctionnalités prioritaires et autres petits détails que nous gardons à l'esprit.

«TMS a bien travaillé avec notre équipe et a agi pour le compte de notre entreprise dans diverses situations. Cela nous a permis de créer une équipe de classe mondiale et de grandir ensemble à l'international. ”

Développement de l'application FinTech

Le meilleur moyen de commencer une coopération consiste à établir la confiance de chacun. Avec la start-up FinTech, nous savions qu'il faudrait un certain temps pour gagner leur confiance après leurs expériences précédentes.

Ils ont accepté notre approche et nous avons décidé de commencer avec seulement 2 développeurs travaillant sur leur projet en coopération avec le chef de projet fourni. par la startup FinTech. Une fois que nous avons pris un bon départ, nous avons ajouté d’autres membres clés à la réalisation du prototype dans des délais très courts.

Nous avions un prototype basé sur WordPress, utilisant différentes bases de données. plugins de gestion avec des personnalisations massives de PHP, prêts à être montrés à leurs clients en moins de 3 mois. À ce stade, nous étions prêts à commencer à créer une application complète utilisant un framework MVC sur le backend (Symfony, DoctrineORM) et AngularJS sur le front-end.

Nous avons progressivement ajouté de nouveaux membres à l’équipe, notamment les ingénieurs QA et QA Automation, avant développeurs finaux, développeurs full-stack d'ancienneté différente, etc. Nous avons ensuite divisé l'équipe en sous-équipes plus petites, chacune avec son propre chef de projet.

L'application grandissait avec notre équipe et nous savions que nous étions sur la bonne voie. . La version actuelle utilise maintenant Symfony 4 sur le backend pour que le noyau de l'API avec Doctrine ORM fonctionne avec la base de données MySQL. Certains services fonctionnent sur Node pour exploiter les sockets Web, Vue.js sur le front en tant qu'interface utilisateur pour les applications Web, les applications mobiles natives pour Android et iOS et RabbitMQ en tant que système de mise en file d'attente des messages. Redis et Varnish sont utilisés pour la mise en cache, l'infrastructure de basculement, les systèmes de sauvegarde et de surveillance sont basés sur les services Amazon AWS.

Nous avons tous participé au développement global du produit et nos clients savent qu'ils peuvent compter sur notre assistance complète même

Voici quelques-uns des résultats les plus importants que nous avons obtenus pour notre client :

  • Après des mois de travail avec nous, ils ont totalement libéré le temps dont ils disposaient pour développer leur activité et ne nous rejoignent que pour Revue de sprint agile.
  • La géographie de l'utilisation s'est étendue du Royaume-Uni au reste de l'Europe, tandis que d'autres marchés sont "sur la liste d'attente".
  • La gamme de clients s'est élargie, passant de petites startups à la recherche de petits investissements à de grandes entreprises ayant besoin de sérieux contrats d'investissement.
  • Le produit mature a réussi à attirer plusieurs millions de dollars d'investissements.

De notre côté, l'équipe de développement de produits dédiée à ce projet est passée de 2 à 25 personnes et continue de croître. 19659046] Les raisons pour lesquelles notre approche a fonctionné

Notre approche du cycle de vie de l'application complète a fait ses preuves et ses principales raisons sont une planification et une gestion soignées. Celles-ci ont été appliquées à tous les stades du processus.

Lorsqu'une équipe est adaptée à un produit spécifique et que chaque membre de l'équipe travaille à sa tâche spécifique, tous finissent par considérer le produit comme étant le leur. Non seulement cela contribue à améliorer la productivité et la qualité, mais il déplace également l'attention des employés des frais vers le produit lui-même.

De plus, l'intégration avec l'équipe du client et le secteur, l'analyse en cours et des analyses approfondies. la planification contribue également à augmenter la qualité et le rythme de livraison.

Il est important d'ajouter que notre équipe est toujours encouragée à essayer toutes les nouvelles technologies et à suivre les dernières tendances en matière de développement, à participer à des conférences et à se tenir au courant. les normes les plus élevées de l'industrie.

Le succès que nous avons obtenu avec le projet FinTech n'est pas une histoire à succès, mais un exemple qui montre exactement comment notre approche fonctionne. [19659003] Nous recherchons des partenariats à long terme plutôt que des projets rapides et nous sommes heureux de participer également aux phases ultérieures. Le but pour nous est de constituer des équipes dédiées au produit et d'évoluer avec lui au fil du temps.

Conclusion

Si vous avez reconnu l'un des problèmes mentionnés comme étant le vôtre, y compris la difficulté de trouver une société de développement fiable, libre à nous contacter et nous nous ferons un plaisir de vous aider à trouver la bonne solution.

Nous avons une grande expérience dans le domaine qui peut être facilement prouvée par les projets que nous avons menés à bien. jusqu'à présent, plus de 20 000 clients payants de nos propres produits développés, plusieurs millions d'utilisateurs finaux et un taux de croissance annuel moyen de 50% depuis 2014.

Voici certaines des technologies que nous avons utilisées sur différentes parties du projet: PHP, framework Symfony, JS / ECMA6, AngularJS, React, Vue.js, MySQL, Doctrine ORM, Redis, Varnish, Swift, Java, Node.js, SASS / LESS, PHPUnit, PHPSpec.

Outre l'utilisation de ces technologies, nous avons également appliqué les méthodologies suivantes: Agile SCRUM, Développement piloté par les tests (TDD) et développement axé sur le comportement (BDD), conception axée sur le domaine (DDD).




Source link