WeLoveDevs.com
đŸ“č
Visited by WeLoveDevs

WeLoveDevs.com


620 likes received
Lille, France
(Regular Teleworking)
Product company of 9 employees
L'Ă©quipe
L'Ă©quipe
Martin Lutton : « Un jour, je ne me suis plus senti à ma place »
Martin Lutton : « Un jour, je ne me suis plus senti à ma place »
DĂ©couvrez l'interview de Martin par Marcy 👉https://welovedevs.com/fr/articles/interview-martin-lutton/
Avec Vaduo au DevFest 🍍
Avec Vaduo au DevFest 🍍
React ultimate resume - Open Source Customizable Developer Resume
React ultimate resume - Open Source Customizable Developer Resume
Clément et Damien à l'Antenne
Clément et Damien à l'Antenne
Martin et Mathilde en live !
Martin et Mathilde en live !
Nicolas en tournage đŸ“č
Nicolas en tournage đŸ“č
Valentin Faucon – de l’illustration au mĂ©tier de dev chez WeLoveDevs
Valentin Faucon – de l’illustration au mĂ©tier de dev chez WeLoveDevs
Valentin Faucon – de l’illustration au mĂ©tier de dev chez WeLoveDevs

Valentin a rejoint l’Ă©quipe WeLoveDevs ! DĂ©couvrez qui se cache derriĂšre ce profil atypique qui manie le stylet comme personne. Bonne lecture ! Marcy.

Comment ton projet pro se définit-il ?

Hello, je dirais que mon projet pro se dĂ©finit comme un…  smoothie d’expĂ©riences diverses.

Haha, un peu comme moi alors ! Es-tu fier·fiÚre de ton parcours pro ?

Oui, mĂȘme si avec du recul les choses auraient pu ĂȘtre plus simples.

Quelle force retires-tu de ton parcours professionnel (ou de tes choix) ?

Mes expĂ©riences passĂ©es, ma capacitĂ© d’adaptation, ma volontĂ© d’apprendre toujours plus et de me surpasser (auto-challenge).

Si tu devais qualifier ton parcours professionnel en 3 mots, lesquels seraient-ils ?

Je dirais… vague, expĂ©rimenter, challenge.

Qu’est-ce qui a demandĂ© du courage dans ta vie professionnelle ?

Clairement ma reconversion pro !

Quelle expérience a été la plus enrichissante pour toi ?

Sans hésiter, celle du moment chez Welovedevs !

Quel moment dans ta vie professionnelle a été le plus inattendu ou original ?

Devenir dev ?

Qu’est-ce qui t’a motivé·e Ă  te reconvertir ? (ou devenir dev)

La possibilitĂ© de mixer mon expĂ©rience de graphiste au dev, la volontĂ© de dĂ©couvrir un autre mĂ©tier et d’apprendre 


Comment l’a vĂ©cu ton entourage ? (ou comment ton entourage perçoit ton travail vs le prĂ©cĂ©dent)

PlutĂŽt bien, il me sent investi, Ă©panoui contrairement Ă  avant !

En tires-tu une satisfaction personnelle ?

Une reconversion n’est jamais simple donc oui.

Prends-tu ça comme un challenge ou une opportunité (ou les deux) ?

C’est un Ă©norme challenge de se former et de se lancer dans un nouveau domaine. Je souhaite Ă  tous ceux qui le veulent d’apprendre ce tournant de vie !

Rendez-vous en bureaux inconnus – Le temps fort est lancĂ© !
Rendez-vous en bureaux inconnus – Le temps fort est lancĂ© !
Rendez-vous en bureaux inconnus – Le temps fort est lancĂ© !

Qu’est-ce qui va se passer ? 🧭

Bonjour Ă  tous et Ă  toutes, je suis hyper honorĂ©e de prendre la parole pour vous dire, trĂšs officiellement que… le nouveau temps fort Ă©ditorial est lancĂ© ! Cet hiver, voyagez avec nous en terres inconnus… Que dis-je, prenons Rendez-Vous en Bureaux Inconnus !

