Bonjour ! Je m’appelle Emma Falkiewitz et j’ai 21 ans.
Je suis en 4ᵉ année d’école d’informatique à l’université de technologie de Compiègne (l’UTC) en France. Je viens de terminer mon stage à Savoir-faire Linux où j’ai travaillé sur Jami.
Comment t’est venu ce choix de carrière ?
Au lycée, j’étais déjà intéressée par l’informatique, même si je ne savais pas vraiment en quoi ça consistait. Après le lycée, il a fallu que je choisisse une école. Je me sentais bien dans le parcours scolaire, donc je visais un Bac +5. Je voulais aller au-delà de deux ou trois ans d’études avant de me lancer dans la vie professionnelle. Sachant que j’avais une affinité avec les ordinateurs et les téléphones, j’ai opté pour une école d’ingénieur informatique. « Ingénieur » est le titre un peu générique qui permet de faire ce que tu veux après.
Comment étaient tes premières années en école d’ingénieur ?
Mon école est assez généraliste. Les deux premières années, on a touché à la biologie, à la chimie, etc. Étant donné que l’informatique est un domaine varié, on découvre progressivement ce qu’on aime, que ce soit l’intelligence artificielle ou les systèmes réseaux, etc.
Quel domaine spécifique t’intéresse dans l’informatique ?
Principalement l’intelligence artificielle. J’ai envie d’apprendre comment ça fonctionne, les possibilités que ça offre et puis c’est un domaine en plein développement. C’est fascinant !
Pourquoi Montréal et comment as-tu atterri à Savoir-faire Linux ?
Dans le cadre de mon cursus, il est prévu deux stages de 6 mois, en 4ᵉ et en 5ᵉ année. C’est une tendance d’aller au Canada dans notre école parce que nous avons des liens étroits avec plusieurs écoles montréalaises pour des doubles diplômes ou des masters.
Même si me lancer dans un double diplôme ne m’intéressait pas, l’idée de découvrir la culture québécoise en faisant un stage rémunéré était attrayante.
J’ai postulé dans plusieurs entreprises québécoises, mais puisque les stages de 6 mois en 4ᵉ année sont une particularité de mon université, c’était compliqué d’en trouver un.
En consultant les historiques des stages de notre école, j’ai découvert qu’un élève de mon université, Nicolas Vengeon, avait effectué un stage chez Savoir-faire Linux. J’ai envoyé mon CV et ma lettre de motivation à Savoir-faire Linux, puis j’ai été prise après un entretien.
Quand as-tu intégré le projet Jami et sur quoi as-tu travaillé ?
J’ai intégré le projet Jami en fin août. Au début, un peu comme tous les nouveaux qui démarrent sur le projet, tu commences par les versions bureaux sur Qt. Je devais essayer de résoudre des bugs en explorant l’application, ce qui m’a permis de découvrir le code de Jami. Au bout d’une semaine ou deux, on m’a proposé d’aller sur Android et j’ai accepté parce que Kotlin, le langage utilisé pour le développement sur Android, est très proche du Java.
Comment s’est passée la transition vers Android ?
J’avais déjà suivi un cours de Java, donc j’étais plus à l’aise avec Kotlin. En revanche, je ne connaissais pas du tout le C++ utilisé sur Qt. Quand je suis arrivée sur Android, c’était le même principe qu’au début : découvrir le code en essayant de résoudre des bugs. Ensuite, au fil du temps, on m’a confié des tâches telles que l’amélioration de l’interface utilisateur ou la mise en place de nouvelles fonctions.
Quelle fonction notable as-tu implémentée ?
❗Utiliser un code QR pour lier son compte Jami sur un autre appareil est l’une des fonctions majeures que j’ai implémentées. Auparavant, on ne pouvait utiliser qu’un code PIN. 💫
Travailles-tu aussi sur le graphisme de l’interface utilisateur ?
Pas tout à fait, j’implémente les nouveaux design dans l’application. Par exemple, après qu’un nouveau design de bulle de conversation a été choisi, je modifie les paramètres de cette bulle dans le code, ou j’implémente de nouvelles fonctions. Travailler sur le design m’a permis de toucher au XML.
As-tu eu des difficultés liées à Jami ?
Jami, c’est très complexe. C’est vraiment un gros bout à assimiler. Il y aura toujours des parties que je ne comprendrai pas. Je n’ai fait que me poser des questions pour comprendre toute la mécanique.
De même, si tu ajoutes du code, il faut être précautionneux de ce qui avait été écrit avant : on risque de casser des parties plus profondes de Jami.
Android Studio nous informe s’il y a des fonctions qui ne sont plus utilisées, donc on se dit, on va les enlever. Sauf que si tu veux remettre la fonctionnalité, tu es obligé de tout réécrire ou de chercher dans l’historique. C’est un vrai travail. À chaque fois qu’on supprime du code, c’est très délicat.
Que penses-tu du fonctionnement de Jami et de son utilisation ?
Le projet me plait beaucoup. On retrouve des concepts qui ne seraient pas utilisés par la plupart des autres applications. Je connaissais le concept du pair-à-pair (P2P), mais je ne l’avais jamais vu en application.
On peut comparer Jami à toutes les autres applications de communication, mais connecter les utilisateurs sans serveur central et de manière distribuée, c’est génial. La technologie est incroyable !
Ne pas avoir de serveur qui consomme des ressources est bien plus écologique.
Comment est l’équipe de Jami ?
Tout le monde est gentil et disponible. Si tu as une question, on va venir t’aider. C’est aussi sympa d’avoir une voix, en tant que stagiaire. J’ai pu faire des propositions ou même donner mon avis sur certains designs et ç’a été pris en compte et changé.
Le monde de l’informatique est souvent plus masculin. Quelle a été ton expérience ?
C’est vrai que dans mon école, il y a une majorité de garçons en cours. Quand tu arrives en informatique ou en mécanique, tu t’y attends. Moi, je me sens bien. En tout cas, chez nous, il y a une bonne ambiance. Que tu sois une femme ou un homme, ça ne change pas grand de chose. À savoir-faire Linux, je me souviens que quand j’ai été embauché, on est devenu une majorité de femmes et c’était la première fois.
🚀 Merci, Emma, de nous avoir accordé cette interview et pour tout ton travail sur Jami !
Nous te souhaitons tout le meilleur pour l’avenir. 😊
– Toute l’équipe Jami
Cette interview est transcrite par I.A.
Whisper est l’un des projets open source d’OpenAI qui a acquis une grande popularité.
Le code de Whisper est utilisé pour l’une des extensions de Jami : Whisper transcript.
Pendant les appels, le modèle d’intelligence artificielle s’exécute localement sur votre appareil pour sous-titrer la conversation en temps réel ! (disponible uniquement sur bureaux et Android).
Pour transcrire les enregistrements d’interview d’Emma en texte, nous avons ajouté le module Python et créé notre propre outil :
import whisper
import os
model = whisper.load_model("small")
text_dir = "text"
if not os.path.exists(text_dir):
os.makedirs(text_dir)
for file in os.listdir("audio"):
if file.endswith(".wav"):
new_file_name = file.replace(' ', '_') # Store the new file name
os.rename(f"audio/{file}", f"audio/{new_file_name}")
absolute_path = os.path.abspath(f"audio/{new_file_name}")
if os.path.exists(f"{text_dir}/{new_file_name}.txt"):
continue
result = model.transcribe(absolute_path)
with open(f"{text_dir}/{new_file_name}.txt", "w") as f:
f.write(result["text"])