fastdigital.
SERVICE — CONSULTING

Audit lucide, recommandations actionnables.

Vous avez une équipe tech, un produit existant ou un choix de technologies à faire. On vient avec un regard externe, on lit le code, on documente ce qu'on voit, et on remet un rapport qu'on peut implémenter dès lundi.

160 CHF/h
Tarif
3 — 10k
Mission
1 — 4 sem.
Délai type
Rapport + reco
Livrable
POUR QUI

On bosse avec.

Fondateurs non-tech

Vous avez un produit développé en externe, vous voulez un avis indépendant avant d'investir plus.

CTOs & équipes tech

Vous voulez un regard externe sur une décision d'architecture ou un choix de technologies.

Investisseurs & funds

Vous faites un audit de validation technique avant un tour de table ou une acquisition.

Boards & comités

Vous avez besoin d'une expertise neutre pour arbitrer un débat technique interne.

CE QU'ON LIVRE

Concrètement, ça donne.

01

Audit de code

Lecture du repo, identification des risques, dette technique, points de fragilité.

02

Audit d'architecture

Diagrammes, flux, dépendances, montée en charge, points de défaillance unique.

03

Choix de technologies

Comparaison neutre selon vos contraintes : équipe, budget, échelle visée, délai de mise sur le marché.

04

Audit de validation technique

Rapport pour investisseurs : santé du code, équipe, maintenabilité, risques cachés.

05

Code review structurée

PRs annotées, conventions proposées, plan de refactoring priorisé par ROI.

06

CTO fractionné

Directeur technique à temps partiel, présence régulière (1 — 2 jours/sem), arbitrages, recrutement, accompagnement équipe.

07

Audit performance

Profilage, requêtes lentes, N+1, cache, métriques utilisateur réelles.

08

Audit sécurité

OWASP, secrets, dépendances, RGPD / nLPD, surface d'attaque, accès.

STACK & APPROCHE

Outils choisis.

Stack technique

  • Toutes technologies web modernes
  • Node.js / TypeScript
  • PostgreSQL / Mongo
  • Next.js / React Native
  • AWS / GCP / Vercel
  • Kubernetes / Docker
  • Méthodologie agile

Comment on bosse

Une mission consulting démarre par une réunion de lancement d'1h pour cadrer la question : qu'est-ce qu'on cherche, qui sont les parties prenantes, quels sont les livrables attendus. On signe un NDA si nécessaire.

Phase d'investigation : lecture du code, entretiens équipe, revue des tableaux de bord, des incidents passés. On documente au fil de l'eau dans un rapport partagé. Vous voyez avancer, vous pouvez réagir et orienter.

Restitution : un rapport écrit (15 — 40 pages selon le périmètre), une présentation orale, et un plan d'action priorisé. Pas de blabla : chaque recommandation a un coût estimé, un impact attendu, et une priorité.

PRICING

Tarif transparent.

Plancher
160 CHF/h
Sweet spot
3 — 10k / mission

Inclus dans la prestation

  • Réunion de lancement + cadrage de la mission
  • Lecture du code, entretiens équipe, revue infrastructure
  • Rapport écrit avec diagrammes et exemples
  • Recommandations priorisées (impact / coût)
  • Restitution orale + questions/réponses
  • Suivi 30 jours sur questions de mise en œuvre
PROCESS

Quatre étapes.

01

Cadrage

Réunion de lancement, NDA, périmètre précis, livrables attendus, planning.

02

Investigation

Lecture code, entretiens, revue infrastructure, identification des risques.

03

Synthèse

Rédaction rapport, diagrammes, recommandations priorisées.

04

Restitution

Présentation orale, questions/réponses, plan d'action, suivi 30 jours.

EN DÉTAIL

Quand faire appel à un consultant technique externe

Plusieurs points de bascule reviennent systématiquement dans les missions d'audit technique web suisse que nous menons. Le premier : un MVP qui plafonne. Les utilisateurs stagnent malgré l'acquisition payante, les temps de réponse se dégradent au fil des semaines, la dette technique freine chaque nouvelle release. L'équipe interne sent qu'il y a un problème mais ne sait plus distinguer une cause racine d'un symptôme. Le second : un bug en production récurrent qu'aucun développeur de l'équipe n'arrive à localiser, parfois depuis plusieurs mois. Logs incomplets, monitoring partiel, reproduction impossible en local — le ticket reste ouvert et les utilisateurs s'agacent.

Le troisième point de bascule est le choix de stack pour un nouveau projet. L'équipe interne hésite entre Next.js, Remix et Laravel, ou entre React Native et Flutter pour la version mobile. Chaque développeur défend sa préférence, le débat tourne en rond, et la décision est repoussée de semaine en semaine. Le quatrième : une levée de fonds avec due diligence technique imminente. Les fonds (Serpentine, Wingman, Redalpine, parfois des fonds européens plus larges) mandatent quasi systématiquement un audit indépendant avant de signer une série A. Mieux vaut anticiper que découvrir les findings critiques en pleine due diligence.