Plusieurs entreprises, collaborateurs-trices de partout dans le monde ont décidé de nous ouvrir les portes de leurs bureaux pour nous en dire davantage sur leur organisation en plein confinement, en télétravail.

Alors, escales aprĂšs escales, voyagez depuis votre canapĂ©/chaise de bureau/chaise rustique ! De MontrĂ©al Ă  Paris, en passant par Lille, San Fransisco et Berlin… Accrochez votre ceinture et lisez ces Ă©ditos forts en implication !

Fasten your seatbelts, on dĂ©colle en Bureaux Inconnus avec vous… grĂące Ă  vous ! đŸ›«

Pourquoi Marcy est contente ?đŸ’đŸ»â€â™€ïž

D’abord, je suis hyper contente de lancer ce nouveau momentum parce qu’il nous tient Ă  coeur; et je parle au nom de l’Ă©quipe !

Pour nous, il est important de montrer comment il est possible de maintenir le lien en cette pĂ©riode, comment on fait pour mener Ă  bien des projets d’Ă©quipes. L’organisation de vos Ă©quipes tech, des vos services RH, votre engagement sur tous ces points en pĂ©riode si incertaine : c’est un vrai vecteur d’espoir… et d’inspiration !

Enfin, je suis trop contente d’avoir la chance de mettre en avant une pluralitĂ© d’entreprise, de contributeur-trice, de collaborateur-trice de partout dans le monde. C’est une prĂ©paration Ă©norme que de vous faire figurer ici. Il y a du temps, de la sueur, des enjeux.

Bref, merci pour tout !

Qu’est-ce que je peux lire maintenant ?đŸ‘šđŸżâ€âœˆïž

De ce fait, on a déjà Léo Duquesnel, software engineer pour WeWork à San Francisco qui signe cette premiÚre escale. Lisez son journal de bord, ses inquiétudes, ses joies, son analyse et son mode de vie en plein lockdown.

Ce que je peux vous dire aussi, c’est que vous pouvez dĂ©jĂ  vous prĂ©parer au dĂ©collage pour Paris, puis la neige canadienne…

Nous ferons certainement un crochet par Lille, et nous reprendrons notre itinĂ©raire vers l’est, peut-ĂȘtre mĂȘme le Sud, qui sait ?

Rendez-vous Ă  San Francisco puis Mardi Ă  Paris, Ă  7h50, avec notre prochaine entreprise.

Tchuss !

Et si les quotas pouvaient rendre le recrutement plus inclusif ?
Et si les quotas pouvaient rendre le recrutement plus inclusif ?
Et si les quotas pouvaient rendre le recrutement plus inclusif ?

Les quotas n’ont pas la cĂŽte partout. Et dĂšs qu’on en parle, il y a beaucoup de levĂ©es de boucliers. J’ai envie de vous proposer une rĂ©flexion, une option de mise en application qui pourrait vous faire changer d’avis. J’ai envie de vous raconter mon expĂ©rience de recruteur.

En vrai, il y a des exemples de quotas qui marchent et qui changent les choses. MĂȘme sur ce blog, je vous propose de lire l’Ă©change avec MichĂšle : Koji recrute sur WeLoveDevs : TĂ©moignage de MichĂšle.
Elle y explique que 30% des pĂ©riodes d’essai doivent ĂȘtre un Ă©chec, sinon l’entreprise n’a pas Ă©tĂ© assez audacieuse et inclusive dans ses recrutements. Si vous trouvez ça intĂ©ressant, si vous avez envie d’entendre que les quotas peuvent amĂ©liorer les choses, alors vous prĂȘts Ă  lire la suite de cet article. đŸ€

C’est quoi mon histoire ?

Au début de WeLoveDevs, on a recruté avec notre réseau, avec notre support. Et puis on a commencé à recruter par annonce, parce que ça nous paraissait plus approprié pour les postes sur lesquels on a travaillé.

Et mĂȘme en approche directe, on peut se forcer Ă  approcher un certain nombre de femmes par exemple avant d’approcher des hommes. Sur le Podcast, par exemple, les invitĂ©s de la saison 2 sont tous approchĂ©s directement par Marcy (ou moi). Et on fait l’effort !

À ce moment-lĂ  de l’histoire, la sociĂ©tĂ© commence Ă  ĂȘtre Ă©tablie, on peut mettre plus de moyens dans nos efforts de recrutement et je tiens Ă  ce que ce soit un peu plus exemplaire. Le sujet est le suivant : on ouvre deux alternances, une au commerce, une Ă  la communication. Le problĂšme : on m’avait fait remarquer dĂ©jĂ  que notre Ă©quipe Ă©tait quand mĂȘme trĂšs Ă©quipe de foot.
On avait mĂȘme fait une photo en mode Avengers. Bref, deux de plus et on aurait Ă©tĂ© Ă  10 hommes blancs, devant le fait accompli.

On utilise des annonces pour obtenir des candidatures en dehors de notre réseau

Alors Ă  ce moment-lĂ , on a des dizaines de candidatures par semaine sur nos annonces, c’est la bonne saison. Et j’insiste pour dire qu’au moins une personne sur les deux postes doit ĂȘtre une femme. Si on avait un bon candidat masculin sur l’un des deux postes, on gardera le recrutement en attente tant qu’on n’a pas fait une proposition de poste acceptĂ©e par une candidate sur l’autre poste. Donc on rencontre des candidats sur les deux postes pendants plusieurs semaines. ConcrĂštement, on est 3 Ă  donner un jour par semaine au recrutement des alternants.

Le rĂ©sultat, c’est que pour chaque poste, on a screenĂ© 100 candidatures. On en a shortlistĂ© une vingtaine, et les shortlistes avaient 50% de reprĂ©sentation fĂ©minine. Sur le poste de commercial, deux candidates de la shortlist se sont vraiment illustrĂ©es. On a du mal Ă  choisir entre ces deux candidates, qui Ă©taient respectivement, la premiĂšre et la derniĂšre Ă  faire la shortlist. Finalement, on a retenu Mathilde, et c’Ă©tait un trĂšs bon choix !

De l’autre cĂŽtĂ©, sur tous les candidats du poste Ă  la communication, c’est Marcy qui s’est illustrĂ©e, d’une part parce qu’elle avait vraiment une complĂ©mentaritĂ© dans ces compĂ©tences avec Nicolas. Et d’autre part un savoir-ĂȘtre et des centres d’intĂ©rĂȘt qui vont nous donner envie de travailler ensemble.

Le dernier entretien avec Marcy, je l’ai fait depuis un restaurant en Croatie pendant un voyage en interrail de 45 jours. J’avais devant moi un Rakija trĂšs sucrĂ© (Ă  la myrtille je crois) et elle m’a parlĂ© de ses voyages solos, notamment en Turquie. Elle m’a parlĂ© du DISC, je lui ai parlĂ© d’analyse transactionnelle, on s’est partagĂ© nos MBTIs. C’Ă©tait un bon fit.

Ă©quipe welovedevs en mode friends sur un fauteuil du village

L’Ă©quipe WeLoveDevs en Septembre 2019

Qu’est-ce qu’on en retient ?

La premiĂšre chose, c’est qu’on a mis beaucoup plus de temps Ă  recruter. On s’est beaucoup plus appliquĂ© Ă  rencontrer des candidats, et on ne s’est pas arrĂȘtĂ© au premier candidat qui avait l’air bien.

La deuxiĂšme chose, c’est qu’en essayant de recruter une femme, on en a recrutĂ© deux. Et la raison en est le 3e constat.

Ce sont nos meilleurs recrutements. Marcy et Mathilde n’ont pas Ă©tĂ© favorisĂ©es par le quota. C’est que cette contrainte, artificielle et Ă©phĂ©mĂšre, nous a poussĂ© Ă  aller plus loin dans notre effort de recrutement et Ă  donc Ă  recruter mieux. Et il se trouve que quand on recrute mieux et bien on recrute deux femmes talentueuses.

Mais du coup, si un homme est compĂ©tent, on ne va pas l’embaucher ?