Le cinquième cas est la refonte qui s'éternise — six mois prévus, douze mois plus tard l'équipe livre encore par à-coups, le scope a dérivé, les budgets ont doublé. Dans tous ces cas, le rôle d'un consultant externe n'est pas de prendre la place de l'équipe interne. Il est de poser les bonnes questions, identifier les vraies causes (techniques, organisationnelles, ou les deux), et recommander un plan d'action chiffré que l'équipe peut exécuter. Un avis externe pèse différemment d'un avis interne : il n'a pas d'historique politique, pas de préférence d'outil à défendre, pas de carrière à protéger.

Audit technique : périmètre et livrables

Un audit code suisse romande complet couvre trois axes complémentaires. L'architecture d'abord : séparation des couches (présentation, métier, données), choix de la base de données et du modèle relationnel, patterns API (REST, GraphQL, tRPC, événements), scalability horizontale et verticale, points de single failure, stratégie de déploiement. Nous produisons des diagrammes C4 ou des schémas de flux qui rendent l'architecture explicite — souvent pour la première fois depuis le démarrage du projet.

La qualité du code ensuite : typage TypeScript strict ou relâché, couverture et pertinence des tests unitaires et d'intégration, structure des modules, conventions de nommage, code smells récurrents (duplications, complexité cyclomatique élevée, fonctions de plus de 100 lignes, couplage fort entre modules). Nous lisons effectivement le code — pas un échantillon de cinq fichiers — et nous documentons les patterns problématiques avec des références précises de fichiers et de lignes.

L'infrastructure enfin : pipeline CI/CD, monitoring applicatif (Sentry, Datadog, New Relic), monitoring infra (Grafana, CloudWatch), sauvegardes vérifiées par restore tests, sécurité opérationnelle (rotation des secrets, gestion des accès, audit des permissions IAM), observabilité (logs structurés, traces distribuées, métriques métier). Beaucoup d'équipes ont un monitoring théorique qui ne déclenche jamais d'alerte parce que les seuils sont mal calibrés.

Méthode : 1 à 3 semaines selon scope, accès en lecture au repository, deux à trois entretiens d'une heure avec l'équipe technique (tech lead, développeurs seniors, ops), accès en lecture aux logs production et aux dashboards. Le livrable est un document de 20 à 50 pages structuré en findings priorisés (P0 critique à corriger immédiatement, P1 important sous 30 jours, P2 souhaitable au prochain trimestre), chiffrage de chaque correctif en heures et en coût, roadmap d'exécution proposée. Pas de slides 80 pages décoratives : un PDF actionnable que les développeurs peuvent ouvrir et exécuter le lendemain.

Audit de performance et de sécurité

L'audit de performance commence par une mesure objective. Lighthouse et PageSpeed Insights sur les pages critiques (home, listing, fiche produit, checkout, dashboard authentifié), profiling Chrome DevTools sur les parcours utilisateurs réels, Sentry Performance pour identifier les transactions lentes côté serveur, analyse du bundle size avec @next/bundle-analyzer ou source-map-explorer. Nous identifions les bottlenecks classiques : queries SQL N+1 non détectées, images servies en JPEG non optimisé sans CDN, JavaScript bloquant le rendu (scripts tiers chargés synchronement), absence de cache HTTP côté edge, fonts custom non préchargés.

L'audit sécurité application web suisse suit le référentiel OWASP Top 10 : injection (SQL, NoSQL, LDAP, command injection), broken authentication, sensitive data exposure, XML external entities, broken access control, security misconfiguration, XSS, insecure deserialization, vulnérabilités de composants connus, logging insuffisant. Chaque catégorie est testée selon des scénarios précis. Scan des dépendances avec Snyk et Dependabot, recensement des CVE actifs sur les versions installées, review des flows OAuth et JWT (validation des claims, expiration, rotation des refresh tokens), gestion des secrets (variables d'environnement, AWS Secrets Manager, GCP Secret Manager, jamais en dur dans le repo).

Les couches souvent négligées : rate limiting sur les endpoints sensibles (login, reset password, API publique), headers HTTP de sécurité (Content-Security-Policy strict, HSTS avec preload, X-Frame-Options, Referrer-Policy, Permissions-Policy), cookies (HttpOnly, Secure, SameSite). Nous produisons un rapport priorisé avec exemples concrets de payload pour chaque vulnérabilité identifiée — pas une liste générique copiée d'un check-up automatique.

Pen test léger inclus