C’est la rĂ©action que j’ai souvent en aillant cette conversation. Cela serait un drame de ne pas faire une proposition de poste Ă  un homme qui est suffisamment compĂ©tent tout de suite.

Alors dĂ©jĂ  faut voir que cela nous est arrivĂ©. Il y avait un candidat pour le poste de Mathilde a qui nous avait intĂ©ressĂ©s. Mais une fois qu’on a eu en shortlist plus de candidats il n’Ă©tait plus si intĂ©ressant.

Ensuite, si c’est vraiment un recrutement exceptionnel, et bien, on va dĂ©ployer toute l’Ă©nergie qu’il mĂ©rite pour trouver une femme sur l’autre poste. Et se faisant, on est certains que la qualitĂ© des recrutements n’est pas rĂ©duite.

D’ailleurs, il avait Ă©tĂ© assez salĂ© quand j’Ă©tais revenu vers lui pour lui donner le nogo. Et qu’est-ce qu’elle avait de plus que moi Ă  part ĂȘtre une femme ? De l’esprit critique, une capacitĂ© de synthĂšse, du pragmatisme, et beaucoup d’empathie client. D’autres questions ?

Et si c’Ă©tait sur un autre poste, on va dire un poste plus cadre, plus « CSP+ », c’est encore moins un problĂšme. Parce qu’a priori, un candidat exceptionnel, sera dĂ©jĂ  en poste, il ne sera pas Ă  deux semaines prĂšs pour recevoir une proposition. Si ?

Comment mettre en application ?

Alors, je suis convaincu que le recrutement par annonce est plus inclusif.

Mais il reste des postes « pĂ©nuriques » et stratĂ©giques oĂč l’approche directe reste pertinente. Cela Ă©tant dit, mĂȘme quand on approche, cela peut ĂȘtre intĂ©ressant de mettre des contraintes artificielles. Moi ça ne me choquerait pas qu’une Ă©quipe de sourcing se mette comme barriĂšre artificielle « Cette semaine, on approche que des femmes et on essaye de faire les mĂȘmes KPIs ». Parce que cela va amener les Ă©quipes Ă  prendre contact avec des gens qu’ils n’auraient pas approchĂ©s d’habitude. Et in fine, ça va amĂ©liorer la qualitĂ© des recrutements.

Par ailleurs, si vous recrutez vite, il n’y a pas de raison. Si vous avez fait 15 recrutements la semaine derniĂšre, et qu’il y avait que des hommes blancs, ça ne me choque pas de mettre en attente toutes les propositions de poste qui n’amĂ©liorerait pas la diversitĂ© dans les recrutements pendant 2 semaines. De toute façon, ce candidat est sĂ»rement dĂ©jĂ  en poste, il ne sera pas Ă  une semaine ou deux. Et cette situation sera vite rĂ©glĂ©e sauf si l’Ă©quipe recrutement dĂ©cide de s’y opposer fermement et de se mettre en grĂšve. Mais j’y crois peu 😄

Pourquoi ça marche ?

Il s’agit de biais de recrutements. Et en fait, on peut faire le processus de les analyser, de les dĂ©construire, de mettre un nom dessus. Mais Ă  la fin, il reste quand mĂȘme un biais qui dit que l’on fait plus facilement confiance Ă  ceux qui nous ressemblent.
Du coup, si on n’a pas de diversitĂ© visible au sein des effectifs on a du mal Ă  recruter des gens diffĂ©rents de l’Ă©quipe en place.

Mettre des quotas c’est une bĂ©quille qui amĂ©liore la diversitĂ© visible, et l’organisation, les humains ensuite la pĂ©rennisent.

C’est un garde-fou qui lutte efficacement et immĂ©diatement sur les biais de recrutement.

Parce que si vous recrutez le premier candidat qui correspond aux critĂšres vous recruterez le plus souvent un homme.

DĂ©jĂ  statistiquement, dans la tech, il y a principalement des hommes. Et si vous attendez d’avoir un seul candidat qui passe la qualification, vous aurez statistiquement un homme 4 fois sur 5.

Ensuite il y a des biais de partout, parce que notre sociĂ©tĂ© est quand mĂȘme patriarcale. DĂ©jĂ  il y a le syndrome de l’imposteur. On en parle dans le Podcast avec Marion FĂ©lix (Maplr), lorsqu’elle Ă©tait au LycĂ©e, les conseillers d’orientation ont essayĂ© de la dissuader d’aller en informatique.

Ensuite, peu importe le genre de l’interlocuteur ou du recruteur, il y aura des biais de confirmation qui l’encourageront Ă  faire confiance plus facilement aux hommes. Alors dĂ©jĂ  en shortlist on ne sera pas Ă  1 sur 5. Et c’est sĂ»r qu’Ă  la fin, on sera au mieux Ă  une sur 10.

Composer la photo finale dĂšs le premier recrutement

Quand on demande à une entreprise de composer une photo, en général, elle fait attention à la diversité.

Photo d'une marque de vĂȘtement française avec deux personnes de couleur, et une femme pour 3 personnes

Mais si on lui demande d’envoyer une seule personne, elle envoie le plus souvent un homme blanc de 40 ans et ça devient le plateau de votre chaĂźne Ă©co prĂ©fĂ©rĂ©e.

Parce que si on recrute chaque salariĂ© comme si c’Ă©tait le dernier, on ne peut pas lutter contre nos biais suffisamment. Et on s’en rend compte qu’une fois qu’on a la photo de classe finale.

Photo de classe des salariés d'une marque de mode française

Mettre en place des quotas Ă  l’entrĂ©e, mĂȘme temporaires, ça permet d’anticiper ces biais. Cela tire vers le haut vos mĂ©thodes de recrutement et cela Ă©vite la photo finale qui rend les biais Ă©vidents.

Et au-delĂ  des mĂ©thodes de recrutement, je pense que c’est le secret, ou un sous-jacent pour avoir une culture d’entreprise bienveillante, inclusive. Si on veut vraiment croire que nos salariĂ©s sont la premiĂšre richesse de l’entreprise, il faut faire en sorte qu’ils aient la libertĂ© d’ĂȘtre crĂ©atifs, de prendre des initiatives, de faire des erreurs et d’avoir des succĂšs. Et c’est Ă  ce moment-lĂ  que l’on pourra dire que l’Ă©quipe a crĂ©Ă© un maximum de valeur pour la sociĂ©tĂ©.

Si vous voulez ne retenir qu’une chose :
Recruter le premier candidat qui arrive Ă  aller au-delĂ  d’une qualification (aussi complexe soit-elle) n’est pas la meilleure des mĂ©thodes de recrutement.
Recruter le premier candidat qui soit suffisamment compĂ©tent n’est pas suffisant. 📈
Migrer Firebase RTDB vers la Belgique : 4 Ă©tapes pour ne rien rater.
Migrer Firebase RTDB vers la Belgique : 4 Ă©tapes pour ne rien rater.
Migrer Firebase RTDB vers la Belgique : 4 Ă©tapes pour ne rien rater.

En novembre 2020, a ouvert un nouvel emplacement en Belgique pour son service Realtime Database RTDB. Vous pouvez en lire plus ici.

Les bĂȘtas sur firebase sont gĂ©nĂ©ralement vouĂ©es Ă  rester et Ă  passer en Ă©tat stable. Ça peut faire un peu peur car ils stipulent bien que « Use of multiple Realtime Database instances in different locations is a beta feature. This means that the functionality might change in backward-incompatible ways. A beta release is not subject to any SLA or deprecation policy ».

Bon, on y va.

Step 1 : Réfléchir

On utilise 3 produits Firebase :

  • Auth
  • RTDB Database
  • Functions

Notre idĂ©e est de ne pas changer le projet firebase, juste l’emplacement de RTDB, donc ça rĂ©sout le souci de Auth, vu que c’est liĂ© au projet.

La migration de RTDB nécessite plusieurs choses :

  • Changer la configuration de notre appli React et du SSR
  • Changer la configuration des Hooks RTDB et des endpoints HTTPS