L'audit inclut une exploration manuelle des endpoints exposés, des tentatives d'élévation de privilèges entre rôles utilisateurs, et un fuzzing basique des formulaires (caractères spéciaux, payloads XSS et SQL classiques, valeurs aux limites). Pour un test d'intrusion approfondi mandaté par compliance (ISO 27001, FINMA, audit RGPD formel), nous recommandons un cabinet de cybersécurité spécialisé, dont c'est le métier. Notre périmètre s'arrête au pen test léger — utile pour détecter 80% des vulnérabilités courantes sans le coût d'un mandat formel.

Choix de stack pour un nouveau projet

Le consulting next.js suisse représente une partie significative de nos missions, mais le choix de stack ne se réduit pas à un framework unique. Nous déclinons selon le contexte. Pour une startup early-stage avec un produit B2B web, le default est Next.js + Postgres avec Prisma + Vercel : productivité maximale (App Router, Server Components, Server Actions), écosystème mature, scaling automatique jusqu'aux dizaines de milliers d'utilisateurs sans intervention. Pour une application mobile native, React Native + Expo couvre 90% des cas avec un seul codebase iOS/Android.

Pour une application data-heavy ou un pipeline ML (ingestion, transformation, scoring, ranking), Python FastAPI ou Node.js avec des queues BullMQ ou AWS SQS gèrent la charge asynchrone proprement. Pour un site éditorial ou marketing, Next.js + Sanity headless reste imbattable sur le couple performance / DX éditorial. Les critères de choix que nous appliquons systématiquement : équipe disponible (le marché du recrutement Suisse romande favorise React et Node, plus difficile sur Elixir ou Rust), contraintes de scaling anticipées (combien d'utilisateurs à 6 mois, 2 ans, 5 ans), maturité de l'écosystème (libraries, hire pool, communauté active), contraintes de compliance (FINMA pour le secteur financier, RGPD européen, nLPD suisse depuis septembre 2023).

Les anti-patterns que nous voyons régulièrement et que nous déconseillons sans détour : Drupal pour un SaaS — conçu pour l'éditorial complexe, pas pour des workflows applicatifs ; Laravel monolithique pour une application temps réel avec milliers de connexions WebSocket simultanées ; Bubble ou autre no-code pour un produit avec logique métier custom complexe — la promesse initiale tient 6 mois, le mur arrive vers la deuxième année avec un coût de migration prohibitif. Nous expliquons pourquoi factuellement, avec des exemples chiffrés tirés de missions passées.

CTO fractionné : modalités

Une mission de cto fractionné genève s'organise typiquement sur 1 à 3 jours par semaine, avec une mission cadrée de 3 à 12 mois renouvelable. Le rythme inclut un point hebdomadaire avec le founder ou le COO, et une présence régulière dans les rituels d'équipe (daily, sprint review, retro selon la cadence). L'engagement va au-delà du conseil ponctuel : accompagnement du recrutement technique (rédaction des job descriptions, conduite des entretiens techniques, négociation salariale en lien avec les benchmarks suisses), code review systématique sur les pull requests critiques, décisions d'architecture validées en bilatéral avec le tech lead interne.

La présence aux comités stratégiques est incluse : board meetings quand des sujets tech sont à l'ordre du jour, due diligence technique côté entreprise (réponse aux questionnaires investisseurs), partenariats techniques (négociation avec un éditeur SaaS, intégration avec un partenaire data, choix d'un hébergeur). Le CTO fractionné fait le pont entre la vision business du founder et l'exécution technique de l'équipe — un rôle que ni un développeur senior ni un consultant ponctuel ne peuvent occuper seuls.

  • Code review critique et architecture decisions sur les PRs structurants
  • Rédaction de job descriptions techniques et conduite d'interviews
  • Choix de stack et pilotage des migrations technologiques
  • Sécurité, RGPD, nLPD et due diligence technique
  • Liaison avec board et investisseurs sur les sujets tech
  • Coaching du tech lead interne et montée en compétences

Cible et tarifs

La cible typique est une startup seed ou série A qui n'a pas les moyens d'un CTO full-time (350 à 500k CHF/an total cost incluant salaire, charges, equity, BSPCE) mais a besoin de leadership technique structuré. Le tarif d'un CTO fractionné se situe entre 1 200 et 1 800 CHF/jour selon le niveau d'engagement et la séniorité requise — nettement inférieur au coût total d'un CTO full-time, avec une flexibilité d'ajustement à la trajectoire de l'entreprise.

Reprise d'un projet existant après départ d'une équipe

La reprise d'un projet après le départ d'une équipe technique (freelances qui terminent, agence qui ne renouvelle pas, salarié qui part) suit un protocole en trois phases. Phase 1 cartographie, 1 à 2 semaines : récupération des accès complets (GitHub, Vercel, AWS, base de données, services tiers, domaines, certificats), inventaire de l'existant, identification des trous habituels (mots de passe partagés sans gestionnaire, services tiers actifs sans propriétaire identifié, infrastructure non documentée, scripts de déploiement uniquement dans la tête de l'ancien dev).