Nous avons dĂ©cidĂ© de ne pas migrer l’emplacement de nos Cloud Functions car cela change l’URL. On a des liens hard codĂ©s dans nos emails donc on ne voulait pas avoir Ă  les changer, mais il fallait quand mĂȘme qu’on redĂ©ploie les fonctions pour qu’elles pointent sur le nouvel emplacement RTDB.

Ben change juste la base de données par défaut ?

Ben non. Impossible de trouver l’option dans firebase. Apparemment la base par dĂ©faut est celle qui porte le nom de votre projet. Il nous faudra spĂ©cifier la localisation dans tous nos Hooks RTDB.

via GIPHY

Bah du coup, il n’y a qu’Ă  restaurer la base dans une nouvelle base?

Ben apparemment non ! Notre base de donnĂ©es fait plus d’1Gb et Firebase ne peut pas prendre des imports de plus de 256Mb via leur API REST. Par contre, ils spĂ©cifient que « If you are having trouble restoring a backup from a very large database, please reach out to our support team. », ici. Merci Firebase!

via GIPHY

Step 2 : Planifier et tester

Migrer RTDB

Pour Ă©viter un dĂ©lai trop long et des allers/retours avec l’Ă©quipe de support de Firebase, on a dĂ©cidĂ© d’utiliser leur API REST pour tĂ©lĂ©charger notre base et la restaurer dans le nouvel emplacement Ă  la mano. On a utilisĂ© l’API REST car les quotas sont plus gros que sur le SDK pour une quelconque raison.

Pour simplifier cette étape, on a utilisé les legacy tokens en authentification.

Du coup on a Ă©crit un script node.js pour rĂ©cupĂ©rer la structure de notre RTDB, avec le shallow flag. (Je peux monter le code mais il n’est pas vraiment open source ready)

AprĂšs ça, on a rĂ©cupĂ©rĂ© les nƓuds un par un. Firebase rĂ©pond avec une erreur HTTP 413 quand vous essayez de tĂ©lĂ©charger un noeud trop gros. Du coup on a gĂ©rĂ© ce cas-lĂ  et on a rĂ©cupĂ©rĂ© les nƓuds fils et hop lĂ , nos donnĂ©es Ă©taient prĂȘtes Ă  ĂȘtre restaurĂ©es.

La restauration a nĂ©cessitĂ© un peu de doigtĂ©. On a vu que certains nƓuds au-dessus de 80MB (pour 250MB max) avaient parfois du mal Ă  ĂȘtre digĂ©rĂ©s par firebase donc on a du chunker les donnĂ©es en nƓuds de 25MB.

Firebase a eu du mal Ă  manger certains de nos nƓuds du coup on devait prĂ©voir de les migrer Ă  la main parce qu’ils Ă©taient mal conçus et apparemment trop complexes pour Firebase.

Aussi, les tableaux Firebase c’est toujours aussi nul. Si vous faites un trou dans le tableau, firebase ne le reconstruit pas et ne l’importera pas.

Avec toutes ces considérations, on avait réglé le cas de RTDB

Migrer les  Cloud Functions

Il y a plusieurs petites choses Ă  prendre en compte quand on migre des Cloud Functions

Migrer les hooks firebase sur une nouvelle instance

Firebase RTDB est une base de donnĂ©es rĂ©active, c’est-Ă -dire que vous pouvez dĂ©clencher des fonctions sur un changement de donnĂ©es.

Malheureusement, ils utilisent la base de données par défaut donc il a fallu migrer tous nos hooks

On a dĂ» remplacer tous nos appels

avec


Pour bien gĂ©rer la prochaine fois, on a stockĂ© ça dans une variable globale. Ca facilite aussi la configuration en fonction de l’environnement.

Du coup on a pu importer ça comme ça dans nos hooks.

Quelques « replaces » ici et lĂ , et c’Ă©tait rĂ©glĂ©.

Utiliser la bonne instance RTDB dans vos fonctions

Une fois que vous appelez Firebase.initializeApp avec la bonne configuration pour databaseURL, tous les appels RTDB seront faits Ă  la bonne base, donc pas grand chose Ă  faire lĂ .

Test the deploy

On a plus de 250 fonctions.

Si vous avez fait un peu de Firebase, vous avez dĂ» tomber sur l’erreur : « You have exceeded your deployment quota, please deploy your functions in batches by using the –only flag, and wait a few minutes before deploying again. Go to https://firebase.google.com/docs/cli/#deploy_specific_functions to learn more ».

Le rate limiting des dĂ©ploiements Cloud Functions est rapidement dĂ©passĂ©, vu que c’est 80 appels WRITE par minute.

Pour outrepasser ça, on a dĂ©coupĂ© nos commandes de deploy en petites parties, avec le flag –only.

C’est un problĂšme commun avec firebase, mais une petite piqĂ»re de rappel ne fait pas de mal.

Step 3 : Migrer!

Avec Vincent qui vit Ă  la RĂ©union, on a dĂ©cidĂ© que je devais me lever tĂŽt pour qu’on soit synchronisĂ©s pour faire ça Ă  7h le Mercredi.

Notre plan Ă©tait de :

  • Mettre la webapp en mode travaux (1 min)
  • Supprimer des nƓuds inutiles pour allĂ©ger notre export(1 min)
  • Backuper la RTDB (5 min)
  • Faire tourner le script de migration (5 mins)
  • Exporter les quelques nƓuds que Firebase ne voulait pas importer via le script(5 mins)
  • Importer ces quelques nƓuds Ă  la main dans la nouvelle instance (5 min)
  • DĂ©ployer les nouvelles fonctions par parties (Ă  peu prĂšs 7 min par partie, on pouvait les lancer en parallĂšle quand le rate limiting Ă©tait remis Ă  zĂ©ro)
  • RedĂ©ployer la webapp avec les nouvelles variables d’environnement (15-20 min)

On avait prĂ©vu une fenĂȘtre de tir d’une heure.

Ça s’est bien passĂ© !

Step 4 : Nettoyer

C’est la partie un peu douloureuse. On voulait supprimer l’ancienne base pour Ă©viter la confusion.

En théorie on peu juste lancer ça.

Un article de blog dĂ©crit comment cette commande marche mais en gros, elle rĂ©cupĂšre les nƓuds en shallow pour rĂ©cupĂ©rer la structure et dĂ©tecte toute seule les gros nƓuds et les supprime par partie de maniĂšre efficace.

En rĂ©alitĂ©, le dĂ©coupage en partie peut prendre plus de temps pour les nƓuds moyens.

Il y a quelques subtilitĂ©s Ă  propos de ça mais si vous avez des nƓuds moyens de taille moyenne que Firebase supprimerait par partie, lancez cette commande avec le flag –debug, identifiez quels nƓuds moyens prennent du temps Ă  supprimer et supprimez les manuellement avec un appel REST ou un via le SDK avec ref().set(null).

Nous n’avons pas essayĂ© d’augmenter le paramĂštre defaultWriteSizeLimit de la base RTDB. Je pense que ça aurait pu nous aider Ă  supprimer la donnĂ©e par plus gros bouts.

RĂ©flexions et conclusion

Nous avions un peu peur de tout devoir faire Ă  la main et de migrer sur un produit en beta. Cependant, nous estimons qu’avoir les donnĂ©es plus prĂšs de nos serveurs clever-cloud et de nos utilisateurs ne pourra ĂȘtre que bĂ©nĂ©fique pour la plateforme.

On Ă©tait aussi déçus de voir le manque d’outils de migration intĂ©grĂ©s Ă  Firebase, surtout la migration de donnĂ©es d’une instance Ă  une autre et le changement d’une base de donnĂ©es par dĂ©faut. Ça nous aurait fait gagner Ă©normĂ©ment de temps.

Merci d’avoir pris le temps de me lire et on espĂšre que notre serveur qui tourne aux frites vous plaira autant que celui de l’oncle Sam !

 


The content platform, made by developers
to create the link between companies and developers looking for their dream job.
© 2016 - 2021 WeLoveDevs.com / JeChercheUnDev.fr - All rights reserved
⚠
Your browser is badly|not supported!
We recommend you to use a more modern browser such as Edge, Chrome or Firefox
Know More