Phase 2 stabilisation, 2 à 4 semaines : corrections critiques sur les bugs bloquants identifiés, mise en place du monitoring si absent (Sentry au minimum), vérification effective des sauvegardes par un test de restore complet (la sauvegarde qui n'a jamais été testée n'est pas une sauvegarde), rotation des secrets sensibles, inventaire des CVE ouvertes sur les dépendances. Phase 3 refacto progressif sans freeze produit : réécriture par modules avec tests progressifs, déploiement continu maintenu, communication régulière aux stakeholders sur l'avancement.

Le coût typique varie selon l'état initial : 8 à 15k CHF si le projet est propre mais non documenté, 15 à 30k CHF si la dette technique est forte (versions de framework obsolètes, monitoring inexistant, sauvegardes douteuses, secrets hardcodés). La différence par rapport à une reprise par un freelance random : nous documentons systématiquement, nous testons effectivement, et nous ne réinventons pas tout sous prétexte que le code existant n'est pas à notre goût. Conserver ce qui fonctionne, corriger ce qui pose problème, refactorer ce qui freine — dans cet ordre.

Quand choisir une agence vs un studio dev

Le marché du conseil technique en Suisse romande propose plusieurs formats. Les cabinets conseil business + IT ont leurs forces : expertise sur la stratégie organisationnelle, gouvernance, transformation digitale d'entreprise, livrables très formels (slides structurés, matrices RACI, roadmaps haut niveau). Pour une transformation grande entreprise avec plusieurs départements impactés et un comité de pilotage formel, ce format reste pertinent.

Les cabinets tech suisses ont également leurs forces : équipes pluridisciplinaires, livrables concrets, intervenants seniors, organisation structurée en agence avec chargé de compte et chef de projet. Pour un audit avec compliance formelle ou une mission qui demande la mobilisation simultanée de plusieurs intervenants techniques, le format est cohérent.

Un studio dev comme fastdigital a un format différent : 1 à 2 intervenants seniors qui exécutent eux-mêmes la mission, échanges directs sans intermédiaires, livrable concret en PDF actionnable. Pour un audit ciblé d'une équipe de 5 à 20 développeurs, une due diligence technique avant levée, ou un choix de stack pour un nouveau projet, le format est souvent mieux adapté au besoin réel.

Le résultat technique est équivalent côté livrable — sur des audits purement techniques, le rapport est équivalent à scope égal. Format différent, coût plus accessible, qualité comparable. Pour un audit formel exigé par la compliance d'un grand groupe ou pour une transformation organisationnelle massive, les cabinets traditionnels restent pertinents. Pour la majorité des cas — startup, scale-up, PME tech — le format studio est plus adapté.

FAQ technique

Combien de temps pour un audit ?

Un audit ciblé sur un seul axe (performance, sécurité, ou architecture) prend 1 à 2 semaines de l'investigation à la restitution. Un audit complet couvrant les trois axes prend 2 à 3 semaines selon la taille du codebase et la disponibilité de l'équipe interne pour les entretiens. Pour une mission de CTO fractionné, l'engagement minimum est de 3 mois renouvelable — en deçà, le contexte n'est pas assez intériorisé pour produire un impact réel.

Faut-il que toute l'équipe soit disponible pendant l'audit ?

Non. Nous avons besoin de 2 à 3 entretiens d'une heure avec les développeurs principaux et le tech lead, d'un accès en lecture au repository et aux dashboards de monitoring, et d'un accès en lecture aux logs de production. Le reste du travail se fait offline, sans solliciter l'équipe. L'objectif est précisément de ne pas perturber la livraison en cours — l'audit s'adapte au calendrier de l'équipe, pas l'inverse.

L'audit signale-t-il les corrections à faire en interne ou nécessite votre intervention ?

Le livrable est rédigé pour qu'une équipe technique exécute les corrections en autonomie : chaque finding inclut le contexte, les fichiers concernés, la solution recommandée et le chiffrage en heures. Si vous préférez nous mandater pour l'exécution, nous le faisons sur devis ou via un contrat TMA dédié. Sans engagement de notre côté pour la suite — l'audit est livré indépendamment de toute mission d'exécution.

Confidentialité et NDA ?

Oui systématiquement. NDA signé avant tout échange détaillé du code source ou des accès techniques. Possibilité d'un NDA mutuel quand vos sous-traitants techniques sont impliqués dans le périmètre de l'audit. Les livrables et les éléments du code restent propriété du client, et nous ne réutilisons jamais d'extraits de code ou de findings nominatifs dans nos communications publiques.

On en parle ?

Premier échange gratuit, 30 minutes par visio. Pas de bullshit.